Sunday, March 30, 2008

Sunday Night Videos: Bill Bailey and Vegetarianism

I love the comedy of Bill Bailey, and I hope after seeing this little bit, you become a fan as well. If you aren't familiar with him from Hot Fuzz, Spaced or Black Books, well, you are in for a treat.



Huzzah Mr. Bailey, Huzzah!

Saturday, March 29, 2008

Spooky Earth Hour

So for weeks the school and newspapers had indoctrinated our children with the coming of Earth Hour: one hour on Saturday night (from 8pm) when all the lights would go out. Our 7 year old son was adamant: no torches, only candles.

Then at 8:02, he had the following conversation with his mother:
"With the lights out, I'm scared."

"It's OK I'm with you."

"This is all Kevin Rudd's fault." (FYI: the new Australian Prime Minister -- and a reasonable inference since he was credited with putting Australia back on the environmental path.)

"No, everyone thought this was a good idea."

"Who thought this would be a good idea?"

"Me, your father, everyone you know."

"I only thought this was a good idea because they said so at School. Can we have the torch?"
This was a big turnabout. He had been on about this for weeks. When it comes down to it, school kids (and probably all of us) can talk about all this stuff in the abstract but until they experience it, it is essentially meaningless. It just goes to show how far we have to go.

From my perspective, I was looking forward to getting the telescope out and looking at the unpolluted sky. Alas in Melbourne all we had a view of was the unpolluted clouds.

Friday, March 28, 2008

Week 46: Pageant of the Transmundane

Hello from Bronson, Missouri. That is not a typo on my map. At least, I don't think it is. Everyone sounds tough here and I am a little scared... so the sooner I finish this awards ceremony, the fast I can leave.

Once again, there were some interesting late entries this week, but in the end, experience won out over novelty, as it were.


Jeremy Barker, the proprietor of Popped Culture, made a startling discovery this week in a field I didn't know had previously existed.

The wonderful mashed-up world of action star athletics. In this case, a sports team comprised of a bunch of people who make a living kicking the asses of bad guys.

Now if I had made the list, well, it might have had a few alternate selections, but that is neither here nor there. It is a great piece of merchandise, and it is truly transmundane.

And because this week's winner has to do with a group of disparate people being put together, well, it seemed fitting to have something similar for the Homer Simpson Transmundanity Award this week. Well, I liked it at least.



Congratulations Jeremy... and you know the drill... this is your badge:



And since Jeremy's second Transmundanity win was in Week 47 of last year, and this is his third win within a 52 week period, he is also eligible for the Triple Crown award, presented thusly:



Huzzah! Huzzah! Huzzah!

The rules of this little contest: Every week I will be selecting one blog post that I have seen from the vast reaches of the blogosphere to bestow with the Homer Simpson Transmundanity Award for being one of the freakiest(in a funny way) things I've seen or read during a 7 day period. It doesn't necessarily have to have been written during the week, I just had to have encountered it. That means that if you find something interesting and repost it like a movie or whatever, if I saw it at your blog first, you get the prize. Of course, creating your own content is also a very good way to win.

Now, if you see a post that you think is worthy of this illustrious prize, just drop me a line at campybeaver@gmail.com and we'll see if we can't get your suggestion up and award-ready while giving you some credit and a link to your own blog.

Silicon Valley Google Technology User Group to host maps meeting



Ever wondered how to create maps like this Primary Election Results Map, created by Michael Geary? If so, please join us in at the Googleplex (Bldg 43, main campus, room Tunis) on the evening of April 2nd. Michael will be on hand to show you how. This gathering is being co-hosted by the Google GEO Developer Series and the recently formed Silicon Valley Google Technology User Group (which is not affiliated with Google). A networking hour with food and drinks starting at 5:30pm will be followed by Michael's talk at 6:30pm. Although this is a free event open to all, we do ask that you register in advance.

During the evening, we're also inviting community members to come forward and do short (no more than 5 minutes) demos of their own Google GEO applications during the networking hour. If you would like to participate in that way, please contact me. I'll be coordinating the networking hour demos. That's all, folks.

Thursday, March 27, 2008

Really stuffed toys

In Slate, Emily Bazelon thinks that the a new web site, Webkinz, will save her from worrying about stuffed toys. As she points out, children form an attachment to stuffed toys beyond what is hygienic or convenient. On this, I can only agree. Our eldest had, for what seemed the longest year (from 18 - 30 months), a life size Maisy mouse soft toy. And by 'life size' I mean, the size of a mouse. This meant that it was carried everywhere and was always hard to find. It got dropped in puddles, stepped on and mangled. We went on a longish trip and our main concern at all times was not whether we had our daughter but whether we had Maisy!

Maisy cost like $5. I should have bought 7 of them. So when Child No.2 came along and formed his unhealthy attachment to a small ET doll (he loved the eyes), I stocked up. We had several ET dolls of that size, some larger ones and then for his second birthday a life sized one that was essentially immovable. (Yes, the size of ET in the movie!) We were going to hedge our bets fully. Suffice it to say, at some point after he was three years old, he decided ET scared him and out it all went. We now have a shrine to ET in the hallway.

For Child No.3, she has had a Sid (from Ice Age) and now a standard teddy bear. If it gets lost, we are now hardened folks and will take the tears.

According to Bazelon, Webkinz is like some cheap back-up. Apparently, in her household, should one of these toys meet an untimely demise, if they are a Webkinz toy, their virtual counterpart will save the day. Her child will be satisfied because it lives on "in the computer." Yeah, but just wait until she wants to take your laptop to cuddle up with in bed. And what happens if it is a PC and crashes with a not so cuddly, blue screen of death. Try explaining that one. After all, that sort of thing routinely brings adults to tears.

Toothy incentives

So the second of our 7 year old son's two front teeth is ready to come out. Currently, he looks and sounds like a caricature of Bugs Bunny. The problem is that it is getting quite painful to eat. And that is not fun to watch as I discovered at dinner tonight.
"I've had enough. I'll give you $10 if you let me take it out."

7 year-old: "No! It will hurt more."

9 year old: "Why not? Add to that $2 from the tooth fairy and that's $12. Take one from me."

"This isn't about you. Well, it is that or we are going to the dentist."

7 year-old: "No."

9 year-old: "I know. Why don't you take $10 from his money box if he doesn't let you take his tooth out."

"How will that help?"

9-year old: "That means that with the $10 you will give him if he lets you, he makes $22 in total from letting you take his tooth out and that costs you only $10."

"Hmm. Obi-Wan has taught you well. I like that thinking."

7 year-old: "No!!!!!"
Suffice it to say, he was not sufficiently motivated by money to want the threat induced incentive. But I will have to remember my daughter's clever use of incentives the next time I try to bribe her; it is a cost effective plan.

Wednesday, March 26, 2008

Add your own buttons to Picasa, upload photos all over the Web



If you've ever wanted to make your favorite software or website work with Google's Picasa software, there's a new Picasa Button API that lets you add your own buttons to the desktop interface.


The BlogThis! button in Picasa uses these APIs.

These buttons can send files to other applications on your PC, -- this tutorial (.zip) shows how to send files to Adobe Photoshop CS3 -- and they can also upload photos and movies to websites of your choice.

I'm most excited about our Web Uploader API. It uses a protocol we developed for posting photos to Blogger a couple years ago, and it shows a web-based preview of what you're going to upload before you send it. Using the web uploader, you can make user interfaces that feel more like sending an email and less like "Wait an hour to upload..." Picasa can also resize files before sending, saving time. There's some sample PHP code (.zip) to try out.

Also because these new buttons can be made by anyone, it means that there's no job too small for a Picasa button. You could make a button for your personal blog or for your major photo hosting service. See our demo video, which features Smugmug.

If you live near Mountain View, California, come out for Thursday's Youtube/Picasa Hackathon. We'll be showing off examples of these APIs, and answering questions to help you get started with them.

Taking a semi-break

Because of something personal crisis in my own life, I've sort of been weaving into the code orange zone since the beginning of the month (and truth be told, I was on the border of it anyway before that).

You've all likely noticed a slowdown in my blogging production as of late, so I don't think this message comes as a surprise to anyone here. I've been trying to fight it

I am going to slowdown a little bit more over the next week or so... I'll still be posting, but I am not going to be putting pressure on myself to blog when I am not feeling up to it. Hopefully I can get back to a code yellow soon.

Tuesday, March 25, 2008

Cloth vs disposables

If you care about the environment, it is line ball. If you care about your sanity, the choice is clear.

An OpenSocial Foundation



Today we are pleased to announce that Google is joining together with Yahoo! and MySpace in the creation of a non-profit foundation for the open and transparent governance of the OpenSocial specifications and intellectual property. This foundation, modeled after the community-led and industry-supported OpenID Foundation, will seek to ensure that the technology behind OpenSocial remains implementable by all, freely and without restriction, in perpetuity. The establishment of the foundation is a necessary and exciting next step toward an open model for application syndication via an increasingly socially-enabled Internet, and we invite and encourage your involvement as we complete this process over the next several months.

Additionally we are pleased to be a part of the launch of opensocial.org, the new official home for the OpenSocial specifications and developer community. While we are still in the early stages of putting the new site together, we wanted to open the site and the process immediately for community feedback and review.

So please join us, Yahoo!, MySpace, and all of the other OpenSocial containers and application providers, in extending a warm welcome to the community in a spirit of collaboration and rapid iteration, as we move forward with the establishment of the OpenSocial Foundation and look ahead to the continued growth of the social web.

Express Checkout: 24, 1-2-3, and Mr. Show

Donald Sutherland and 24: Donald Sutherland was a little bit crestfallen that he was unable to play his real life son's father on 24 due to commitments he had with another production, but in an interview, I think he did come up with a rather plausible way that he could play such a role in the future. He suggested that James Cromwell was merely Jack Bauer's stepfather. Knowing some of the twists and turns that 24 has had over the past 6 seasons, that isn't completely implausible. I certainly think it could work.

The Remaking of Pelham 1-2-3
: Not another one. Dear God, not another remake. Although on a scale of 1 to 10 of how bad my stomach is cramping from the idea, with 1 being The Topkapi Affair and 10 being Robocop, a remake of The Taking of Pelham One Two Three is maybe a 4 or a 5 for me, although James Gandolfini, Denzel Washington and John Travolta are no Martin Balsam, Walter Matthau or Robert Shaw.

Bob and David are back together again?: The geniuses behind the oddball sketch comedy series Mr. Show, David Cross and Bob Odenkirk are collaborating on a sitcom together called David's Situation. Cross plays himself, though with the twist that he had quit the entertainment business and is now writing for an inflight magazine. Hopefully this show will prevent David Cross from complaining that he is taking a bunch of money jobs in crappy projects for a few months.

Sunday, March 23, 2008

Sunday Night Videos: Patton Oswalt takes on Reality Shows

I love Patton Oswalt, and I enjoy digs at reality show programming, so when those two elements come together, well, I sort of have to seize upon the moment. Enjoy.



Saturday, March 22, 2008

Oh'nomics

My 9 year old daughter came into my study the other day. She picked up a book. "What's this? Mi-cro-nomics! Not another 'onomics' book. We have Freakonomics, Parentonomics and now this. When will it end?"

Friday, March 21, 2008

Week 45: Pageant of the Transmundane

Hello from the shores of 19th Century Rio De Janeiro. I don't know how I got here, and I don't know when I am leaving, but I might as well make the best of things while I am here.

I saw a lot of weird things this week, but as you know, the personal touch often ends up being the deciding factor, and that is no exception this week.

*opens the envelope*

And the winner is Burbanked.

Voice over: The last time Burbanked won this award was last year, but time was no factor in this victory this week.

Ahem. Enough with that whole Oscar vibe.

You see, Alan put together a wonderfully wry look forward to the blockbusters of the coming summer and noticed something a lot of them had in common. It is nice and biting.

And to commemorate this great moment in cinematic triumph, I thought that showing Homer in a movie theater would the most appropriate image for this particular winning entry (and blog too, as Burbanked is movie related anyway)



Congratulations Alan on this win. And kudos to you for unintentionally self-nominating your entry.



