Thursday, June 04, 2009

Google Wave Architecture: Designed For Mass, Massive, Global Innovation

The technologies behind Google Wave have been designed to bring desktop like experiences into the browser paradigm, but end up doing more than that. The shift and growth are so sure and certain soon we will be missing browser like experiences while on the desktop. Why can't I don this with a desktop client?

The browser is about to take off. The richness will only grow. The speeds will only get faster. The bandwidths will go way up. The masses of people involved will go up both on the production and the consumption sides, and there will be not be any distinct boundary between the two.

The desktop was designed for one person. The browser was always meant for the masses, for crowds. Finally the promise is catching up with capabilities.

This is barely the beginning. Google Wave is three things: a tool, a platform and a protocol. There are many ways to use Google Wave as it exists today. There can be much innovation in how it gets applied. It is the difference between Blogger the service and all sorts of wonderful blogs you end up with. And then there are the platform and protocol aspects. Get geared for major technological leapfrogs. Here it is the difference between the iPhone and all its many applications, it is the difference between Hotmail and Gmail.

The Google Wave Architecture
17 Suggestions To Blogger
Square Search
Google Wave Ripples
Is Google Wave Social Enough To Challenge Facebook, Twitter?
Blogger Search Gadget: What Took You So Long?
Of Waves And Tsunamis
Google Wave: Wave Of The Future?
Google Wave: If Email Were Invented Today

From The Google Blogs

Google Wave team heads to Google Developer Days in Asia
Introducing the Google Wave APIs: what can you build?
Went Walkabout. Brought back Google Wave.

On The Web

InfoQ: Google Wave's Architecture Google Wave is three things: a tool, a platform and a protocol. The architecture has at its heart the Operational Transformation (OT), a theoretical framework meant to support concurrency control. ....... based on hosted XML documents (called waves) supporting concurrent modifications and low-latency updates. ...... using JavaScript and HTML5 on the client side ....... Java + Python on the server side ..... a public API and the company promises to open source the entire platform ......... modify the base code and extend it with gadgets and robots. ....... Gadgets are small programs running inside of a wave, while robots are “automated wave participants.” Wave can also be embedded in other mediums like blogs. ....... Each wave has a globally unique wave ID and consists of a set of wavelets. ...... A wavelet has an ID that is unique within its containing wave and is composed of a participant list and a set of documents. The wavelet is the entity to which Concurrency Control / Operational Transformations apply. ....... A participant may be a user, a group or a robot. ....... Documents form a tree within the wavelet. ....... the crucial part of Wave’s technology. Google Wave makes extensive use of Operational Transformations (OT) which are executed on the server. ....... Operations are sent to the server and propagated to each client on a character by character basis ......... To start communicating on a wavelet, a client sends an Open Request containing the Wave ID and the Wavelet ID to the server. The server responds with a snapshot - the serialized state of the wavelet - or a history hash of the corresponding version. ........ The Google Wave Federation Protocol allows multiple entities (wave providers) to share waves with each other.
InfoQ: Is Google Wave Going to Have an Impact on RIA/Silverlight? Wave is actually a competitor for Microsoft’s SharePoint and Exchange ....... Flash, Silverlight and Java FX ...... Some of the new features to be introduced in HTML 5 and web API proposals from W3C and WHATWG are: canvas, video, geolocation and web workers. ........ Wave which is making extensive use of HTML 5. ....... the company is “betting big on HTML 5”. ...... The Wave client is a major proof of concept (or pilot project) for HTML5. If the wave client becomes a killer app, it will have a major (negative) impact on other RIA architectures. ....... Microsoft Silverlight vs Google Wave: Why Karma Matters ........ “Microsoft just has so much bad karma in this industry that I cannot imagine a company like us trusting them on much of anything.” ........ today, it is Google which is driving web standards forward. ....... HTML5 is a working draft still. ....... people have to use those new browsers. The slowness of standards leads me to believe that RIA platforms will be around a while ....... “[Wave] is more about competition with Exchange + IM + OneNote w/Sharepoint Integration + Outlook”. ........ The primary reason we want to open source our code is actually adoption of the protocol. ....... Wave's effect on Silverlight is indirect. HTML will enter in the RIA space with HTML 5, taking a share from Flash and Silverlight. Google's heavy support for HTML 5 will contribute to that.
Google Wave Architecture | High Scalability hosted XML documents (called waves) ..... users from different wave providers can communicate and collaborate using shared waves
Google Wave Federation Architecture ‎(Google Wave Federation ... the Google Wave Federation Protocol for federating waves between wave providers on the Internet. ........ various elements of Google Wave technology - data model, operational transformation, and client-server protocol ...... The wave federation protocol enables everyone to become a wave provider and share waves with others. ....... A robot is an automated participant on a wave (see the robots API). Examples are translation robots and chess game robots. ........ A gateway translates between waves and other communication and sharing protocols such as email and IM. ....... Different wavelets of a wave can have different lists of participants. ......... there is a designated wave provider that has the definitive copy of that wavelet. We say that this particular provider is hosting that wavelet. ......... different users have different wave views for a given wave. ...... the user's read/unread state for the wave, is stored in a user-data wavelet ....... A wave is identified by a globally unique wave id, which is a pair of a domain name and an id string. ......... Like a wave id, a wavelet id is a pair of a domain name and an id string. ......... Wavelets in the same wave can be hosted by different wave providers. ........ a federation gateway and a federation proxy. ........... "local wavelet" and "remote wavelet"
Salesforce rides on Google wave : News : Software - ZDNet Asia
Google Wave Architecture
Google's move to introduce a Wave of synchronicity | Web Apps News ...

Reblog this post [with Zemanta]

No comments: