Friday, 29 April 2011
Facebook StumbleUpon Twitter Google+ Pin It


By Scott Knaster, Google Code Blog Editor

The final launch of Space Shuttle Endeavour is now scheduled for early next week. This will be the next-to-last mission planned for the US Space Shuttle program. As a young nerd, I loved to watch the progress of the space program. Almost as amazing as the missions themselves was the fact that I could see it all live on television, even from hundreds of thousands of miles away.

Endeavour is going to do much better than that. You can go to and submit video questions for the crew of Endeavour. The crew will select some of the questions and answer them live on YouTube. For more details, see the Official Google Blog.

Much closer to home, and completely unrelated, Google Chrome got a pretty slick new feature in the stable release this week. You can now use voice input with Google Translate in Chrome. In many languages, you can even click Listen to hear the translation. This feature uses the HTML speech input API. Now I can practice those languages I never quite mastered on my last vacation.

For more on what you can develop with HTML5 and other open web technologies, see the Chrome Experiments site.

Finally, if you want to know why this Space Shuttle mission includes squids, read this page.

Chime in on #io2011 and check out After Hours

By Merci Niebres and Monica Tran, Google I/O Team

A few weeks ago, we announced I/O Live and invited you to display our HTML5 badge on your blog or website. Starting today, your I/O Live badge links to our new Google Earth mashup that lets you see what developers from all over the world are saying on the #io2011 hashtag.

In other news, the theme for this year’s Google I/O After Hours party is “Infinite Playground.” Starting at 6:30 P.M. on May 10, join us for a celebration of technical and artistic innovation with futuristic robots, transforming vehicles, and games from the visionaries at Gadgetoff, Maker Faire, MIT, Georgia Tech Center, iRobot, Madagascar Institute and others.

What's a party without killer tunes? This year, we are pleased to present a live performance from Jane’s Addiction. The legendary band, including Perry Farrell, Stephen Perkins, and Dave Navarro, will be headlining the party with a 45-minute set of their classics and a sneak peek at their upcoming album, The Great Escape Artist, which will be released in August. The line-up will be completed with San Francisco’s very own DJs Mark Farina and Miguel Migs with music visuals brought to you by Sexyvisuals.

In yesterday's post we revealed I/O schedule details that include which sessions will be livestreamed along with the keynotes. We will also be livestreaming the concert on I/O Live from 7:30 - 9:30 P.M. PDT on May 10. Bookmark -- and check back on May 10. You won’t want to miss the finale to our countdown.

Merci Niebres is a Marketing Events Manager in Google's San Francisco office, focusing on developer outreach programs and consumer product launches. In her spare time, she obsesses over her collection of cameras and forces her friends and dog to model for her.

In the past four years, Monica Tran has been around the world, working as a Product Marketing Manager in Mountain View, London, and Tokyo. Monica is entirely too busy working on Google I/O to spend time writing her bio right now.

Thursday, 28 April 2011
Facebook StumbleUpon Twitter Google+ Pin It

Google I/O session schedule revealed

By Amy Walgenbach of the Google I/O Team

The complete schedule for I/O is now available, so if you’re attending Google I/O on May 10-11, you can now start planning two days packed with sessions and events. The schedule for I/O BootCamp is also up for your convenience.

The in-depth descriptions of I/O sessions, complete with speakers for each, are available on the Sessions page of the I/O site. With so many great sessions to choose from, we wanted to highlight two special sessions that will take place at the close of Day 1.

Ignite. Fast-paced, fun, and thought-provoking, Ignite captures the best of geek culture in a series of five-minute speed presentations. It's a high-energy session of short talks by people who have an idea—and the guts to get onstage and share it. This year we will learn about the Brain API, the similarities of Disneyland and Burning Man, and a dissection of the Tiger Mom myth.

Google Ventures Meetup. Google Ventures will be holding an experiment in controlled chaos. This event will bring attendees together with members of the Google Ventures core team (investors and experienced startup veterans), and select portfolio companies ranging from small, new teams to later-stage, successful companies. The room will be arranged to enable attendees to speak to panels of "experts" in bite-sized, three-minute 1:1 conversations, otherwise known as VC speed dating. Our goal is to connect both practicing and soon-to-be entrepreneurs with experts who can impart advice, lessons learned, and quick tips.

We’ve also posted our Office Hours schedule. Google engineers will be on hand to answer any questions you have about the products and technologies featured at I/O. We’ll be holding office hours for Accessibility, Android, Apps, App Engine, Chrome, Commerce, Developer Tools/GWT, Geo, Google APIs, Google TV, Google Mobile Ads/AdMob, and YouTube.

Be sure to check @googleio for the latest updates.

Posted by Scott Knaster, Editor

Simperium’s use of Google App Engine for Simplenote

By Mike Johnston and Fred Cheng, co-founders, Simperium

This post is part of Who's at Google I/O, a series of guest blog posts written by developers who are appearing in the Developer Sandbox at Google I/O.

We originally created Simplenote both as a learning exercise and to address what we thought were shortcomings in the original Notes app for the iPhone (Marker Felt font, no ability to search, etc.) The very first version of Simplenote didn't even have syncing!

We've certainly come a long way since then. The Simplenote backend now synchronizes data across devices, the web, and third-party apps while also handling in-app purchases, sharing, and basic metrics. About a year ago, we were accepted to the Y Combinator startup accelerator with something like 20,000 users. Today, with hundreds of thousands of users, we're currently serving 15 million requests daily and providing access to over 500 gigabytes (!) worth of text notes.

Google App Engine is at the heart of it. We made a decision early on to use App Engine so we wouldn't have to worry about scaling, or deploying more servers, or systems administration of any kind. Being able to instantly deploy new versions of code has allowed us to iterate quickly based on feedback we get from our users, and easily test new features in our web app, like the newly added Markdown support.

We consider our syncing capabilities to be core features of Simplenote. They are, in and of themselves, largely responsible for attracting and retaining many of our users. Our goal is to give other developers access to great syncing, too. The next version of our backend is named after our company, Simperium. As a general-purpose, realtime syncing platform intended for third-party use, Simperium's architecture is much more expansive than the Simplenote backend. Yet App Engine still plays a key role. It powers the Simplenote API that is used by dozens of great third-party apps like Notational Velocity. And it continues to power auxiliary systems, like processing payments with Stripe, while bridging effectively with externally hosted systems, like our solution for storing notes as files in the wonderful Dropbox.

We suspected we might outgrow App Engine, but we haven't. Instead, our use of it has evolved along with our needs. Code we wrote for App Engine a year ago continues to hum along today, providing important functionality even as new systems spring up around it.

In fact, we still come up with entirely new ways to use App Engine as well. Just last week we launched an internal system that uses APIs from Twitter, Amazon Web Services, Assistly, and HipChat to pump important business data into our private chat rooms. This was a breeze to write and deploy using App Engine. Such is the mark of a versatile and trustworthy tool: it's the first thing you reach for in your tool belt.

Come see Simperium in the Developer Sandbox at Google I/O on May 10-11.

Mike Johnston was a senior designer and programmer at Irrational Games where he worked on numerous games and prototypes for PC and Xbox 360. Before that he built security software at Entrust.

Fred Cheng hails from Cantaloupe Systems, a venture-backed startup, where he built their infrastructure for wirelessly tracking tens of thousands of vending machines.

Posted by Scott Knaster, Editor

ShortForm: mix and share the world's videos

By Jereme Monteau, Lead Developer at ShortForm

This post is part of Who's at Google I/O, a series of guest blog posts written by developers who are appearing in the Developer Sandbox at Google I/O.

ShortForm is a new entertainment medium where you find continuous channels of the best videos, curated by a growing community of VJs. At ShortForm you can be a viewer, a VJ, or both. Viewers subscribe to channels of interest, lean back, and enjoy a continuous stream of videos.

The developers at ShortForm worked with various YouTube Data APIs in order to deliver both the Viewer and VJ experience.

Standard feeds and user playlists. ShortForm makes it easy and fun for anyone to VJ a channel. We also auto-curate a select set of channels to surface mainstream content that would appeal to most audiences. For example, our YouTube Hits channel includes content from the standard YouTube video feeds such as Top Rated, Most Viewed and Most Popular. ShortForm developed a system for retrieving video entries and their associated metadata, and then ordering them in playlists based on a ranking algorithm.