The rules of this little contest: Every week I will be selecting one blog post that I have seen from the vast reaches of the blogosphere to bestow with the Homer Simpson Transmundanity Award for being one of the freakiest(in a funny way) things I've seen or read during a 7 day period. It doesn't necessarily have to have been written during the week, I just had to have encountered it. That means that if you find something interesting and repost it like a movie or whatever, if I saw it at your blog first, you get the prize. Of course, creating your own content is also a very good way to win.

Now, if you see a post that you think is worthy of this illustrious prize, just drop me a line at campybeaver@gmail.com and we'll see if we can't get your suggestion up and award-ready while giving you some credit and a link to your own blog.

Risky teenage behaviour

It is not everyday that an actual academic article appears about economics and parenting but the April 2008 issue of the Economic Journal contains a piece entitled: "Games Parents and Adolescents Play: Risky Behaviour, Parental Reputation and Strategic Transfers" by Lingxin Hao, V. Joseph Hotz and Ginger Z. Jin. The paper tries to understand risky teenage behaviour (you know getting pregnant, taking drugs, etc) and how it is related to parenting -- specifically, a parent's ability and willingness to use money later on to reward or punish such behaviour. It is both theoretical and empirical.

Let's begin with the theory. Gary Becker was the first economist to consider this issue. He looked at the interaction between a Rotten Kid and an altruistic parent. Rotten kids think about doing things that are destructive, not only to themselves, but perhaps to family members. The altruistic parent wants to deter such behaviour and so wants to punish kids who misbehave and reward those who don't. The problem is that after the fact a parent loves all their children equally and so may not be able to commit to the requisite punishments. Becker's analysis demonstrated that such commitment would be possible if parents could simply transfer the joy around with money. In that situation, a parent would observe that one kid misbehaved and benefited while another behaved well but sacrificed. To equalise the score, the parent would naturally give the 'good' child more. Indeed, once the Rotten Kid realised that this would occur, that kid fully internalised the impact of their behaviour on the rest of the family and harmony would reign.

Now, while this is a deep result, it is dependent upon being able to trade-off love and money easily. That is hard to do in which case, the parent faces a commitment issue and may well end up not punishing bad behaviour and, not surprisingly, such behaviour may occur. Let's face it, if you want to explain teenage risk-taking, that has to be the theoretical starting point.

What Hao et.al. do is notice that if a parent has a few children and faces this commitment issue, they may be willing to go hard on the older siblings to send a message to the younger ones. But it is trickier than that as the younger ones would understand they were just doing this and so that would be ineffective. To resolve this you have to believe that children are uncertain about how caring their parents are and that is what Hao et.al. do. If you are willing to go with all that you have predictions that older siblings will get less money from their parents than younger ones.

So what do they find when they look at the data?
Consistent with the reputation model, we find that daughters who had teen births or children who drop out of high school receive fewer parental transfers after reaching adulthood when the parent has a larger number of younger children in the family. Moreover, focusing on the offspring within the same family, we find that older siblings are less likely than younger ones to drop out of high school or to have births as teens. These findings are consistent with the reputation model’s implications that parents may have an incentive to engage in strategic responses to the risk-taking behaviour of their children according to birth order and that older children understand these incentives and are more likely to respond by refraining from committing risky behaviours compared to their younger siblings.
Of course, it may just be that larger families have less money to give to children anyhow and as income grows, the younger ones just get more. But it turns out that families with lots of money seem to behave in the same way as ones with low wealth.

It may also be that parents are just learning more about parenting. It is hard to distinguish this notion from one where parents are developing a reputation. However, if more learning is concentrated on the first born then there should be something more special about them than about the 2nd to nth child. The paper finds nothing special there.

This is a provocative and careful paper. Moreover, it is precisely the sort of work that makes non-economists think economists are crazy. I enjoyed it.

360 degree parenting evaluation

While the children were having breakfast this morning, the following discussion took place:
7-year old: "When I become a Dad, I want to be one who exercises every day and is fit like Mum is."

9-year old: "Actually, Dad is not too big given that he doesn't do any exercise." [Hmm, heroically thin, I like that argument.]

7-year old: "But so and so's Dad is really quite strong." [You know, I am standing right here!]

