Email by far is the most popular medium of communication, invented more than 40 years ago even before internet was invented. Email was done without even exploring sms, blogs, wiki etc. Email primarily mimics snail mail. The basic metaphor behind email is write a message, forward it to as many recipients as possible. Google up with its Gmail came up with a new concept of relating email as threads or conversation. Google took a step further and came up with GTalk - A tool for instant messaging, where users were able to communicate with each others textually.
Google started taking things a step further by introducing a ground breaking concept called wave technology with its new Google Wave. Google wave is typically a personal communication and collaboration tool developed by famous brothers Larse and Jen Rasmussen the inventors of Google maps.
Wave is a light-weight tree structure of messages with users participating in conversation. Unlike email, instead of individual messages being sent back and forth, the entire conversation object behaves as a shared object on a shared server and users can open up a wave, add recipients and leave message. When the participants come, they open the same shared object, view them and reply. Since wave is an hosted conversation, it is easier to keep track of structure. As an edge over email, users can select a particular part of the conversation and reply back. This is termed as Inline replying. This is in addition to traditional way of replying for entire message.
When wave is opened simultaneously by users, they are able to see characters transmitted live. This is because user 1s message bounces on the server and then into user 2s server. This saves dramatically the time for reading and writing the message. Thus wave combines two different tools required for Email and IM into one tool. Important advantage is we get to add new users at any point in the middle of a conversation. The new participants can playback the entire conversation if they want to get a grip of the conversation that was going on. This is highly useful especially when in an organization, if an employee joins a group conference in the middle, he can simple playback and get to know the idea of what the conference is all about. This is possible simply because a wave is considered as a tree structure of messages. Essentially any given sub tree of a wave can be considered and restricted access to others.
Sharing files:
Sharing files and essential pictorial data has never been as easy as in Wave. Sharing pictorial data just requires a drag and drop and all the files appear the very same instance on all participants screen. Once images are shared, users can download the entire bunch of images posted by all the participants. This makes Wave a powerful group album as well. However, this feature comes with a limitation. Current standards of HTML 5 dont allow this. While talks are going on to include this as part of the HTML5 framework, the same can be achieved by using a plug-in called Gears.
The best feature of Wave is collaborative editing. Users can collaboratively edit or create a document. Earlier meeting notes were emailed to all employees concerned and changes if any were made and resent. This not only was time consuming but also had multiple copies of altered documents. To avoid this, Wiki was introduced where document was posted on a portal and employees were accessing wiki pages to view or alter the document contents. This approach although minimized the versioning issue but it was not able to reduce the time taken for completely editing the document by users. As an alternative, Wave introduces collaborating editing in a different perspective. Users can not only take notes of a session but can also add participants and hold an active discussion on the same simultaneously. Consider a case where a project team discusses on requirement analysis. The team can start a new wave, add participants and add the document to the wave. Wave allows multiple users to collaboratively edit the document and characters are transmitted live to all users. Incase if any new participant joins after a considerable amount of changes are made to the document, the changes will be reflected as a markup. The new participant can then use the playback feature and track all the changes made. However there is small draw back. New users cannot view changes made by a particular user instead can view changes by all users.
In addition to collaborative editing, participants can give inline comments and can in the process change them into inline conversation. Participants can always hide these conversations and can also publish the modified document to new set of users by copying to a new wave. However the new set of participants cannot view the history of parent wave.
Extensions:
Wave allows participants to add API as extension to the wave. For example, employee can add an extension bloggy which publishes the contents of the wave to company owned blog. Employees can add documents, images, videos etc to the blog by merely dragging and dropping the contents into the wave. Incase if any other employee comments in the blog, the wave gets updated the very moment and vice versa.
In addition to these extensions, Wave also has few server-side robots which participate in the wave. When users, add these robots as participants, other participants can feel the robots participation. For example, Wave has a very famous robot named Spelly. Spelly by sitting on the server, matches each word that the user types to its extensive word dictionary and when it comes across any error, it collaboratively edits them for the user.
Of all the extensions, Buggy the robot, is used for bug tracking. Programmer builds code and submits code for review to the team. Team members can edit and discuss the bugs and observations. For filling bugs, user has to select the text, mark it as bug. They can also set priority, assign it to a particular assignee. Buggy creates link to the bug so when assignee clicks on the link, it shows information about the bug. Wave also allows participants to debate on bugs. However, if someone comments in issue tracker, it does not gets reflected in the Wave. Also, it does not categorize issues assigned to a particular assignee.