Favorites and uploads. ShortForm allows VJs to import their YouTube favorites and uploads into their channels quickly and easily by authenticating via YouTube’s OAuth provider. Once a user has connected their ShortForm account to their YouTube account, we are able to allow them to import their favorites and uploads through an authenticated call to the YouTube Data API. In the future we will streamline the process of uploading videos to YouTube by allowing VJs to upload videos to YouTube directly from ShortForm while adding those videos to their ShortForm channel in the same flow.

Player API. Providing a seamless channel viewing experience on ShortForm requires that we integrate tightly with YouTube’s JavaScript API to the ActionScript 3 player. This allows us to properly handle video events to ensure continuous playback. Users have full control over their viewing experience using the next and previous video buttons, which load videos into the YouTube player. We have also begun integrating with the new iframe embed style that is currently in beta and have seen promising results in our initial tests across desktop and mobile platforms.

Android tablet. Tablet computing represents an exciting opportunity for ShortForm to provide a first-class viewing experience in a new package. We have begun testing and looking for places to optimize the viewing experience on tablet devices.

ShortForm widget. Our embeddable widget syntax was inspired by YouTube’s new iframe embed syntax. We believe this is the simplest, most flexible and most powerful way to allow our users to embed their channels anywhere on the web.

We are thrilled to be a part of Google I/O and in order to demonstrate the power of ShortForm, we are putting together a Google I/O Sandbox channel, a continuous channel of product pitches and demos from companies represented in the I/O Developer Sandbox. We invite all Sandbox companies to submit a video of their product pitch or demo. Details can be found at the ShortForm at Google I/O page. We'll use the channel to preview cool companies in the Sandbox before the conference. The channel will also provide media members with a summary of all the technology from all Sandbox companies.

Lastly, we are going to have a little fun and invite all attendees to vote on their favorite pitches and demos. Submit your video on the ShortForm at Google I/O page. We’ll surface a leaderboard showing videos with the top votes, and the winning entry will be highlighted in a press release and will get prime placement on ShortForm’s homepage for one week, reaching hundreds of thousands of people.

Come see ShortForm in the Developer Sandbox at Google I/O on May 10-11.

As a founding member of ShortForm, Jereme has been hacking around with the YouTube APIs for over a year now and has been building software for 15 years. When he’s not coding he’s probably trail running or roasting his own coffee while eagerly anticipating the arrival of his first child in June.

Posted by Scott Knaster, Editor

Tuesday, 26 April 2011
Facebook StumbleUpon Twitter Google+ Pin It

Students announced for 2011 Google Summer of Code

By Stephanie Taylor, Open Source Programs Office

(Cross-posted from the Google Open Source Blog.)

We have announced the 1,116 students who will be participating in this year’s Google Summer of Code program. Students will now start the community bonding period where they will get to know their mentors and prepare for the program by reading documentation, hanging out in the IRC channel and familiarizing themselves with their new community before beginning their actual coding at the end of May.

If you are interested in learning more about the 175 organizations that the students will be working with during the 2011 Google Summer of Code or important dates, please visit the program website.

Congratulations to our accepted students! We look forward to an exciting and productive summer of coding.
Posted by Scott Knaster, Editor

Friday, 22 April 2011
Facebook StumbleUpon Twitter Google+ Pin It


By Scott Knaster, Google Code Blog Editor

Clarke's Third Law states that "any sufficiently advanced technology is indistinguishable from magic". That's exactly how I felt the first time I saw various bits of advanced software: for example, watching a word processor automatically wrap words at the end of a line without having to press Return, seeing the Mac's graphical user interface and learning that I could program it into my apps using ordinary-looking function calls, and watching a search engine take a couple of words and almost instantly find exactly the right web page from among millions.

The Prediction API described in yesterday's post on this blog is a modern piece of software that feels like magic. Using machine learning, the Prediction API examines existing data, determines patterns, and makes educated guesses at answers to questions. For example, if you train a program with phrases in various languages, you can then feed it new phrases and have it determine the language of the new phrases. That's certainly something humans can learn to do; having computers do it sounds remarkable to me, but it's real.

You can use the Prediction API to tell whether user comments are positive or negative, decide which emails are most and least relevant, and identify suspicious activity. If you'd like to add features like these to your apps, please check out yesterday's post.

Turning to a completely different topic, if you're interested at all in making your HTML5 and CSS3 faster, spend half an hour or so watching this talk by Paul Irish from the Google Developer Relations Team. There's a lot in there, including a nifty section about hardware accelerated CSS.

Finally, for nerdy nature fun, please check out this video that shows what happens when a wasp and an ant fight over the same food.

Thursday, 21 April 2011
Facebook StumbleUpon Twitter Google+ Pin It

Prediction API: Every app a smart app

By Travis Green of the Google Prediction API Team.

If you’re looking to make your app smarter and you think machine learning is more complicated than making three API calls, then you’re reading the right blog post.

Today, we are releasing v1.2 of the Google Prediction API, which makes it even easier for preview users to build smarter apps by accessing Google’s advanced machine learning algorithms through a RESTful web service.

Some technical details of the Prediction API:
  • Chooses best technique from several available machine learning algorithms.
  • Supported inputs: numeric data and unstructured text.
  • Outputs hundreds of discrete categories, or continuous values.
  • Integrates with many platforms: Google App Engine, web and desktop apps, and command line.
  • v1.2 improvements:
    • Simpler interface: automatic data type detection, and score normalization.
    • Paid usage tier.
    • Improved usage monitoring and faster signup through the APIs Console.
Ideas to make the most of the Prediction API:
  • Recommendation: What products might a user be interested in? (example)
  • Filter RSS feeds, user comments, or feedback: Which posts are most relevant? Should a user comment be featured? Which feedback should we look at first? (example)
  • Customize homepages: Predict what content a user would like to see and populate the page with the user’s anticipated interests.
  • Sentiment analysis: Is this comment positive or negative? Does a commenter support Group A or Group B?
  • Message routing: Route emails to the appropriate person based on analysis of the email contents.
  • See the Prediction API website for many more!
To join the preview group, go to the APIs Console and click the Prediction API slider to “ON,” and then sign up for a Google Storage account.

We would also like to continue to thank our supportive preview users for their help making the API the service it is today. We look forward to seeing many more of you join us in making the web just a little bit smarter, and hearing your thoughts and feedback through our discussion group.

Travis Green's favorite part about his job is designing smart applications. In his spare time, he is in the great outdoors (looking for trouble).

Posted by Scott Knaster, Editor

Android for Good at Google I/O 2011

By Zi Wang of the Android Team

Do you have an unlocked Android device that you no longer need? If you’re coming to Google I/O, you can make a world of difference by donating it to Android for Good.

Android for Good evolved from a program at Google started by one passionate engineer with an idea to help the developing world through technology. A small team collected Android devices from Googlers around the world and organized their donation to groups including Grameem’s AppLab Community Knowledge Worker Initiative in Uganda, Save the Elephants in Kenya, V-Day in the Democratic Republic of Congo, VillageReach in Mozambique, VetAid in Tanzania & Kenya, and UNHCR in Central Africa.

This year, we want to make it easy for everyone at Google I/O to get involved as well. We know you like to keep up to speed with the latest and greatest technology, so you may have an older Android device you don’t need anymore. If that device is unlocked (such as the T-Mobile G1, Nexus One, or Nexus S) and in good working condition, bring it along to Google I/O and drop it off at the Android for Good booth, located on the third floor of Moscone Center. Although it might seem old to you, that device could mean a new beginning when placed in the right hands.

Zi Wang is a Product Marketing Manager on the Android Team. In his 20% time, Zi is working on a very cool project called Android in Space.

Posted by Scott Knaster, Editor

Wednesday, 20 April 2011
Facebook StumbleUpon Twitter Google+ Pin It

Check out the latest from the Developer Sandbox at Google I/O 2011

By Dusty Reid and Christine Songco of the Google I/O Team.

With Google I/O 2011 less than a month away, we wanted to give you a preview of the partners who will be present at our Developer Sandbox. Starting today, you can visit the Developer Sandbox page on our website for a preview of who will be exhibiting at Google I/O 2011. Think of the Sandbox as a place where you can get real-life case studies and hands-on time with developers who use Google technologies to build products. We have 128 partners participating across 10 product tracks this year.

For those of you joining us via I/O Live, you can submit and vote on questions you’d like to ask our partners via Google Moderator. We will be taking the most popular questions and conducting video interviews with Sandbox partners. The videos will be posted to the Sandbox page on the following day.