9-year old: "Yeah but our Dad's a better parent, no matter how large." [Guess who's getting an extra cookie!]

The Code Review: Ajax APIs galore, YouTube, and some I/O



I got to meet developers in Colorado this week. Working from the Google Boulder office with its fun climbing wall (*so* Boulder) was a treat, and there were several API announcements that were really exciting.

First of all we had the YouTube API update. The new APIs for YouTube are very broad. Not only do you have new access via AtomPub (e.g. to upload), but you can now have fantastic control of the player with a very simple JavaScript API.

In a matter of minutes I was able to create a simple HTML little language that allows me to annotate my YouTube videos with a table of contents that jump to the correct place.

To listen to the great new features, listen in below:



Then we had the rash of new AJAX APIs.

Google AJAX Language API:

The AJAX Search and Feeds team is happy to announce a new member to their API family -- the Language API. This new API boasts two functions, language translation and language detection - which cover 13 languages and 29 translation pairs.

All this with a couple of simple JavaScript calls such as this:

google.language.translate('Gato', 'es', 'en', function(result) {
alert(result.translation);
});

Google Visualization API:

We are excited to launch the Google Visualization API, a new API designed for visualizing structured data. The API adds the ability to send queries to data sources and process the response. The first data source that already supports this API is Google Spreadsheets. We are also launching a set of visualization gadgets that use this API.

With this API, you can read data from a data source that supports the API. You can read an entire table, or you can run a query on the data source using the API's query language. The query response is an easy to process data table designed to simplify data visualization. It includes both the underlying values and the formatted values, column types, headers and more.

Staying with visualization and charting... we had a great response to the initial Google Chart API launch, and the team came back with new features allowing very cool new graph types, and lifting the limits on chart calls.

All of these APIs share the same property of doing their thing very well, and providing a simple API to the developer. I hope you will agree, and if not, let us know what you need!

In the land of Google Gears, a couple of external libraries were features. Malte Ubl provided a nice little abstraction for cross domain messaging which uses HTML 5 postMessage(), else Gears, else a browser hack to make the beast work on all browsers.

That is for Worker pools, and with the Database API we saw Aptana releasing an update to their server-side JavaScript database API allowing you to use the Gears API on the server.

Google Code itself got some love. We have improved performance on the site and Jacob Moon shared how we did so.

Then we added an interactive developer guide that allows you to try code on the fly as you go through the GData JavaScript API. It feels good to be able to massage and play as you go.

Finally, we announced Google I/O which is "a two day developer gathering on May 28th & 29th in San Francisco. The purpose of the event is to bring developers together to learn about products, tools, and techniques which are moving the web forward as a platform." If you would like to mingle and join Google engineers, and other Web luminaries as we discuss how to move the Web forward, join us!

Another Pop Cultural Candidate for President

About a month and a half ago, I posted about Ralph Wiggum running for president, and tonight, I came across a candidacy site for another pop culture icon candidate.



I'd certainly watch a John McClane/John McCain cage match, wouldn't you?

Thursday, March 20, 2008

Who is Horton

Plausibility issues aside, Horton the elephant stands out as one of the truly heroic figures in children's literature. In both Horton Hatches the Egg and Horton Hears a Who, the elephant stands as a lone voice against mob judgment. In one case, he is keeping a promise (an elephant is faithful 100 percent) and in the other, he stands on evidence even though he is alone in seeing it. He is a hero of individual rights and confidence and, if even half of that message gets through to a child, these books have served us well.

It was with that in mind that we went to see Horton Hears a Who, the latest attempt to bring Dr Seuss to the movies. The other attempts had to all accounts been failures although we had only seen The Cat in the Hat. There simply wasn't enough substance for an extended story. For that reason, our expectations were low.

Horton Hears a Who is not a failure as a movie but it will not rate as anything special either. All the modern elements -- great animation, familiar voices and a few one-liner gags -- are there. And the essence of the story is the same: Horton hears the voice of a small but unseeable civilisation, Horton opts to defend said civilisation, the mob does not believe Horton and turns on him, and finally, the civilisation makes itself heard and saves itself. But within this there are distinct and important changes.

First of all, Horton is not alone in being alone. The mayor of WhoVille faces the same issue and it is Horton and the mayor who have each other, with a similar struggle, to give them strength. This diminishes somewhat Horton's individuality. Second, the mob while a mob is distinctly led by the kangaroo. That leadership is less obvious in the book and critically, the kangaroo's joey is just as biased and distrusting as everyone else. In the movie, Horton is the school-teacher and so the children, while powerless, do believe in him. From my perspective, this too diminishes Horton's individuality as the author would have intended it. Finally, in the book, the mob was just plain mean. It is quite unclear why they turned on Horton who wasn't harming anyone. They just did giving rise to a subtle message of the right to privacy. In the movie, the mob gains a rationale -- 'protecting the children from bad thoughts' -- which, while spurious, moved the issue beyond a private one and gave it a public force.

These changes both reduce the injustice faced by Horton and his small friends but also the true strength of his struggle against it. But it also shows why it is virtually impossible to take relatively short but beloved children's literature and modify it for the movies (although there are exceptions such as The Iron Giant). They will make enough money this time around to keep trying. I am going to have to be much more careful about going.

The power of the crayon

The prototype of this game injected much fun into our household. Here is a video of Crayon Physics Deluxe which is coming soon (Slate story here). Here is the original game if you haven't tried it already. Remember it is 'educational' so you can spend as much time playing it (with your kids) as you like.

The whole grain food dilemma

I am going to confess something: I hate whole grain bread and love white bread. There I said it. Sadly, too many informed people think that eating white rather than whole grain bread is better for you.

Being normal people, my kids share my preference. And so to respect the workings of household democracy the choice has been made clear. There is no white bread in the house. If you want bread it is of the grainy variety. And the end result: less bread consumed, no daily discussions and no interest in political philosophy.

According to this video from Slate V, that is apparently the way to go. Although what would happen if it resulted in no bread consumed. Is that worse for health?

New features for the Google Chart API



Many of the features you've requested via Google Chart API forum are now live in the Google Chart API:

  • Easily create Sparklines (&cht=ls) without having to manipulate other kinds of graphs.

    sparkline

  • Support for Radar charts (&cht=r or &cht=rs) to display data in a polar coordinate system.

    radar chart

  • A new Map chart type (&cht=t) which makes it easy to colour countries and regions according to your data.

    thematic map of europe


Some other changes we've made:
  • Added scaling for text encoded data
  • Added support for negative numbers on bar charts
  • Added ability to draw data lines on bar charts

You can read more about all of this -- plus the fact that we've lifted the 50,000 queries per day limit -- on the Chart API site. And special thanks to our Technical Writer Lesley Burr, who put together this documentation in her 20% time.

Wednesday, March 19, 2008

Spricket24 does it again: Ellen's Reunion

A while back, I had posted a video by a Youtuber nicknamed Spricket24, and while I really enjoy her work, it wasn't until recently that I saw another video I thought was worth sharing.

Recently, there was a sketch comedy contest on Youtube, and this was her entry.



I think I might be willing to do what her character did to get out of her predicament. Well, maybe not, but I'd seriously consider it. Granted, avoiding a reunion is generally worth whatever the price is.

A sample of Parentonomics

When Justin Wolfers contacted me a couple of days ago that he was thinking of writing a post about this blog on the NYT Freakonomics blog, I thought this would be a great opportunity to share a sample of Parentonomics (which is coming out here in Australia in August). Here is Justin's post and click here and you can read Chapter 7 of Parentonomics. It encompasses page 69 that Tyler Cowen argued was what you should read rather than judging a book by its cover.

By the way, Justin isn't a parent but he spends lots of time thinking about marriage.

Introducing the Google Visualization API



We spend a fair amount of time on data display and visualization projects at Google, and we have found that the "last mile" of these projects tend to become full projects in and of themselves.

Thus when we acquired Gapminder last year, we were excited by the opportunity to use Gapminder's powerful visualization techniques to bring new life and usefulness to Google datasets. And we were not alone -- the web is home to a vibrant community of developers who build amazing visualization applications.

With the community in mind, we're please to introduce the Google Visualization API, which is designed to make it easier for a wide audience to make use of advanced visualization technology, and do so in a way that makes it quick and easy to integrate with new visualizations.

There are a two key elements here: simplicity and ubiquity. We hope we nailed the first, but of course we want to hear your feedback on that. The second will take more time, but we hope we're on the right path. We're releasing this API at an early stage so we can get continuous feedback and be sure we're building it the right way.

This launch is in tandem and in cooperation with the Google Docs team, who just announced support for gadgets and the Visualization API in spreadsheets. This includes a set of gadgets created by Google and several other companies, including some that add pivoting, grouping, and other new functionality to your spreadsheets. You can see all of those in our 'featured' list within the visualization gallery, which includes the Gapminder Motion Chart that has proven especially popular among within Google.

We hope you're as excited about the Google Visualization API as we are -- please be sure to tell us what you think. We'll also be at Google I/O on May 28-29 for deeper discussions about the API or visualization techniques in general.

Tuesday, March 18, 2008

Google Code University: CS Educational Materials



Last summer we launched a site aimed to help educators and students alike become more familiar with the technology behind Google and the massive internet in general. Recently, we've redesigned that site and given it a fresh name: welcome Google Code University.

Google Code University is a growing repository of computer science educational material including tutorials, lecture slides, and videos. Since the initial launch last summer, we've added a lot of new content -- for example, a few months ago we blogged about course material that the University of Washington developed with us on large-scale distributed computing. Recently, we've added tutorials on MySQL and Subversion. And there's a new series of lectures from an introductory web programming class taught at the University of Washington. The site's still growing, and we'll keep adding more content in the coming months.

Most importantly, most of the course materials are Creative Commons licensed, so we encourage educators and students to reuse and build upon them. If you have questions, comments, or materials you'd like to share, please visit the forum. We'd love to hear your feedback and have you contribute to the site.

Trailer Watcher: The Big Lebowski

Sometimes a trailer perfectly sells a movie... Smokin' Aces comes to mind in this regard. And sometimes, in retrospect, you see what might have been the problem.

Since this month is the 10th Anniversary of the theatrical release of The Big Lebowski, I decided to look for some fun mashups of the movie on Youtube, and I happened to see one of the early trailers for the film, and something immediately struck me. There is no dialogue at all.

What turned the movie into a cult classic wasn't the meandering story, or the imagery... it was the dialogue, and it is an element that is sadly missing from the trailer. Granted, given the sheer amount of profanity in The Big Lebowski, most of the best lines likely couldn't be used in a green band trailer, which sort of tied the editors' hands. Though, when you think about it, The Stranger did a pretty good job of introducing Jeff "The Dude" Lebowski in the opening narration of the movie, and that probably would have made an excellent template for a trailer as well. I mean, Sam Elliott's drawl eases you into the story really. It is a frame narrative that sells the movie.

As someone who is quite familiar with the movie, the trailer makes me smile because I remember all those moments and I hear the accompanying dialogue, and it is rather well put together on a technical level, so I can't complain about that aspect really. And it is sort of geared to internet viewing as it rewards repeated watching. However, in early 1998, not too many people had the luxury of being able to view a trailer repeatedly online with any decent quality, so I guess unless you saw an inordinate amount of movies during the winter of 1997, it wouldn't work on that level.

Of course, if the movie had been a hit based on a different trailer, would it have developed the reputation and loving fanbase it now currently enjoys? I don't think it would, because people had the pleasure of discovering the movie on their own and it became a part of their lives personally. It became a classic one individual at a time and became a movement when all those people discovered they weren't alone, and if it had been a massive hit, it wouldn't have been special like it is now.

So in the long run, perhaps that was indeed the best trailer possible for the movie.

Lifting the limit on calls to the Google Chart API



We got a lot of feedback after releasing the Google Chart API in early December. By far the most questions were about the limit of 50,000 queries per user per day. Some of you who are webmasters of larger sites are afraid of overstepping this limit. We've heard your concerns, and have decided to drop that limit altogether.

However, should you expect to regularly cause more than 250,000 queries per day to the Google Chart API, we'd like you to let us know by mailing chart-api-notifications@google.com so that we can plan for the demand.

And with that said, from now on, if your site can't handle the Slashdot effect, it shouldn't be because of the Google Chart API. ;)

