Thursday, May 31, 2007

Lars Rasmussen talks about Open Source, Google APIs and GWT

Lars’s talk began with an apology and a thrown-down gauntlet: Lars promised us that he had three things to talk about, each of which could fill the 45 minute slot which he had been allocated: Google and Open Source, Google APIs and Google Web Toolkit. Lars apologised for what may appear to be a rushed talk, and like one of the Iron Chefs wasted no time getting straight down to business with such an ambitious array of dishes to deliver.

First, Google and Open Source. This is a topic close to my own heart, as with many Google Engineers: we are pleased and proud to use open source software from the Linux kernels running on our many servers to the open source libraries we use in our code, to open source IDEs and web browsers on our desktops. We also try to contribute back to the open source community by releasing a lot of our own code as open source: notably Google Gears which was announced today, and Google Web Toolkit. (I’m also a big fan of Guice, our open source dependency injection framework for Java.) There are many reasons for Google to use open source; a couple that Lars mentioned are that it gives us control and freedom from having to deal with third-party vendors when something doesn’t work, and more fundamentally it’s a good fit for Google’s “don’t be evil” culture.

Next, the Google APIs. He told us, “whenever we are making a new product, we are always looking for developer angle” while demonstrating the impressive list of Google APIs already in existence. If not for the Google APIs we would not have such a great crowd of developers here today, and it is an ongoing goal to continue to support this community.

Finally, Lars turned our attention to Google Web Toolkit. Prefacing his appraisal with a disclaimer that he wasn’t part of the team that built GWT and thus had no reason to brag about it, he stated simply “it rocks.” He should know; as he pointed out, he has spent the last three years building one of the most well-known AJAX applications: Google Maps. He explained the problems with “traditional” AJAX: browser incompatibilities, difficulties of managing a team collaborating on scripting, repetitiveness of writing HTML and Javascript by hand. In contrast. GWT lets you write a web front-end in Java which is compiled to Javascript which takes care of browser quirks. And the compiled Javascript is fast. Lars demonstrated the advantages of writing code in a strongly typed language by writing a GWT application live in front of the audience (using the Eclipse IDE) and showing how a typo that wouldn’t be found until runtime in Javascript was immediately found by the Java compiler, and how using an IDE can speed up development over manually editing text files in a plain editor. (I think Steve Yegge might have something to say about that.)

So, three delicious dishes served up by a master of the web development cuisine. I think Lars needn't have worried.

1 comment:

Serdar said...

Are the slides going to be made available post event?