Thursday, May 27, 2010

Lars Rasmussen, Using Google Wave for Collaborative Software Development

Lars Rasmussen, one of the Lead Engineers who started Google Maps, and leading the Google Wave project, spoke with The Bitsource in this exclusive interview.

Please tell The Bitsource’s developers a bit about yourself.

Lars Rasmussen: Sure thing, I’ve worked for Google for about six years. I came to Google in 2004 when they bought a little company, called Where2 Technologies that my brother and I had started and we did mapping software which we turned into Google Maps. I worked on Google maps for 3 years and then three years ago I started working on Google Wave.

Are there software development teams which are using Wave for facilitating and boosting efficiency in the various phases of the software development life cycle?

Lars Rasmussen: Yes, for sure. My own team, of course and there are a couple of teams at Google that use Wave for that exact thing. The Google Web Toolkit Team internally uses Wave for all of their work: tracking of their tasks, testing, processes, design documents, and discussing features.

There’s a story I really like, Google was recently asked to do a partnership with VMWare. Bruce Johnson was talking about this partnership during today’s keynote where they integrated the Google Web Toolkit with Spring Roo, which lets enterprise developers put together enterprise applications very quickly. Bruce was telling me how, when they started working with VMWare, they encouraged them to adopt Wave so that the GWT team and the VMWare team could Wave together. The VMWare team was actually in two other countries, and they all really loved it. It made their work much easier to coordinate in Wave and I spoke to one of the VMware guys who is here today and he is trying to get other people at VMWare to use it internally at VMWare as well.

How would one benefit by extending a continuous integration system such as Hudson or Atlassian Bamboo by integrating that into Google Wave?

Lars Rasmussen: Interesting you should ask. We’re giving a presentation tomorrow about Google Wave in the enterprise, the example I think the presenters for Google Wave and the Enterprise Environment are going to show an integration between Wave and the release system at Google with Robots and Gadgets. Every time you want to do a release, you start a Wave, which you use to do all of the coordination. Throw in a Gadget, and it goes and gets the current state [of the release] from the build system. By combining the two, you get all of the powerful discussion features [of Wave]. And when something goes wrong, something always goes wrong, you have all of the powerful discussion features, plus you have access to a control panel where you can manipulate the process right there.

In regard to Hudson and Bamboo, I don’t know if anyone is working on those particular systems, but I think Wave and development tools in general, there’s a lot of different areas where you can see some really cool integrations.

Also with coding itself. There is a team, I don’t recall they’re name, but they have this great thing where they used the Wave Federation Protocol to make programming collaborative inside of Visual Studio, and I know there’s a couple of folks at Google that are starting, too. We have a code review process, where a junior programmer will write the code and send it over to a senior programmer for review. The way it is currently, it is a serialized process. One person writes the code, they send it over here, it gets reviewed, comments go back, and the first programmer implements the comments, and it goes back for review.

Some of my colleagues are starting to play around with (they haven’t completed it yet), if you put those processes inside Wave it will go from being this very serialized, sometimes quite drawn-out process to being a much shorter and much more collaborative process. The code I write, can sit in a Wave, visible to the reviewer, and instead of sending back comments, they can just edit the code, and maybe even put comments in real-time if were online at the same time, and then I can understand what was done, and we can save ourselves a couple of round-trips.

Read more: The bitsource

Posted via email from jasper22's posterous