There were roughly 4,000 attendees, which is impressive considering that the show is only in its third year and doesn't get much publicity. But then again, with the number of products Google has out there, it is bound to draw developers for one reason or another. Attending the conference, you can't help but be impressed with the reach Google has with its product line, from application hosting, to search, to Web toolkit, to geospatial products and many more... That said, there were just a few geospatial presentations and most, if not all, were focused on Google Maps and not Google Earth. Nevertheless, there was enough content for a geospatial person to find it useful and it is also a good opportunity to expand your knowledge of the Google world.
Day 1: HTML 5
The conference kicked off with a keynote speech by Vic Gundotra, vice president of engineering at Google, who presented, along with a number of collaborators, Google's vision of the future of the Web along with what excited them about it. From that presentation, I could extract (based on their comments) a few of the major trends within Google's overall vision. First of all, the Web has won; it is now the platform of choice. Gundotra mentioned that 10 years ago nobody believed that a product from a company called Keyhole (Google Maps) would be able to run purely in a browser...
As for HTML 5, the new standard is seen as the way to improve from Web 2.0 applications to the future. It is currently supported by the latest versions of Chrome, Firefox, Safari and Opera, but not Internet Explorer just yet. Officially it is supported, but there are a lot of shortfalls. Google has identified five "exciting" key points pushing them to go forward with that standard:
- Video tag: This will allow the integration of video in applications, in the same way the image tag currently works.
- Geolocation: Google is working with many partners to integrate, as part of HTML 5, a feature that would locate the browsing user using IP databases, Wi-Fi hotspot information, cell towers and other tools. If this becomes part of the standards, it will be possible to build location-based applications that know the approximate location of the user.
- App cache database: This will let Web applications store user data and navigation information in local databases within the browser, hence enabling the applications to work in an offline mode and synch back with the central application once the machine reconnects to the Web.
As stated previously, the bulk of the geospatial presentations were focused on Google Maps, with very little on Google Earth. It is obvious that use of Google Maps is more widespread and has a much bigger developer community. Of all the presentations on that subject, the one hosted by Pamela Fox (well-known in the maps developer community) and the one given by Susannah Raub were definitely the most interesting.
Fox's talk on performance tips for mashups provided a good overview of the Google Maps product, its limitations and how to work around them. It also very briefly introduced the new version of the Google Maps API, which Raub addressed in her presentation in much more detail. She identified the three main performance problems with mashups:
- Too many markers on the map: It is well-known that above 100 markers, the performance of the map is drastically decreased. This can be circumvented by various methods such as clustering, generating heat maps or using a secondary rendering engine to generate tiles on the server containing the points.
- Polylines or polygons are too complex: The problem is similar to the previous one. The solution to this can also be to use a secondary mapping engine or to use the vector capabilities of the browser (canvas tag or VML for IE). However, these two approaches also come with limitations at some point, depending on the number of nodes in the entities.
The current roadmap for the product is to complete the set of functions to offer the same level of flexibility as version 2.0 of the API. The release cycle for this API will follow Google's mantra: "Release early and often..." At this point, there are no plans to port this new approach to the Flash API. Version 2.0 will live for a while (time unspecified), but all applications will eventually have to be ported to version 3.0.
Day 2: Google Wave
On the second morning, Google introduced its new product, Google Wave. Much has already been said about Google Wave, but it is impossible to talk about this conference without mentioning it. Google Wave is presented as a collaboration and communication platform for the future. This platform is currently in its early form, but essentially the company has conceived it as a way forward for e-mail. The platform will be open source and will let developers build and add extensions to it. This approach, similar to Google Maps, should help to promote wide adoption of the product. Whether this platform will succeed is unknown, but judging from the favorable reaction of the crowd, it has the potential to revolutionize the way we work and collaborate.
Google Wave is entirely built using the Google Web Toolkit and HTML 5. Impressive demos were performed of real-time collaboration between multiple platforms across the Web. One particularly impressive demo had one presenter writing text in English on one screen and the other seeing it being translated into French in real-time on his screen. I have to say that the translation was perfect. It was using a new algorithm that promises to finally deliver on translation, something that has still eluded us despite the number of products and Web applications out there. Here are some interesting high-level features:
- Real-time collaboration on documents, or WAVES as they are called
- Playback of e-mail (or anything else) history
- Everything is embeddable and still fully dynamic and linked to original wave
- Live with mobile devices, as well