This year's Google I/O was one to remember, with demos and presentations that showcased the power of HTML5 for consumers and businesses, as well as a complete proliferation of Android apps and devices (some of which ended up in the hands of attendees).

Day one included a keynote presentation by our own Bruce Johnson and SpringSource's Ben Alex. Here they announced the Google and VMware partnership which makes it easy for developers to harness the power of Spring Roo and GWT to build rich enterprise web apps that are cloud portable. As part of this announcement, the GWT team released GWT 2.1 M1, which not only includes VMware integration, but also Data Presentation Widgets and an MVP Framework.

Along with the great keynotes, there were plenty of in-depth GWT sessions. In the event that you missed them, here's a recap:
  • Measure in milliseconds redux: Meet Speed Tracer - Kelly Norton is back for round two to demonstrate what milliseconds of latency means to end-users, as well as how to identify the sources of latency within your app using Speed Tracer.

  • Faster apps faster: Optimizing apps with the GWT Compiler - Have you ever wondered how you can speed up your GWT compiles? If so, follow along with Ray Cromwell as he delves into this topic, as well as other tips and tricks that you can use to streamline development with GWT.

  • Architecting for performance with GWT - Last year we announced Google Wave, a cutting edge web app that introduces a new way of collaborating and communicating. This year Wave team lead Adam Shuck, and GWT UI guru Joel Webber share with everyone the optimizations both teams use when building GWT-based web apps.

  • GWT Linkers target HTML5 Web Workers, Chrome Extensions, and more - GWT has some extremely interesting technology under the hood, and Matt Mastracci, CTO of dotspots, knows this as well as anyone else. For this year's I/O he provides an overview of GWT linkers, as well as how they created a one that turns a GWT module into an HTML5 Web Worker, and one that generates an HTML App Cache manifest automatically.

  • GWT's UI overhaul: UiBinder, ClientBundle, and Layout Panels - GWT 2.0 shipped with some major UI enhancements that make it very easy to speed up your app, decrease load time, and control layout. In this session, Ray Ryan and Joel Webber show you how these new features interact with one another, and how you can use them to create the most optimal web app.

  • GWT + HTML5 can do what?! If you missed the YouTube video of Quake II running in the browser, this session not only replays it, but goes into great detail as to how the three Googlers actually made it happen using HTML5 features such as WebGL and WebSockets.

  • GWT testing best practices - In 2009, Ray Ryan gave a talk on how to architect a GWT app using the MVP design pattern. This year, Wave's Daniel Danilatos follows-up on Ray's talk, with a detailed overview of how to remove the pain of testing GWT apps using the MVP architecture.

  • Architecting GWT applications for production at Google - If you haven't noticed, it's required that at least one of Ray's talks has the word "Architecting" in it. The good news is that his talks live up to their titles, and this session is no exception. Not only does Ray evolve the concepts discussed in his 2009, "Best Practices for Architecting GWT Apps", he dives into some of the upcoming GWT 2.1 features, and invites Ben Alex, from VMware, on stage to talk about the integration between Spring Roo and GWT.
In addition to the linked session titles where you'll find the videos and slides, you can also find all videos in this YouTube playlist for GWT I/O 2010 sessions.

It was fantastic meeting everyone out at I/O, and we hope that it was as exciting and educational for you as it was for us. As always, stay on top of the latest GWT 2.1 release progress on the GWT Blog, and be on the lookout for posts from other I/O tracks coming soon!