Google Wave
Developer(s) | |
---|---|
Initial release | May 27, 2009 |
Repository | none |
Platform | Cross-platform |
Type | Web application/protocol |
License | Apache License (only Google Wave Federation Prototype Server and ConsoleClient) |
Website | http://wave.google.com |
Google Wave is an online software application formerly developed by Google. It was described as "a new web application for real-time communication and collaboration".[1] It was first announced at the Google I/O conference on May 27, 2009.[2][3] It is a web-based service, computing platform, and communications protocol designed to merge e-mail, instant messaging, wikis, and social networking.[4] It has a strong collaborative and real-time[5] focus supported by extensions that can provide, for example, spelling/grammar checking, automated translation among 40 languages,[3] and numerous other extensions.[5] Initially released only to developers, a preview release of Google Wave was extended to 100,000 users in September 2009, each allowed to invite additional users. Google accepted most requests submitted starting the 29th of November 2009, soon after the September extended release of the technical preview. On May 19, 2010, Google Wave was released to the general public.[6]
On August 4, 2010, Google announced the suspension of standalone Wave development and the intent of maintaining the web site at least for the remainder of the year.[7]
Product
Google Wave was designed as a new Internet communications platform. It is written in Java using OpenJDK and its web interface uses the Google Web Toolkit. Google Wave works like previous messaging systems such as email and Usenet, but instead of sending a message along with its entire thread of previous messages, or requiring all responses to be stored in each user's inbox for context, message documents (referred to as waves) that contain complete threads of multimedia messages (blips) are perpetually stored on a central server. Waves are shared with collaborators who can be added or removed from the wave at any point during a wave's existence.
Waves, described by Google as "equal parts conversation and document", are hosted XML documents that allow seamless and low latency concurrent modifications.[8] Any participant of a wave can reply anywhere within the message, edit any part of the wave, and add participants at any point in the process. Each edit/reply is a blip and users can reply to individual blips within waves. Recipients are notified of changes/replies in all waves in which they are active and, upon opening a wave, may review those changes in chronological order. In addition, waves are live. All replies/edits are visible in real-time, letter-by-letter, as they are typed by the other collaborators. Multiple participants may edit a single wave simultaneously in Google Wave. Thus, waves can function not only as e-mails and threaded conversations but also as an instant messaging service when many participants are online at the same time. A wave may repeatedly shift roles between e-mail and instant messaging depending on the number of users editing it concurrently. The ability to show messages as they are typed can be disabled, similar to conventional instant messaging.[4]
The ability to modify a wave at any location lets users create collaborative documents, edited in a manner akin to wikis. Waves can easily link to other waves. It is in many respects a more advanced forum.[9] A wave can be read and known to exist by only one person, or by two or more. It can also be public, available for reading and writing to everyone on the Wave.
The history of each wave is stored within it. Collaborators may use a playback feature in Google Wave to observe the order in which a wave was edited, blips that were added, and who was responsible for what in the wave.[4][5] The history may also be searched by a user to view and/or modify specific changes, such as specific kinds of changes or messages from a single user.[3]
Open source
Google plans to release most of the source code as open source software,[3] allowing the public to develop its features through extensions.[3] Google will also allow third-parties to build their own Wave services as quickly as possible (be it private or commercial) because it wants the Wave protocol to replace the e-mail protocol.[3][10][11] Initially, Google will be the only Wave service provider, but it is hoped that, as the protocol becomes standardized and the prototype server becomes stable, other service providers will launch their own Wave services, possibly designing their own unique web-based clients as is common with many email service providers. The possibility also exists for native Wave clients to be made, as demonstrated by Google with their CLI-based console client.[12].
Google has made an initial open-source release of some components of Wave:[13]
- the operational transformation (OT) code,
- the underlying wave model, and
- a basic client/server prototype that uses the wave protocol
In addition, Google has provided some detail about the next phases of the open-source release:[12]
- wave model code that is a simplified version of Google's production code and is tied to the OT code; this code will evolve into the shared code base that Google will use and expects that others will too
- a testing and verification suite for people who want to do their own implementation (for example, for porting the code to other languages)
Reception and end of development
During the initial launch of Google Wave, invitations were a hot commodity, even being sold on eBay.[14] However, as more and more users began to use the product, there was a sense of confusion as to how to use it.[15] Google Wave has been called an "overhyped disappointment for the first generation of users"[16] with "dismal usability"[17] that "humans may not be able to comprehend".[18]
Despite these criticisms, Google Wave still received a fair share of positive press for its potential uses.[18][19] On August 4, 2010, however, Google announced that the product would no longer be developed due to lack of interest.[20]
API
Google built APIs that allowed developers to use and build on Google Wave by way of:
- Extensions, program robots to automate common tasks and/or build gadgets to extend or change user interaction (e.g., posting blips on microblog feeds or providing RSVP recording mechanisms).[3][4][21]
- Embed, dropping interactive windows into a given wave on external site, blogs, etc.[3][21].
There were up to 150 Google Wave Extensions developed either in the shape of Gadgets or Robots.[22][23]
Google Wave extensions were mainly of 2 types:
- Gadgets : A gadget was an application users could participate with, many of which were built on Google’s OpenSocial platform. A good comparison would be iGoogle gadgets or Facebook applications.
- Robots : Robots were automated participants within a wave. They could talk with users and interact with waves. They could provide information from outside sources (i.e. Twitter, stock quotes, etc.). The last version of robots API is 2.0.[24].
Protocol
Google Wave provides federation using an extension of XMPP, the open Wave Federation Protocol. Being an open protocol, anyone can use it to build a custom Wave system and become a wave provider.[25] The use of an open protocol is intended to parallel the openness and ease of adoption of the e-mail protocol and, like e-mail, allow communication regardless of provider. Google hopes that waves may replace e-mail as the dominant form of Internet communication.[3][10][11] In this way, Google intends to be only one of many wave providers.[3][10][11] It can also be used as a supplement to e-mail, instant messaging, FTP, etc.
A key feature of the protocol is that waves are stored on the service provider's servers instead of being sent between users. Waves are federated; copies of waves and wavelets are distributed by the wave provider of the originating user to the providers of all other participants in a particular wave or wavelet so all participants have immediate access to up-to-date content. The originating wave server is responsible for hosting, processing, and concurrency control of waves.[10][11] The protocol allows private reply wavelets within parent waves, where other participants have no access or knowledge of them.[10][11]
Security for the communications is provided via Transport Layer Security authentication, and encrypted connections and waves/wavelets are identified uniquely by a service provider's domain name and ID strings. User-data is not federated, that is, not shared with other wave providers.
Firefly connections
The name was inspired by the Firefly television series[26] in which a wave is an electronic communication (often consisting of a video call or video message).[26] During the developer preview, a number of references were made to the series such as Lars Rasmussen replying to a message with "shiny", a word commonly used in the series to mean cool or good, and the crash message of Wave being a popular quotation from the series: "Curse your sudden but inevitable betrayal!"[3][27] Another common error message, "Everything's shiny, Cap'n. Not to fret!" is a quote from Kaylee Frye in the 2005 motion-picture Firefly continuation, Serenity, and it is matched with a sign declaring that "This wave is experiencing some turbulence and might explode. If you don't want to explode..." which is another reference to the opening of the film.
During an event in Amsterdam, Netherlands[28] it became apparent that the sixty strong team that is currently working on Wave in Sydney, Australia, use Joss Whedon-related references to describe, among others, the sandbox version of Wave, called Dollhouse after the TV-series by Firefly producer Joss Whedon, which was aired on Fox in the U.S. The development of external extensions is codenamed "Serenity", after the spaceship used in Firefly and Serenity.
Other Compatible Servers
The following servers are compatible with the Google Wave protocol:
- PyGoWave is a Google Wave server coded in Python.
- StreamWork
- Novell Pulse
Adoption outside of Google
So far, Wave has been adopted by two companies [29]: Novell for Novell Pulse [30] and SAP for Cloudave [31].
See also
- Google Wave extensions
- Extensible Messaging and Presence Protocol (XMPP)
- Web 2.0
- Opera Unite
- Microsoft Groove
- Microsoft Sharepoint
References
- ^ "Google Wave Overview". Google.
{{cite web}}
:|access-date=
requires|url=
(help); Check date values in:|accessdate=
(help); Missing or empty|url=
(help); Unknown parameter|href=
ignored (help) - ^ TechCrunch (May 28, 2009): Google Wave Drips With Ambition. A New Communication Platform For A New Web.
- ^ a b c d e f g h i j k "I/O Conference Google Wave Keynote". Google.
- ^ a b c d "About Google Wave". Google.
- ^ a b c "Google Wave Developer Blog". Google.
- ^ http://news.cnet.com/8301-30685_3-20005394-264.html
- ^ http://googleblog.blogspot.com/2010/08/update-on-google-wave.html
- ^ http://www.waveprotocol.org/whitepapers/operational-transform
- ^ http://variableghz.com/2009/10/google-wave-review/
- ^ a b c d e http://www.waveprotocol.org/whitepapers/google-wave-architecture
- ^ a b c d e http://www.waveprotocol.org/whitepapers/internal-client-server-protocol
- ^ a b "Google Wave Federation Protocol and Open Source Updates". Google.
- ^ "Google Wave Federation Protocol and Open Source Updates". Google.
- ^ Google Wave Invite Selling for $70 on eBay
- ^ Christian Science Monitor: So you've got google wave, now what?
- ^ Linux Mag 2009 Review
- ^ Google Wave Failure on Milwaukee SEO
- ^ a b Google Wave to get its own App Store (Engadget)
- ^ CNET Predictions for 2010
- ^ ZDNet on GW's death
- ^ a b "Google Wave API - Google Code". Google.
- ^ http://wave-samples-gallery.appspot.com/
- ^ http://www.wextensions.com
- ^ "Introducing Robots API v2: The Rise of Active Robots". Google.
- ^ "Google Wave Federation Protocol". Google.
- ^ a b Cochrane, Nate (May 29, 2009). "Opinion: Google's wave drowns the bling in Microsoft's Bing". iT News Australia. Retrieved June 3, 2009.
- ^ Originally said by Wash at 6:36, in Serenity; Firefly: The Complete Series (Blu-ray), 2008, 20th Century Fox.
- ^ Rottmann, Ralf (October 30, 2009). "Google Wave to be opened for federation today!". The Next Web.
- ^ http://www.theregister.co.uk/2009/11/20/google_wave_appeal/
- ^ http://www.novell.com/products/pulse/
- ^ http://www.cloudave.com/link/sap-gravity-prototype-business-collaboration-using-google-wave