But why did we impose a query limit to start with? It was there to ensure that we could provide a reliable service for all legitimate users because we were able to lock out malicious users.

We work hard to provide reliable services, and even have a specific team of site reliability engineers (SRE) dedicated to keeping our services up and running (as well as fast). I cover the Chart API for SRE. A very important part of an SRE's work is capacity planning, because only a service with sufficient capacity can serve reliably and with low latency. For a new service, planning the capacity is naturally very hard, because there are a lot of unknown contributing variables. That's why we started with a quite conservative query limit. Now, that we've had the public API running for some time, we've collected enough experience to feel comfortable raising that limit without jeopardizing the service's reliability.

By the way, there's a lot more to what an SRE does. We also run, debug, optimize and troubleshoot very large scale distributed systems. If you're interested, come join Google SRE -- for instance the Zürich SRE team, where I work.

Monday, March 17, 2008

YouTube / Picasa Web Albums APIs Hackathon at the 'plex



As promised in my last post announcing the new YouTube developer offerings, we're hosting a hackathon for the YouTube and Picasa Web Albums APIs at the Googleplex on March 27th, 2008.

We'll give overviews of both APIs, go over new features, and run some codelabs to get you started. If you're already familiar with both the APIs, stop by to meet the teams, ask questions, and find other developers to work on projects with.

There will be two sessions -- one from 3PM - 6:30PM and another from 6:30PM - 10PM. Feel free to stay the whole day, or just come for the session you have time for. Don't worry about food and caffeine -- we've got you covered.

Interested? Please RSVP and let us know.

Hope to see you there!

Sunday, March 16, 2008

Classic Sunday Night Video: Carlin's Seven Words

I thought I would change things up this week by posting a classic routine from George Carlin regarding the Seven Words you can't say on Television from 1972. Of course, I think that the title alone should be fair warning that the language may not be appropriate for an office setting... well, unless you workplace resembles Glengarry Glen Ross.



