ucantblamem

Google Developer Day 2007

1st Jun 2007

This past Thursday I was fortunate enough to be thrown a couple of plane tickets to Sydney by my boss, for the purpose of attending the 2007 Google Developer Day. To be honest I wasn’t quite sure why they were keen to send me, SM2 doesn’t necessary incorporate a lot of Google technology into its’ products. That said, I’ve long been a fan of what Google produce; simple applications with plenty of clever front-end enhancement and data-aggregation utilities (i.e. API’s), so it’s no surprise that I was pretty excited to fly down and get my geek on.

The venue was really cool and colourful, like most Google events, with three massive partitioned areas for general mingling, eating and keynote’s. Plasma screens were everywhere, showing off a lot of the Map’s mashups and even a couple scrolling the latest search terms. In the back corner of the main area was a bloggers lounge, packed with beanbags, couches and exercise balls – all in primary colours of course.

Food and drinks were always available, but lunch was especially impressive, with four tents setup offering different cuisine from around the world. To top it all off, free WiFi was on offer all day, right round the venue. It did get quite slow at certain times during the day, but there were a few blissfully fast moments.

Down to business

Clearly Google know how to put on a good show, but the focal point of the whole event was the keynote speakers. When I first looked at the program I wasn’t really sure that I would get a whole lot out of the event. The GWT has interested me a little in the past and I was keen to see it in use (even though I’m not incredibly familiar with Java), but other than that I was struggling to see the value in attending.

From the time that James O’Loghlin (from the New Inventors show – MC for this event) walked on stage to the closing words, the entire crowd was pretty awe-struck by what these guys have been working on. We were actually very lucky to be the first GDD this year and were privelaged enough to see two new Google products before the rest of the world.

The one product that impressed me the most was Google Gears. The idea behind this little gem is to bridge the gap between the web and the desktop, by giving developers a tool for enabling offline editing of data. In a super-simplified nutshell Gears is a plugin available for all major browsers which gives developers a local server and database for storing data. On top of that it has a synchronisation mechanism which polls the live application periodically (if it’s available) and sync’s up the data. The database is based on SQLite which is a feature-packed and tiny DB (weighs in at a mere 350Kb). In fact, the entire plugin is around 700Kb, which is impressively small for what it does.

There are two issues with it though… One, it’s only going to work for AJAX-based applications as the entire implementation requires JavaScript. Honestly, I don’t see this as a huge issue personally, but I know some of the more zealous standardistas will complain. Two, it does (at this stage) require the end-user to download a plugin. For the more technology savvy this won’t be an issue, Firefox for instance will just display its’ usual notification at the top of the screen much the way it does when you get to a page that requires flash and you don’t have it installed yet. For the IT illiterate this could be a problem and will likely look to them as a virus or some such. For that reason I think it’s important to impress upon developers using Gears to build fall-backs into their application so they don’t lose users.

Gears was by far the most impressive thing I’ve seen in a while and it is certainly going to leverage online applications in a very cool way. But, I was also rather impressed by the GWT. The Google Web Toolkit allows developers to write an entire application in Java, which once compiled, produces an entire application in a single JavaScript file which they can embed in a page ready to go. The fact that they can do that is impressive enough, but I loved the idea that developers, who often have little to no idea about front-end stuff, can produce fully-functioning AJAX applications without having to worry about browser querks and incompatibilities. The kit itself also comes with a custom browser (using the gecko, web-kit or IE rendering engines, depending on which platform you’re developing on) that you use during development, which compiles your Java on the fly, eliminating the need to re-compile every time you make a change.

The downside, of course, is that any application developed with GWT requires JavaScript to be enabled for a user to see ANYTHING at all. Not to mention that you need to know Java and the numerous libraries that are provided in the kit.

Regardless of the lack of progressive enhancement and graceful degredation, it is a very impressive piece of tech. One of the other areas that it really shines is speed, due to its’ size. Where many developers would include the entire Prototype and Scriptaculous libraries for instance, GWT includes only what it absolutely needs, making it very small and agile. Of course, I immediately thought of MooTools and how you can simply package up the classes you need, but it’s just not quite as impressive, as GWT figures out which code to include for you.

The other keynotes, which looked at things like Gadgets (for iGoogle), Maplets (which are new gadgets for Google Maps), Gdata (which is a unified system for building API’s using REST/Atom) and KML (the markup language behind Google Earth) were all quite interesting. I personally found the KML stuff intriguing, but I can’t really see how I’d ever use it at work. I could see a slim possibility that we may one day need to implement some of the GData stuff, but again, not likely.

One thing I definitely did take away with me was inspiration. Almost every speaker that got up on that stage had a PHD in some obscure field and it clearly showed. The engineers at Google are some pretty smart cookies and I can only hope that a little bit of them rubbed off on me.

The whole day, which for me went from 5:00am to 11:00pm was incredibly long, but well worth the trip. If I was working in any other organisation I would be able to start implementing a lot of what I learnt in our products. Unfortunately for me and SM2, I’m really struggling to see us using any of it at all. Not because we couldn’t or don’t need it, but simply because the framework we use discourages front-end development and emerging technologies.

I really encourage anyone to watch Aaron Boodman’s keynote on Gears or find me in amongst the official photos from the event.

One Response to “Google Developer Day 2007”

  1. Lee Haskings Lee Haskings Says:

    Jealous :(

    The Google Gears setup has been a long time coming and is the last step they needed to finally establish web based applications as a more inviting form of application for all users out there.

Leave a Reply