Also, stay tuned on the Google Code Blog where we’ll be featuring guest bloggers from Sandbox companies in the days leading up to I/O.

For those of you joining us in person, we’ll see you in San Francisco. For everyone around the world, tune in to I/O Live and don’t forget to submit questions for Sandbox companies via Google Moderator!

Dusty Reid plans and manages many events at Google each year, including Google I/O. He works at Google's office in beautiful Boulder, Colorado.

Christine Songco works with developers in Southeast Asia, although before and during Google I/O she wears many additional hats. Christine likes to travel, scuba dive, and snowboard in her spare time, which she hopes to discover again when I/O is over for the year.

Posted by Scott Knaster, Editor

Monday, 18 April 2011
Facebook StumbleUpon Twitter Google+ Pin It

Happy Tax Day! Now, where did your tax dollars go?

This post is by Jenny Ramaswamy of the Google Creative Lab. Jenny is a Marketing Manager on the Creative Lab's Data Arts team. Outside of work, Jenny likes to go on adventures to remote international locations.

(Cross-posted with the Official Google Blog.)

Like it or not, Americans have a date with the IRS today. In a few hours, our tax forms will have been sent in... yet most of us will still be left wondering, “How will the government spend our money?”

In February, we launched the Data Viz Challenge to answer that very question. The challenge was a five-week competition that asked developers to visualize how our federal income tax dollars are spent. We received more than 40 thought-provoking entries that each take a unique approach to making this data more accessible to taxpayers.

Take a look at the variety of visualizations in this short video:

The entries ranged from quirky and fun to serious and academic. Some were as simple as a receipt, others showed us how many minutes or days we work to cover public spending. One even rendered the data as a cityscape and invited people to climb the towers virtually.

In the end, our jury selected Anil Kandangath’s “Where Did My Tax Dollars Go?” as our Grand Prize winner. As the jury noted, his entry is information-rich but elegantly designed, and at no point while interacting with the visualization do you lose the “big picture.” Anil’s entry is a great example of how data visualization can take boring, complicated, but critically important information and make it accessible to everyone. Congratulations, Anil.

Thank you to all of the entrants and our partners Eyebeam and for making this possible. We hope these submissions help you better understand where your tax dollars are spent—and even inject a little bit of fun into your tax day this year. Happy filing!

Posted by Scott Knaster

Friday, 15 April 2011
Facebook StumbleUpon Twitter Google+ Pin It


This post is by Scott Knaster of Google Developer Relations. Scott works on technical docs at Google and is editor of this very blog. Scott is a fan of baseball and hockey, but finds it challenging when their seasons overlap.

It’s been a very light posting week here on the Google Code Blog. While our author community was focused on other work this week, I picked out a few items you might have missed.

If you use the URL shortener, you might be interested in new features that were added this week, including automatically selecting newly created short URLs so you can copy them more easily. If you create a lot of URLs, and you use Chrome, check out this handy Chrome extension that makes short URL creation extremely easy. Or, write your own code using our Google URL Shortener API.

Here’s one especially for my fellow writers. Google Docs now does pagination, which enables some related improvements too. This is useful when writing user’s guides, school papers, or other documents that might have to be printed. Just last week I was working on a doc and wishing for this feature, and now here it is, proving the old adage “Wishing makes it so”.

On a more serious note, it’s now been more than a month since a devastating earthquake and tsunami struck Japan. Here’s an update on crisis response and relief efforts, and a way you can help simply by posting messages of support for the people of Japan.

Finally, I want to share the coolest hack I saw all week: a wedding invitation that includes a paper record and player. Beautiful!

Google APIs Python Library goes to Beta

This post is by Anton Lopyrev and Joe Gregorio.
Anton Lopyrev is an Associate Product Manager for Google APIs Infrastructure and was previously a software engineer on Street View. He is a computer graphics enthusiast who is also passionate about product design.

Joe Gregorio is a Software Engineer. In the past four years at Google he's worked on APIs, then Google App Engine, then Google Wave, and now has come full circle and is back working on APIs. -scottk

Over the last several months we have launched a number of tools, such as the Google APIs Explorer and the Google APIs Console, that help you explore Google APIs based on our brand new API infrastructure and manage your API access directly in your browser. However, most of the day-to-day usage of the APIs is still via client libraries in various programming languages.