But even for a 35 year old piece of comedy, it still has some great teeth in this FCC dominated age of network television.

What has the tuckshop ever done for us?

The other day, my 9 year old came to me with an issue.

"Dad. Did you know that a juice cup at the tuckshop at school is now half the size but costs the same as before?"

"Is that so?"

"Yes, and it is not just that. The pasta has halved in size and the prices of Sunnyboys [a frozen ice pyramidal thing] have gone up."

"So what's the problem?"

"Well, everyone is talking about it. It is pretty unreasonable. I want to do something about it."

As an economist, it is hard not to be supportive at this point. Here we have a child complaining about the price of a purely aspirational good sold by a monopolist. "Aspirational" because she, in fact, is never allowed to buy anything at the tuckshop. Regardless, I can't imagine a social cause with "Gans family" more stamped on it.

"So what do you want to do?"

"I think we need to complain."

"How about a petition?"

"Oh yes, they tried that with the school bell. But nothing ended up happening."

"Maybe it will this time."

"And if they don't maybe, I'll open up my own shop. I can sell more for less and still make money."

"Good thinking but let's not get ahead of ourselves here."

And so she set out to craft a petition for students at school to sign. Here is what she wrote before I took a look:
We the undersigned wish to protest the high prices in the tuck shop. Recently we have noticed that things in the tuck shop have been getting smaller for the same price, getting smaller and for more money, and/or just going up to unreasonable prices. For example: the frozen juice cups [as we call them] are now almost half the size they use to be, and they still cost 80c. There are many similar stories just like that.

We say this because some people don’t have time to pack lunches, and they suddenly come to school with too little money. For everybody they would be spending unreasonable amounts of money.
"That's great. Now, why are the prices unreasonable?"

"Well, people say that they are more expensive than other places."

"OK, you need to find some examples of that and put them in here. That will make it much more convincing."

It turns out that we had the price list of the tuckshop -- they send that home to parents every year. Now, what to compare them to? We talked about various options and decided to look for stuff you could buy in the supermarket as a good starting point. She found out that you could buy a six pack of Sunnyboys for $6 at the supermarket whereas they cost $1.20 a piece at the tuckshop.

She ran away to write this great example into her petition. A little while later she came back.

"I don't think the Sunnyboy one works."

"Why?"

"Well, when you buy more of something at the supermarket they often cost less than smaller things. That might be the case here. Also, the tuckshop freezes them and that probably costs something."

So it was back to the drawing board. We decided to search Safeway on-line for products that were comparable. We came across a 600ml Big-M flavoured milk. It was refrigerated at both places so was a good candidate. The tuckshop price was $2.70 and Safeway's price, $3.55! Oh oh.

"Now what am I going to do?"

"Well what things did you think were priced too high?"

"How should I know? You never let me buy anything at the tuckshop."

"True. How about asking around at school?"

And so that is what she resolved to do although I suspected the revolution was soon to be over. But then she came back with one final question.

"Dad, why are prices at the supermarket so high?"

Woodland Justice: A Culture Kills Comic

Yep. I went with the Lumberjack. Big Whoop. Want to fight about it?

Woodland Justice


There were no leprechauns this time around.

Saturday, March 15, 2008

More parent-teacher interview surprises

I have written before that we seem to be constantly surprised when we go to our eldest's parent-teacher interviews; pleasantly surprised that is. Last year, it was her good behaviour and it turned out to be the incentives that did it. This year, different thing but same story.

The interview was with her two 4th grade teachers. Her main teacher and her teacher for a second language. I must admit that we think learning a second language is a good thing but not so much that we have ever encouraged it or cared less. So in parent-teacher interviews, the language teacher gets little (alright, none) of our attention.

So after much for the interview with the main teacher we came to the obligatory language assessment. Usually, our daughter is doing fine. This time we got: "she is star. She is the best. We think she is gifted." This provoked the response: "really? We had no idea. How do you know?"

Well, it turns out how they know is that they keep a posted set of rankings taking all kids in the class: 1 - 22. And it is based on the teacher's assessment in language performance. Suffice it to say, my daughter -- who had previously shown as much interest in the subject as us -- jumped straight to No.1 and has not budged since. Well, isn't that interesting?

It was then that her main teacher -- who, in many respects, had popped straight out of the 60s -- piped up:

"Hmm, I wonder why she doesn't do that for other subjects."

"Well, do you have a ranking?" I asked.

"Yes."

"Does it work the same way?"

"Well, each week a start out with each child getting a random position but after that they can move up by challenging other children. Your daughter usually climbs to about 3 or 4 and then stops,"

Ahh, so it was a muted incentive system. You can invest all week in climbing to the stop only to find yourself unceremoniously thrown back down. Turned out that our daughter realised this. "I never go down but I am only going to challenge someone above who I know I can beat easily. Otherwise, I will have to try and beat a better person only to lose the ranking in the next week."

Explicit, strong incentives don't work for all children but in our case they do in a stunning way. They think she is gifted in languages. I'm not sure about that but I do know that she can see through incentives. Now that is something I do value.

Friday, March 14, 2008

Week 44: Pageant of the Transmundane

This week, the winner isn't so much funny, but rather I would place it firmly in the realm of strange yet informative.

The entry in question comes from the blog SciencePunk, created by Frank Swain, and amongst his science related entries, I found one that stood out.

It is a little video about an experiment that saw British Soldiers exposed to LSD. The narration is a little dry, but the subject is fascinating, and from that point of view, well, I thought it was certainly worthy of not only a bid for this week's prize, but the win itself.

And since this week's winner had to do with soldiers, well, it seemed fitting to have an image of Homer Simpson as a soldier from the episode entitled G.I. DOH! as the visual representation of the Pageant of the Transmundane this week.



Congratulations Frank. Here is a badge for your site if you want one.




The rules of this little contest: Every week I will be selecting one blog post that I have seen from the vast reaches of the blogosphere to bestow with the Homer Simpson Transmundanity Award for being one of the freakiest(in a funny way) things I've seen or read during a 7 day period. It doesn't necessarily have to have been written during the week, I just had to have encountered it. That means that if you find something interesting and repost it like a movie or whatever, if I saw it at your blog first, you get the prize. Of course, creating your own content is also a very good way to win.

Now, if you see a post that you think is worthy of this illustrious prize, just drop me a line at campybeaver@gmail.com and we'll see if we can't get your suggestion up and award-ready while giving you some credit and a link to your own blog.

How we improved performance on Google Code



If you're a frequent visitor to code.google.com for product updates and reference materials for Google APIs you're working with, you might have noticed that the page loading time (or page rendering time depending on how you see it) has reduced in varying degrees in the past several weeks.

As you'll see below, we've made several changes to help reduce user-perceived latency. This is not an exhaustive list of all improvements we've made recently, but these are the major ones we've made.

As Steve Souders emphasizes as the "Performance Golden Rule" in his book High Performance Web Sites, "only 10-20% of the end user response time is spent downloading the HTML document. The other 80-90% is spent downloading all the components in the page (p.5)".

We agree. That's why we focused our effort on reducing the number and size of downloads (HTTP requests) for the "components" throughout Google Code.
  • Combined and minimized JavaScript and CSS files used throughout the site
Downloading JavaScript and CSS files blocks rendering of the rest of the page. Thus, to reduce the number of HTTP requests made on the initial page load, we combined frequently-used JavaScript and CSS files into one file each. This technique has brought down 20 HTTP requests down to just 2. We also minimized the files by stripping out unnecessary whitespace and shortening function/variable names whenever possible.
  • Implemented CSS sprites for frequently-used images
There are 7 images prominently used throughout Google Code, including the Google Code logo, the googley balls at the bottom of every page, the plus and minus signs as well as the subscribe icon inside each blog gadget.

Although browsers usually download several images in parallel, we concatenated these images into one image so only one HTTP request would be made. Of course, concatenating several images into one required us to make several changes in HTML/CSS. For example, instead of having:

<img src="/images/plus.gif" />


We had to change it to:

<div style="background-image:url(/images/sprites.gif); background-position:-28px -246px; width:9px; height:9px">&amp;</div></span>


where sprites.gif is the concatenated image and background-position and width/height carefully calculated.
  • Implemented lazy loading of Google AJAX APIs loader module (google.load)
We like to eat our own dogfood. Among other APIs, we use our very own AJAX Feed API on product homepages inside the blog gadgets and the AJAX Search API on the search page. These Google AJAX APIs require the Google loader module (google.load) to be loaded first before any of the specific AJAX APIs (i.e. AJAX Feed API, AJAX Search API, Maps API) can be initialized and used. Traditionally, the Google AJAX APIs loader module would be loaded by including the following <script> tag in the <head> section:
    <script type="text/javascript" src="http://www.google.com/jsapi"></script>
This works well in most cases, but when optimizing for the display of static content, this blocks the browser from rendering the rest of the page until it's finished loading that script, thus impacting the user-perceived latency. So instead of loading the Google AJAX APIs loader module upfront, we are now loading it lazily only on the pages where it's required. This is made possible as follows (please note that this is a stripped-down version of what we have on Google Code):

First, in the <head> section, we load the Google AJAX APIs loader module via DOM scripting only on the pages where it's required:

if (needToLoadGoogleAjaxApisLoaderModule) {
// Load Google AJAX APIs loader module (google.load)
var script = document.createElement('script');
script.src = 'http://www.google.com/jsapi?callback=googleLoadCallback';
script.type = 'text/javascript';
document.getElementsByTagName('head')[0].appendChild(script);
}
It's important to add the 'callback' parameter in the src attribute, 'callback=googleLoadCallback'. This callback handler will then be called whenever the Google loader module is finished loading.

Then, in the Google loader callback handler (googleLoadCallback()), we initialize the AJAX Feed API and provide the function name that utilizes the AJAX Feed API (startUsingAjaxFeedAPI):
function googleLoadCallback() {
// Initialize AJAX Feed API
google.load('feeds', '1', {callback: startUsingAjaxFeedAPI});
}

function startUsingAjaxFeedAPI() {
// Start using AJAX Feed API
var feed = new google.feeds.Feed(someFeedUrl);
...
}

In effect, we're loading the AJAX Feed API on-demand through the use of two consecutive callback handlers, first to load the Google AJAX APIs loader module (google.load) and then to initialize the AJAX Feed API before it's used. Similar technique can be used for the Maps API and the AJAX Search API.

By now you're probably wondering just how much of an impact did these changes have on Google Code anyways? According to our latency measurement stats, the user-perceived latency on Google Code dropped quite a bit, anywhere between 30% and 70% depending on the page. This is a huge return for relatively small investments we've made along the way, and we hope you'll find these techniques useful for your own web development as well.

Thursday, March 13, 2008

Best Pacman Comic EVER!

Pacman is a true hero... all I have to say.

Snafu Comics... you have a new fan. Bravo!

The Origins of the Futurama Theme

I discovered this little gem a few weeks ago and I kept putting off posting it, but today seemed like as good a day as any to post it(as I am working on a longer post).

I love electronic music of almost every stripe, from the early pioneers to those working in the field today, and sitting astride that history is Pierre Henry, who in 1967 wrote a piece of music with Michel Colombier called Psyche Rock, which became the loving basis of the Futurama theme song.



It certainly makes me want to whip out my Futurama boxsets or build a larcenous, booze-swilling robot.

Wednesday, March 12, 2008

Tomatoes and Ninjas and Kitsch, Oh My

Attack of the Killer Tomatoes is one of those true kitsch/crap classics that I thought would never be remade. Endlessly sequelled? Yes. That is a given.



But it seems that it may indeed be remade. And you know me, I am one of those endlessly dour people when it comes to remakes, but in this rare case, I may be willing to make an exception.

You see, the people behind the push to remake Attack of the Killer Tomatoes are the same dudes behind Ask a Ninja, so in this case, I think they get it. They know what Killer Tomatoes is supposed to be, and I think that for once, they can do the premise justice.

I mean, considering some of the horrifyingly bad remakes there have been, it warms my heart to think that a comedic gem could be reborn here. I just hope there is at least a cameo for John Astin. That's all I ask.

Tuesday, March 11, 2008

YouTube APIs for developers and for... iguana enthusiasts



Ever wanted to get in on the online video craze? Now's a good time! We've just added upload, write, and authentication functionality to the YouTube Data API. Brand new player APIs and tools are also now available.

That means that if, for example, you run a site just for iguana enthusiasts, your users can upload videos of JubJub to their YouTube accounts, post comments, create iguana playlists, and more, all without leaving your site. And with the new player APIs and the new chromeless player, you can completely customize and skin the YouTube embedded player to match the look and feel of your site (a green theme, buttons that look like scales?).

So excited that you can't decide what to do next? Read more details over at the YouTube API blog, watch our engineers talk about the new features (on YouTube, where else?), check out the docs, then join the forum.

You can also mark your calendars -- we'll be holding a YouTube / Picasa hackathon on March 27th at the Googleplex in Mountain View. Stay tuned for more info.

Spaced DVD's coming out for Region 1

Well, I know what I am buying July 23rd, 2008. That's right, those 14 episodes of pure quirky and crispy (as in fried gold) comedy are finally going to be available on DVD in North America.

I've waited a long time for this, and I do hope that they keep all the extras that are in the British sets, because I want to hear all the commentaries, see the short vignettes, and generally really get inside the nuts and bolts of the show. It is one of my favorite television experiences, and I would love for those involved to make some money from my fandom.

Of course, I think the original show being generally available during the summer will make the McG produced, non-Wright/Pegg/Stevenson involved version that Fox is developing look like absolute soulless crap. As all three of the particulars have said, the series was a very personal take on their lives, and by omitting their input on the American version, the producers are basically making the statement that they only want the name and buzz associated with the show, and none of the quality.

About a month ago, I told a certain Youtuber that she would make a great Daisy Steiner, and I would like to retract that, as I wouldn't want her to be so sullied. That's how bad the American version will be.

I don't know if having to endure a bad reinvention is worth having the series available on DVD.... yeah, it probably is... especially since it will likely be very short lived given Fox's penchant for cancellations.

Monday, March 10, 2008

More Classic Shows going Online

A few weeks back I reported that CBS Interactive had begun streaming some of their classic series online, and it seems like quite a few other outlets are getting in on the act.

For instance, NBC and some of its affiliated cable channels(like Sleuth and the Sci-Fi Channel), are going to be making such series as Miami Vice, the Original Battlestar Galactica, Kojak, Buck Rogers and The A-Team amongst other available online. And Sony had put together a channel on Youtube for condensed episodes from their own classic library.

And just a few days ago, there was news that the now defunct WB Network would be also making a return of sorts on the internet, as most if not all of that networks most popular series, including Buffy the Vampire Slayer, Gilmore Girls and Dawson's Creek, will start streaming next month.

While the Pop Culture lover in me revels in the idea of so much television being legally available online, the pragmatist in me wonders about a few things.

For instance, given the fact that a lot of these commercial supported classic shows were produced and aired at a vastly different time in television history, a time when contracts about residuals for those involved allowed the networks to profit from that work without compensating the actors, writers or producers. Think about it: aside from the bandwidth, these shows are now pure profit.

I wonder if this widespread push to put older content online was in anyway influenced by the recent resolution of the writers strike? I mean, the studios have this content, and really, I don't think they are legally bound to pay the heirs of say Rod Serling or Mr. T anything for using it to make a profit. And if they do, well, it is likely a much smaller residual fee than a comparable modern show.

So I would say my attitude is now guarded when it comes to these developments.

Announcing Google I/O




Its been about a year since I last blogged about a big Google developer event. During that time, we’ve seen a number of new technologies emerge which developers can use to build killer web applications. OpenSocial, Gears, and Android are a few that come to mind. But there is also a lot to learn if you really want to get the most out of these products.

That’s why I’m excited to announce Google I/O, a two day developer gathering on May 28th & 29th in San Francisco. The purpose of the event is to bring developers together to learn about products, tools, and techniques which are moving the web forward as a platform.

We've divided Google I/O into five topic areas: AJAX, APIs & Tools, Social, Geo, and Mobile. There's, of course, a focus on Google products, but the event won’t be limited to just Google APIs and developer tools. There is a lot of knowledge about web development in general at Google, and we’d like to share that expertise so that all applications on the web get better.

Over the two days, Google engineers and other leading software developers will share their knowledge in breakout sessions, hands-on Code Labs, and Q&A Fireside Chats.  Just a few of those speakers and what they'll be covering:

  • David Glazer, Director of Engineering - OpenSocial
  • Mark Lucovsky, Director of Engineering - AJAX APIs
  • Brad Fitzpatrick, Software Engineer - Social Graph API
  • Dion Almaer, Technical Program Manager and co-founder of AJAXian.com - AJAX
  • John Panzer, Technical Manager - Shindig
  • Guido Van Rossum, Software Engineer and creator of Python - Python and Google APIs
  • Chris DiBona, Open Source Programs Manager - Open Source
  • Bruce Johnson, co-creator of Google Web Toolkit - Google Web Toolkit


We're doing our best to make this a can't-miss event for web app developers. Visit the Google I/O website to learn more and register.  Space is limited, so be sure to make plans to attend now.

PS. If you are wondering whether we’re still having our global Google Developer Day series, the answer is a definite yes. We’ll be rolling out Developer Days to a number of countries outside the US. Look for an announcement of dates and locations soon.


Plausibility Check: Horton Hatches the Egg

My son and I argued last night about what was more implausible in Horton Hatches the Egg: that the egg produced an Elephant Bird (my son favoured this) or that following this, the circus sent him back to Africa happy (that was my one)? My son argued convincingly that just sitting on an egg would not get the elephant bit into it as "it was all done earlier and who is that baby bird's daddy anyway?" Whereas, my implausibility candidate might have happened.

But while I am at it, let's not forget the year long gestation period for that egg and how Horton might have got himself food for the 51 weeks of it that he was in charge. Nonetheless, we can all agree that the hunters were correct in seeing the commercialisation options of an elephant in a tree.


Sunday, March 9, 2008