Spent the morning and part of the afternoon at Google Developer Day.
Google sure knows how to throw a party! Plenty of free food and drinks, a pool table, bean bags – you get the picture
On a more serious note, they made several new product announcements – Google Gears, Google Mashup Editor and a new version of Google Web Toolkit.
Gears is an open source project (BSD license) done in partnership with Adobe’s Apollo. Gears has three components to it – a database (SQLite)Â for offline data storage/access, a local server for storing and serving pages/scripts while offline and a utility to create worker thread pools (for any heavy computes on the client – not sure a lot of people are going to need this unless they are doing serious analytics – I’m sure Google is planning some use for it). Google Reader is the first Google app to be Gears enabled – the guy demoing the app wanted to show how it works when disconnected and had a lot of trouble getting off the network! (he unplugged his network cable and his wireless came on). I think this is really a sign of things to come. I personally believe that putting a lot of effort in to support disconnected access is a temporary thing and a likely waste of resources. I believe that thinking of interesting possibilities in a continuously connected world is more worthwhile …
Google Mashup Editor was not so impressive – at least with the short demo I saw. To be fair, I should check it out before spouting, but hey, that hasn’t stopped me before :-)Â Seemed like a bunch of HTML/XML hacking required – lots of sleight of hand involved in the demo to make it look easy – the guy clicked on links titled step 1/2/3 and voila! more HTML/XML appeared in the editor pane …
I’ve never been a real fan of Google Web Toolkit. I tried it sometime last year and it sucked! There was a lot of stupidity with carefully naming interfaces/classes/methods a certain way to make sure everything linedup right. The programming model mimicked the classic GUI development model which is pretty outdated – I like using markup for describing UIs – to me its the single best thing about XML. Looks like a million people checked it out over the past year -Â no mention of actual uses …
In the afternoon, there was a very interesting talk about Google’s compute infrastructure. Google apparently uses the cheapest hardware it can lay its hands on and uses lots and lots of it. They have several layers of abstraction to make it easy for their programmers to create applications over this massive hardware infrastructure. They seem to have optimized for a class of computing problems – very large scale query/analysis on entities that are essentially bags of attributes. GFS is their lowest level distributed storage engine. BigTable provides a SQL-like abstraction over GFS. MapReduce allows programmers to collect attributes of interest from a collection of entities in the first phase (Map) and then do analysis on the values of the attributes in a second phase (Reduce).
Attendance was quite heavy – 1500 at the San Jose Convention Center venue and 5000 worldwide. I bailed early, the event was scheduled to go on until late in the evening, ending with a dinner at Google’s Mountain View headquarters. I’m sure the event will be bigger next year with invited talks as well (this year was Google only). Looking forward to it …