Today, we are announcing a major milestone for one of the Google APIs client libraries. The Google APIs Client Library for Python has officially reached Beta. This means that we're comfortable enough with the stability and features of the library that we'd like you to start building real production applications on top of it and send us your feedback. Client libraries in other languages are soon to follow.

If you are interested in getting more familiar with our new client libraries, we hope to see you at the “Introduction to Google APIs” lecture at I/O Bootcamp and the “Life of a Google API Developer” session at Google I/O, where you can chat with the developers of the libraries face-to-face.

Friday, 8 April 2011
Facebook StumbleUpon Twitter Google+ Pin It


This post is by Scott Knaster of Google Developer Relations. Scott works on technical docs at Google and is editor of this very blog. A Silicon Valley veteran, Scott enjoys listening to music, spending time with his family, and writing about himself in the third person.

If you’ve ever tried to make a big announcement on a Friday, you might have discovered that lots of people aren’t paying attention at the end of the work week. Like many organizations and blogs (although certainly not all), we’ve generally avoided publishing posts on Fridays. So what’s going on here?

Basically, I thought it would be fun to use Friday for publishing posts that are somewhat lighter in tone than our usual fare. After all, it’s Friday, and we don’t want to bum anybody out. I’m calling it a Fridaygram, because it’s always going to be on Friday (although not every Friday, I’m sure), and ‑gram because that means “something written or recorded”, plus it has a nice retro feel.

(For some reason I find myself thinking about Rebecca Black right now.)

Fridaygrams might include a look back at the week’s previous posts; maybe a couple of interesting curated links; possibly something new and interesting to geek out on over the weekend. We’ll see how it goes.

This week, the big news around here has been I/O Live. In case you missed the announcement yesterday, we’re going to livestream the keynotes as usual, but way cooler than that, we’re also livestreaming Android and Chrome sessions, with real-time captions on the streams. We also showcased some amazing Last Call for Google I/O contest winners and wrote about a test suite for web-based rich text editors.

And because you've read this far, here's a tip on something you can try: on your mobile phone, go to the web browser and do a Google search for tilt. Have fun with that one, share it with your friends, and thanks for reading.

Thursday, 7 April 2011
Facebook StumbleUpon Twitter Google+ Pin It

Bringing Google I/O direct to you with I/O Live

This post is by Monica Tran of the Google I/O Team. In the past four years, Monica has been around the world, working as a Product Marketing Manager in Mountain View, London, and Tokyo. But if you've been reading these little bios (and I hope you have) you knew that already from Monica's previous post! -scottk

(Cross-posted with the Official Google Blog.)

After Google I/O sold out in 59 minutes, we gave ourselves a challenge: bring I/O 2011 to as many developers as we could, even those who didn't have tickets to Moscone Center. So for those of you not joining us in San Francisco or at one of our I/O Extended viewing parties, visit on May 10-11 from the comforts of your own home, office or anywhere you have a reliable Internet connection for I/O Live.

I/O Live will bring all of the excitement at Moscone Center to our website, where the keynotes, sessions and Developer Sandbox will come to life for audiences all over the world. Starting on May 10, the Google I/O homepage will become the I/O Live dashboard, where you can:
  • Watch livestream video feeds from our two largest session rooms from 9:00 a.m PDT to 6:00 p.m. PDT (16:00 to 01:00 UTC) during both days of the conference. This will include streaming of the keynotes, as in years past, as well as—new for 2011—the addition of sessions from Android and Chrome. We’ll also aim to post HD video recordings from sessions that are not livestreamed within 24 hours.
  • Read captions from the livestreamed sessions in real-time. Plus, to make sure all our content is accessible, all remaining videos will also be captioned. For international developers, captions will be machine translated to all languages that are supported by Google Translate.
  • Be one of the first to know by getting your news direct from the source. The latest announcements and news will be added to our I/O Live dashboard in real-time.
  • Submit your questions to our Sandbox developers. We'll post answers for the questions with the most votes.
In the coming weeks, we’ll update our Sessions and Sandbox pages with all the relevant information you’ll need to participate in I/O Live. In the meantime, visit our temporary I/O Live page, where you can get our new HTML5 badge to display on your website and let us know that you’ll be watching on May 10th and 11th.

