Posts Tagged ‘Google Wave’

Google Wave | Communicate and collaborate in real time | Releasing on September 30 2009

September 30, 2009 3 comments

On Wednesday, September 30th, Google will open up their wave preview to about 100,000 people. Details are at Google Wave Developer Blog and The Official Google Blog.


Now, I think I should write something about ‘ Google wave’, atleast for those guys who still don’t know what a google wave is.


Google Wave is “a personal communication and collaboration tool” announced by Google. Google says it consists of three things,viz., Product, Platform and Protocol, which they call the official three piece of Wave. So lets put the defintion in a different way. It is a web-based service, computing platform and communications designed to merge email, instant messaging(IM), blogging, wikis, media sharing, discussion forums , social networking and other forms of online conversations and documents.

Have a look at the video of Google Wave deveoper preview here

Key features in Google Wave

  • Real-time collaboration (For details, view video @here)
  • Natural Language Tool (For details, view video @here)
  • Extensions (Google Wave APIs) (For details, view video @here)

What is the Google Wave API?

The Google Wave API allows developers to use and enhance Google Wave through two primary types of development:
Extensions: Build robot extensions to automate common tasks or build gadget extensions to provide a new way for users to interact
Embed: Make your site more collaborative by dropping in a Wave

Some of the Extensions

Sudoku puzzles
telephone conference calls
Real-time video chat experience


Google Wave is a truly exciting and seminal Cloud technologyand has the ability to interact with other cloud platforms. The users will be getting a HTML 5 APP that was bulit using the Google Wave web toolkit.

A key concept at the center of Google Wave is Operational Transformation (OT)

From the Google Wave Operational Transformation whitepaper –

Wave OT modifies the basic theory of OT by requiring the client to wait for acknowledgment from the server before sending more operations. When a server acknowledges a client’s operation, it means the server has transformed the client’s operation, applied it to the server’s copy of the Wavelet and broadcasted the transformed operation to all other connected clients. Whilst the client is waiting for the acknowledgment, it caches operations produced locally and sends them in bulk later.

Lets take a look at Wave Data Model

A Wave is made up of Wavelets. Each wavelet has a unique id within its wave. The Wavelet contains a list of participants and a set of documents. A document in a wavelet has a unique id within its wavelet. It is composed of an XML document, and a set of annotations. Some of these annotations specify the styling of the text content of the document.

Concurrency control and operational transformation are applied at the level of Wavelets. A particular wave user may only have access to a subset of the wavelets in that wave.

The state of a wavelet is defined entirely by an ordered sequence of operations that have been applied to it. Wave clients send these operations to the server to communicate changes to the underlying document, and the server propagates these operations (after a transformation, if required) to other clients and other servers participating in the wave.


It’s difficult at this point in time to fully understand the ways in which this technology may transform web based communication. The full potential of Google wave can be realized only when one get a chance to use it. Google wants to replace the e-mail protocol by wave protocol which is evident from the fact it allows third parties to built their own waves. But it is certain that it will take some years for the Google wave to conquer the online world of communication. Lets just hope it’s not gonna meet the fate of Google Chrome.


Categories: Google Tags: