Sunday 31 May 2009

Google Wave: A glimpse of the future

At yesterday's I/O conference Google previewed an early version of Google Wave:

What is Google Wave? It's a communications & collaboration tool from the team formerly responsible for Google Maps. They set out to answer the question "What would email look like if it was invented today?".

Waves combines previously separate functionality into a tool that looks seamless and genuinely new. It's includes elements of email, instant messaging, wikis & collaborative document sharing. What exactly is a Wave? Start of by thinking of a wave as a threaded rich media email or instant message conversation. These are a few of the features:
  • Conversations can take place one to one or in groups
  • Combines asynchronous and real-time conversation in one.
  • Anyone in the conversation can comment, or amend, in place, in the stream of the conversation
  • Simply drag and drop documents, pictures etc into your browser to share them with other people
  • Rewind and look back through the conversation history
Wave is more than just another Google App. It's also a platform, and a protocol.
A platform: Google's push right now is to get developers on board. You can embed rich content like interactive surveys. There will be plugins and bots to extend Wave how you want - rich content like an interactive survey, spellcheck, even translation. You can embed Waves in your website. Getting a large crowd of developers enthusiastic is a great way to make your platform the one that succeeds.

A protocol: absolutely crucially, Google will release the protocol specification and the code for client and server as open source. They say they want to see many separate but interoperable wave servers - it won't just be a Google App. A company could implement their own private Wave server which will talk to other Wave servers in the cloud, or at other organisations (just like SMTP today) . When the goal is a big as defining the next version of email, that's essential, and it is why I'm excited about Wave. The functionality looks excellent, but it would do no good at all in an isolated environment. I can have all the clever communications software I want, but it is useless unless the people I need to talk to have it too. I don't want a proprietary unified communications product which only works within my organisation - I want an open, global tool which everyone uses. Google have the resources to develop the tool, and by opening the standard the ensure that anyone who wants to can use it.

Communicationss & collaboration tools are normally seen as an enterprise requirement, but Google are a consumer company at heart. This will help them do groupware properly. JWZ put it crudely but got it right in his 2005 essay, Groupware Bad: The first question a social software developer should ask is "how will this software help my users get laid?". If you prefer, how will it make it easier for them to do what they want to do - meet and communicate? Good groupware solves problems for people, bad groupware tries to solves problems for organisations that no actual users want. Google grok this. They say "Google Wave can make you more productive even when you're having fun!".

What are the implications? Wave is hugely important in its own right and also demonstrates Google's strategy more generally. The implications look terrible for Microsoft:
  • Google often say that they can do anything in a browser you can do in a native desktop application. As they put it, "never underestimate the browser". Wave uses elements from the HTML5 spec, which extends HTML further towards rendering complex applications. It's taken over ten years, but finally the web is becoming the platform.
  • Although the ratified HTML5 spec is some way off, Firefox, Chrome, Safari & Opera already support key parts of it. Internet Explorer doesn't (yet?). If it doesn't, tools like Wave will be compelling enough to shift users away from Internet Explorer to other browsers. Microsoft either need to catch up and support modern web standards fully, or lose market share.
  • Nobody else is going to propose a next-gen email protocol with Wave in the offing. By open sourcing Wave Google scare off potential competition. Who wants to go head to head with the gorilla? The only company with both the resources and willingness to do so on this is Microsoft. They difference is that Google's money is from advertising, Microsoft's from software. Microsoft can't afford to open source their software to define the next standard - they'd destroy their revenue. Google, can, and just just did. [As a side note, Microsoft purchased Groove, a very Wave-like product in 2005, and then had no idea what to do with it].
Poor Microsoft. On the day Microsoft announce Bing (another attempt to merely catch up on search) Google are racing ahead...

Wave is exciting, but maybe there's too much hyperbole over it already. I'll finish with a few notes of caution:
  • Wave isn't ready or available yet. So far the developers attending the I/O conference are the only people with access to it. Google suggest that Wave will be available to consumers later in 2009. My guess is that we are at least 12 months away from Wave appearing in the corporate version of Google Apps, or getting the source code to deploy your own Wave server.
  • It's not clear how Wave fits in a mobile world. Threaded, interactive conversations with rich media work well on a large screen.
  • Email isn't going to disappear. Although Wave is an attempt to redesign email from the ground up, email is quick, cheap, lightweight, easy, and universal.
  • Wave doesn't include voice or video communications. In the Googleverse, how does Wave fit in with Google Voice?
A truly unified communications tool should include voice too. Add a few more years for Unified Communications then - by which time our requirements for unified communications will have broadened even further. Perhaps this Holy Grail is as far away as ever - but we've just had a tantalising glimpse.