Saturday, February 9, 2008

SV-GTUG Off To A Great Start With Google Web Toolkit (GWT)

The newly formed Silicon Valley Google Technology User Group is off to a great start. Van and I run both the Silicon Valley Web Developer Java User Group and Silicon Valley Google Technology User Group so we decided our first GTUG meeting would be a joint meeting of the two groups.

Bob Vawter from the GWT team spoke. In the past I had always ignored GWT because I felt it odd to write Java to generate JavaScript. I felt it would force UI guys into an environment that was not comfortable. After only a few minutes of the presentation I was sold on GWT. The main selling features that persuaded me were:

  • Using an IDE for JavaScript

  • Compile Time Checking

  • Out of the Box Cross-browser support

  • Small distribution that is browser specific


For a long time I had been wanting to write a comet based chat application. Now I was wanting to try out GWT so I finally got started writing the long overdue comet based chat application. You can try out my chat application for yourself on my website http://javaclimber.com/portal/portal/myportal/Chat. I was amazed how I instantly felt comfortable writing GWT. I have been writing JavaScript for most of my career, but after only a few minutes messing with GWT I found my productivity to write GWT was higher than my productivity to write cross-browser JavaScript. I also have quite a bit of experience with Prototype and JSON while doing side-work for FoxTrax-Online.com. I found GWT had many advantages over Prototype and JSON.

In the past I have done quite a bit of Swing coding, so I think that is why GWT came so natural to me. When you think about it, it is strange to model a web framework around Swing. I didn't mind the Swing like feel, but I wonder how traditional web developers will adapt if they have never written Swing.

The biggest struggle I had with my comet chat application was getting it deployed. The documentation I found didn't have much details on deployment. After much waisted time I finally figured out you needed to define each service as a Servlet in your web.xml. In hosted mode this is not necessary.

Among the audience was Matt Raible author of AppFuse. You can read Matt's blog about the event here.

Overall Bob's presentation was a success for me. I found a new technology to add to my toolkit that I think will increase my productivity. Most of the audience seemed to be inexperienced with GWT. I hope other GWT rookies like myself went out and got their hands wet with GWT.

No comments: