I/O 2009
27 announcements tracked. Reality Score: 41% shipped substantially as promised.
Shipped 9
Android 'Donut' preview (Android 1.6)
Donut previewed on stage with universal Quick Search Box across contacts/apps/web, a new text-to-speech API, CDMA support, and multi-screen-resolution support. Limited-edition Donut devices distributed to attendees.
Android 1.6 Donut shipped September 15, 2009 with all promised features and added VPN/802.1x support and a redesigned Android Market.
Long out of support but delivered exactly as previewed.
Android Developer Challenge 2 (ADC 2)
Second Android Developer Challenge announced at I/O with prizes across ten categories, submissions through August, and user votes as part of judging — total prize pool around $2M.
Submissions closed August 31, 2009; winners announced November 30, 2009 (SweetDreams, What the Doodle!?, WaveSecure). Google then quietly retired the Developer Challenge format and never ran ADC 3.
Delivered as promised, but Google moved on from the contest format afterwards.
Android multiple-screen-resolution framework
Donut would add framework-level support for QVGA, HVGA, and WVGA resolutions, letting one APK adapt to many screens — necessary precondition for non-G1-class hardware.
Shipped in Android 1.6 Donut in September 2009. Multi-density support became one of the defining strengths of Android and is still core to the platform.
Foundational, still in every Android release.
Android Text-to-Speech API
New open-source multi-lingual TTS engine and API in Android Donut, demoed for navigation and accessibility. Promised support for multiple languages and voices.
Shipped in Android 1.6 Donut in September 2009 and has been part of every Android release since.
App Engine Cron Service
Built-in cron-style scheduled task service for App Engine apps, allowing developers to run periodic background jobs (daily reports, backups, etc.) directly from cron.yaml.
Shipped with App Engine 1.2.x in 2009 and is still part of App Engine standard environment today across both legacy and second-generation runtimes.
App Engine for Java
Java became the second App Engine language (after Python), opening for public sign-ups at I/O after a limited 10,000-developer early-access phase. Google touted 80,000 apps already on App Engine and partnerships with Oracle, IBM, ThoughtWorks and others.
Shipped at I/O 2009. App Engine for Java has remained continuously supported and is now in its third major Java runtime generation (Java 8 → Java 11 → Java 17/21). One of the longest-lived I/O 2009 announcements.
Still in active production use 17 years later.
App Engine Task Queue API
New Task Queue API for offline background processing — schedule work to run asynchronously without managing threads or polling. Presented at I/O 2009; Python-only at launch with Java promised soon.
Shipped in App Engine 1.2.3 in June 2009 as a Labs feature, Java support followed. Still in production today; Google later released the modernized 'Cloud Tasks' service in 2018 as a successor for newer App Engine runtimes.
Still works, but newer services are pushed toward Cloud Tasks.
HTC Magic ('Google Ion') giveaway
Every I/O 2009 attendee received a free unlocked HTC Magic (branded 'Google Ion' with conference logo) plus 30 days of T-Mobile voice and 3G data. The kickoff of Google's now-famous developer-device giveaway tradition.
Delivered at the conference; the HTC Magic was one of the early Android touchscreen flagships. Phone is long obsolete but the giveaway shipped exactly as advertised.
Pure hardware giveaway — nothing to scale back.
HTML5 Web Workers
Background-thread JavaScript execution demoed with motion detection, pitched as solving the perennial 'browser frozen' problem.
Web Workers shipped across all browsers in 2009-2010 and are now standard. Service Workers (a more specialized successor) shipped in 2014+. Survived and thrived.
Genuine web platform success.
Shipped late 2
Chrome OS (announced post-I/O on the back of HTML5 push)
Vic Gundotra's I/O 2009 'the web has won' framing built up to Chrome OS, formally announced July 7, 2009, then demoed by Sundar Pichai on November 19, 2009 — promising netbooks that 'boot up like a TV' with all apps and data in the cloud, available in second half of 2010.
Missed the 'second half of 2010' deadline. First device (CR-48) shipped as a free pilot in December 2010; first consumer Chromebooks (Acer and Samsung) shipped June 15, 2011 — about a year late. Chromebooks went on to become a major presence in education and a real business.
Roughly 12 months past promised timing, but became one of Google's most durable platforms.
YouTube via HTML5 <video> tag
Vic Gundotra demoed YouTube running 'entirely using the video tag' as proof that Flash was on its way out and HTML5 could match it.
YouTube launched an HTML5 video trial in January 2010 and made HTML5 the default for desktop browsers in January 2015, finally dropping Flash. Took 5.5 years from the I/O demo to actually become the default.
The demo was real; broad default rollout took years.
Scaled back 3
Google Web Toolkit 2.0 preview (code splitting, Speed Tracer, in-browser dev mode)
Previewed GWT 2.0 features at I/O: GWT.runAsync() developer-guided code splitting, in-browser development mode (no more separate hosted-mode browser), UiBinder templating, and the Speed Tracer Chrome performance tool.
GWT 2.0 shipped December 8, 2009 with all promised features. Google deprecated GWT internally by ~2022 and stopped using it for new products, but the project lives on as a community-driven open source effort — GWT 2.11 (Jan 2024) and 2.12 (Oct 2024) continue to ship.
Shipped on time but Google itself effectively abandoned GWT a decade later.
HTML5 'Five Things' push (Canvas, Video, Geolocation, App Cache/DB, Web Workers)
Vic Gundotra declared 'the web has won' and laid out five HTML5 capabilities that would replace native apps: Canvas, the <video> tag, Geolocation, local Database + App Cache for offline, and Web Workers for background threads. YouTube was demoed running entirely via the <video> tag.
All five capabilities shipped across browsers between 2009 and 2012 and are now foundational. Web SQL Database (the demo's offline storage) was deprecated in favor of IndexedDB, and App Cache was deprecated and removed from Chrome in 2021 in favor of Service Workers. The broader bet — that HTML5 would make native apps obsolete — clearly lost to the App Store / Play Store ecosystem.
The individual APIs shipped, but the 'web replaces native' framing did not pan out.
HTML5 Geolocation + Google Maps 'My Location' button
Live demo of W3C Geolocation API using cell-tower/Wi-Fi positioning, with a new 'My Location' blue dot in Google Maps and Google Latitude running in mobile Safari on iPhone — pitched as feature parity with native apps.
Geolocation API shipped across browsers in 2009-2010. The Maps My Location feature shipped and lives on inside Google Maps. Latitude itself — the headline demo — was discontinued August 9, 2013 and its iPhone web app was removed.
The API survived; the headline product (Latitude) was killed.
Killed 13
Google AJAX APIs Playground
Interactive playground (originally launched January 2009 and showcased at I/O) for trying Google's JavaScript APIs — Maps, Search, Feeds, Calendar, Visualization, Language, Blogger, Libraries, Earth — with 170+ editable samples.
Live throughout the early 2010s. Quietly retired after most underlying AJAX APIs were themselves deprecated (Search API, Feeds API, Language API all killed by 2016). The standalone Playground site no longer exists.
Died with the AJAX APIs it was built to demo.
Google Earth API / browser plugin
NPAPI-based browser plugin and JavaScript API for embedding interactive 3D Earth in web pages, heavily featured at I/O 2009 mashup sessions.
Shipped, but tied to NPAPI which Chrome killed in 2015. Google announced Earth API deprecation December 12, 2014 with shutdown set for December 12, 2015; a temporary reprieve pushed final shutdown to January 11, 2017. Earth Plugin usage had collapsed from 9.1% of Chrome users (Oct 2013) to 0.1% (Oct 2014).
Died with NPAPI.
Google Friend Connect Server API
Server-side API extending Google Friend Connect — Google's social-overlay-for-any-website product — beyond JavaScript gadgets. Pitched as letting any site add social/comments/profiles using OpenSocial.
Friend Connect shipped, but never overtook Facebook's social plugins. Google announced retirement on November 23, 2011; turned off for non-Blogger sites March 1, 2012; finally removed from Blogger on January 11, 2016.
Replaced by Google+ (which itself died in 2019).
Google Latitude for iPhone (mobile web)
Latitude demoed running in mobile Safari on iPhone — using HTML5 Geolocation — because Apple had blocked a native Latitude app. Positioned as proof that the mobile web could match native.
Mobile web Latitude shipped in mid-2009 and was joined by a native iOS app in December 2010. Latitude was discontinued entirely on August 9, 2013, including the iPhone version and the API.
Folded into Google+ briefly, then permanently killed; location-sharing reappeared inside Google Maps in 2017.
Google Maps API for Flash
Continued investment in Maps API for Flash highlighted at I/O — used heavily for ActionScript developers and AIR offline maps. Promoted alongside the JS Maps API.
Officially deprecated September 2, 2011 with a 3-year deprecation window. Maps API for Flash was fully turned off on September 2, 2014.
Killed alongside the broader collapse of Flash.
Google Plugin for Eclipse
An Eclipse plugin tying GWT and App Engine development together with deployment wizards, JSNI syntax highlighting, JUnit integration, and one-click deploy to App Engine. Released alongside App Engine for Java.
Shipped April 7, 2009 (pre-I/O). Open-sourced in November 2011. Google eventually stopped maintaining it; community fork continues at gwt-plugins.github.io but mainstream support is effectively over.
Last Google-supported release predates 2018; community fork only.
Google Wave
Lars and Jens Rasmussen's audacious 'what email would look like if invented today' platform — merging email, IM, wikis, real-time collaborative editing, and social — demoed live on May 28. Positioned as a potential replacement for the email protocol itself, with an open federation protocol over XMPP so anyone could run a Wave server.
Public preview to 100,000 users in September 2009; general availability May 19, 2010. Google announced discontinuation on August 4, 2010 — just 14 months after the I/O demo — citing 'lack of user adoption.' Waves became read-only January 2012 and were deleted in April 2012. Donated to Apache as 'Wave in a Box,' which never reached a full release and was retired by Apache on January 15, 2018.
The keynote demo that became a generation's cautionary tale about overhyped Google launches.
Google Wave Extensions: Robots & Gadgets API
Two extension types announced for Wave: server-side Robots (automated participants) and client-side Gadgets (OpenSocial-based interactive widgets inside waves). Pitched as a 'Wave app store.'
Both APIs shipped and 150+ extensions were built. All died when Wave was shut down in April 2012.
Whole platform died with Wave itself.
Google Wave Federation Protocol
Open XMPP-extension protocol so any organization could run its own Wave server and federate with Google's, framed as the next-generation email protocol. Prototype Java server released under Apache 2.0 in July 2009.
Federation never reached production maturity. After Google killed Wave in 2010, the protocol moved to Apache as part of Wave in a Box. Apache Wave never made a 1.0 release, sat at 0.4-rc10 for years, and was officially retired by the Apache Software Foundation on January 15, 2018.
Never delivered on the promise of being an open replacement for email.
Google Web Elements
Copy-paste embeddable widgets for Google products — Maps, News, Calendar, Custom Search, Presentations, Spreadsheets, YouTube News, and 'Google Conversation' (a Friend Connect-powered comments widget). Pitched as 'embed any Google product as easily as a YouTube video,' available at google.com/webelements.
Launched May 27, 2009 with elements expanded through 2009 (Translate, Reader, theming). The product was quietly de-emphasized — most Web Elements stopped working after their underlying services were killed (Reader 2013, Friend Connect 2012, the standalone Web Elements site itself was retired). Today only Maps, YouTube, Calendar, and Custom Search 'embed' equivalents remain, integrated into those individual products.
No formal Web Elements shutdown date — died slowly as its component products were killed.
HTML5 Application Cache (offline web apps)
Demoed Gmail running offline on Android using HTML5 App Cache + Web SQL Database as proof web apps could match native for offline use.
App Cache shipped across browsers but was widely panned as a footgun, deprecated by the W3C, and removed from Chrome in early 2021. Replaced by Service Workers. Web SQL Database (the demo's storage layer) was also deprecated, replaced by IndexedDB.
The promised future of offline web (App Cache + Web SQL) was a dead end; Service Workers and IndexedDB replaced both.
O3D 3D-in-browser plugin
Google's NPAPI browser plugin (announced April 2009 and featured at I/O) for hardware-accelerated 3D graphics in the browser via a JavaScript scene-graph API. Pitched as bridging desktop 3D apps and the web.
On May 7, 2010 — less than a year after I/O — Google announced O3D would no longer be developed as a plugin and would instead become a JavaScript library on top of WebGL. The plugin was abandoned; the JS-on-WebGL library went nowhere either.
Lost to WebGL.
Speed Tracer (Chrome performance profiler)
A Chrome extension shipped with GWT 2.0 that visualized low-level browser instrumentation (parsing, layout, paint, JS, DOM events, XHRs) to find web app performance bottlenecks.
Released December 8, 2009. Quietly abandoned within a few years — superseded by Chrome DevTools' built-in Timeline/Performance panel. The Google Code project is archived and the extension no longer works on modern Chrome.
Functionality absorbed into Chrome DevTools.