This year is slated to be our largest Google I/O event to date. So whether you’re joining us in San Francisco, from an I/O Extended event, or even from the comforts of your own Shangri-La, we’re looking forward to seeing you at 9 a.m. PDT (16:00 UTC) on May 10 as we count down to 00:00:00:00 and I/O Live.

Tuesday, 5 April 2011
Facebook StumbleUpon Twitter Google+ Pin It

And the glory goes to...Last Call for Google I/O winners

This post is by Monica Tran of the Google I/O Team. In the past four years, Monica has been around the world, working as a Product Marketing Manager in Mountain View, London, and Tokyo. Now that she's come full circle to Developer Marketing, she is focused primarily on Google I/O and our international Developer Days. -scottk

It seems like only yesterday that we announced our Last Call for Google I/O contest. We’ve been keeping busy, judging Round 2 submissions for all 10 of our challenges. The winners have been notified via email and will receive a pass to this year’s sold-out Google I/O. Also, all of the Round 1 answers, as well as Round 2 prompts have been posted to the contest site.

We were really impressed with the quality of the submissions--especially with less than 24 hours to turn the code around! Check out screenshots of some of the winning entries below, along with notes from members of each Google Developer Relations group, and stay tuned for more surprises from the I/O team.


Judging was easy for the Android challenge, because our first run through the apps produced a total of exactly 10 places where the reviewer said “Nice!”. Above you see a screenshot of the “Party mode” in Charles Vaughn’s “Bounce Clock”. Read about the details on our Android Developers Blog.

- Tim Bray, Android Developer Advocate


(Click a doodle to go to its site and interact.)

We received a lot of nifty doodles and it was tough to pick only ten winners. Some of the particularly fun doodles were interactive or involved a game of some sort (like Pong, or Simon with the Chrome logo). We definitely appreciated being able to view the source code of the web page to see how developers took advantage of the latest HTML, CSS, and JS technologies.

- Jeffrey Chang, Chrome Product Manager


(Click a screen shot to play a game.)

Congratulations to everyone who knew the Konami code and somehow managed to recall that Kuribo’s Shoe is only found on one stage of World Five in Super Mario Bros. 3...and after remembering all that, were still able to write a game in only 24 hours. Apparently playing video games as a kid doesn’t rot your brain as much as our moms said it would.

Almost all of our submissions were fun, technically impressive, or both. The judges were video game industry veterans, so we weren’t wowed by flashy graphics alone. We tried to reward a balance of fun gameplay and technical prowess. Some of the games were actually pretty addictive!

- Ian Lewis, Games Developer Advocate


We saw some great submissions that put the new iframe Player API through its paces! The winning submissions offered a mix of cross-browser compatibility, stylish user interface, and the ability to reuse the player for arbitrary sequences anywhere on the web.

- Jeffrey Posnick, YouTube Developer Advocate


Our Google Apps challenge was built around Google Apps Script, a JavaScript cloud scripting language that allows developers to automate tasks across Google products and interact with 3rd-party APIs. In round 1, we asked contestants to find the median stock price of stock symbols. Round 2 was a fairly open challenge, and the winning submissions performed tasks such as predicting future traffic accidents on Google Maps, producing a daily meeting agenda using Google Calendar and LinkedIn, and sharing Flickr pictures via e-mail to friends and family.

- Ryan Boyd, Google Apps Developer Advocate


We enjoyed seeing how much the ten top entries were able to achieve in such a short time in developing a caption rating app for YouTube (at least one dedicated tweeter pulled an all-nighter). Our top picks really impressed us with the accessibility and polish of their UI. All of them have TalkBack speech support through the Android Accessibility API. Most of the winners have already published and open sourced their work. If these apps inspire you, take a look at the source and contribute!

- Naomi Black, Accessibility Technical Program Manager


They say that great minds think alike, and in the case of Google Commerce, our developers created similar mashups. A simple store based on Google Product Search and Google Checkout could be a powerful tool for mom and pop shops. We hope our developers had fun learning about the commerce products that Google offers.

- Ossama Alami, Commerce/Geo Developer Relations


We asked developers to create a mobile web application to discover interesting walks around San Francisco. We had some really impressive entries, especially given they were developed in a very short timeframe.

- Ossama Alami, Commerce/Geo Developer Relations

Google Web Toolkit (GWT)

We were very impressed with the creativity and performance of the I/O countdown entries. All of the submissions were great examples of what is possible with GWT and HTML5/CSS3. It was an extremely tight competition that came down to tough decisions based on originality, visual appeal, and the size of the resulting JavaScript.

- Chris Ramsdale, GWT/Developer Tools Program Engineer

App Engine

Developers submitted a simple Fibonacci web app in Round 1, where the key was to demonstrate that you correctly handled bad input. We were amazed at the apps that were submitted for Round 2, where we asked developers to create an interesting app using one or more of several App Engine APIs. From making book recommendations to visualizing author impact on PubMed (a favorite of mine, my wife being an academic in medicine), we found many apps useful, well designed, and often quite elaborate.

- Patrick Chanezon, App Engine Developer Relations

Congratulations from the entire Google I/O team to the winners of all the challenges. The bar was quite high and even if you didn’t win, we hope you learned something while building your applications. We encourage you to hone your skills for challenges to come!

Monday, 4 April 2011
Facebook StumbleUpon Twitter Google+ Pin It

A new test suite for rich text editing

This post is by Roland Steiner of the Chrome Team. Roland works mainly on layout and rendering for Chrome and WebKit. An Austrian native, Roland has ventured far and made Tokyo his second home. -scottk

Many web applications allow users not just to edit plain text, but also to embellish it – making it bold or underlined, adding bulleted lists or images. For example, think of online document or blog editors, or rich e-mail apps. JavaScript provides various APIs you can use to implement these apps.

Unfortunately, while these APIs are largely defined the same in modern browsers, the results often differ. To document the current state of all this, we have set up a new rich text editing test suite as part of the larger browserscope framework.

Let’s look at how a region of text, such as a <div>, can be marked as editable by adding the contenteditable attribute:
<div contenteditable="true"> ...some content... </div>
You can then manipulate the content with simple calls:
document.execCommand("formatting command", showUI, parameter)
For example, you can set the color of the selected text to red with this call:
document.execCommand("forecolor", false, "red")
Although this command works well on most browsers, different browsers implement different subsets of formatting commands, and even common commands often produce varying HTML structures.

There are other APIs that affect selection and cursor movement, or allow querying of the current state, and those, too, are often implemented differently.

Our new test suite tries to capture all currently implemented commands and APIs, and runs them on varying initial HTML content and within various containers. The suite already contains well over 1,000 tests.

We don’t want to stop there. We intend to grow the suite and incorporate external feedback and suggestions so we can arrive at a common set of editing functions. We hope this can then serve as a common reference, not only for browser implementers, but also for web developers.

To achieve this goal, we would like input from anyone interested in this topic, including those with past complaints about bugs and incompatibilities in this area.

For suggestions, criticism, and general discussion on the suite and tests, please send feedback to the browserscope mailing list at

Friday, 1 April 2011
Facebook StumbleUpon Twitter Google+ Pin It

Sessions updated for Google I/O 2011!

This post is by Monica Tran. Monica comes to Google by way of the Developer Marketing team, primarily focused on Google I/O and our international Developer Days. As it is written in To Kill a Mockingbird, "Thus you'll come to know Monica whose head teemed with eccentric plans, strange longings, and quaint fancies." – scottk

Monica Tran in typical attire
From our Last Call for Google I/O contest to I/O Extended viewing parties all over the world, we’re super duper extra excited to bring you even more surprises at Google I/O in 2011. Starting this week and counting down to May 10, we’ll be bringing you the latest on Way After Hours, the Developer Sandstorm, Android for Goodness Sake, I/O It’s Alive and a massive number of other things with cool names.

To kick off April, we’ve added NEW! sessions, covering web technologies of the future. We think this new lineup of speakers, tracks, and sessions will arm you with the tools you need to become tomorrow’s innovators and pioneers of the Internet revolution. Check out the Google I/O page and hit our guestbook to let us know what you think.

For those of you unable to join us in person on May 10 - 11, we will be harnessing the power of the interwebs to bring you real-time video footage of the keynotes and recorded videos of all sessions. Viva le web-volution!

Please pardon our dust--the site is currently under construction and you might find it acting up. We promise to get it fixed by tomorrow.