The Wave Way IS the Web Way
Anil Dash at Lifehacker recently wrote that Wave would face difficult adoption due to complex and rigid APIs. He says that the web has incremental upgrades, has a "weekend-sized" barrier to entry, has value independent of the network effect, and is easy to understand an explain (a duplicate of the second point, really). By comparison, he thinks that wave is big and complicated. It is my opinion that Wave applications will be similarly sized, similarly complex, and not require your friends to join at all.
He starts off by saying that Wave is composed of the following technologies:
and that "combining all of these pieces would just be the starting point" to development. This sounds to me like claiming that developing a Google Maps application involves working with NavTeq and writing tile rasterizers, or that making a website requires writing an OS, a web server, and a web browser. Here's what people will use to develop with Google Wave:
All of them will have demo code that you can understand "in a weekend on your couch with a beer", or however else he thinks that people develop Web 2.0 apps.
Dash instead advocates a different API that does actually require you to host your own servers and federate over XML-RPC. The reasoning is that its easier for people to write their own server with XML-RPC than XMPP. XML-RPC is less efficient than Jabber (XMPP), so for intensive applications, should we be worried about performance? From the pushbutton page:
I think that last statement should read, "Worry? YES". Instead of using a properly written, efficient server, we should all run home brew, inefficient servers on huge clouds, because computing power is free! Google is going to release the Wave server open source, and its going to be really easy for you to run theirs on your hardware. Web programmers don't worry about writing web servers, and Wave programmers should not worry about writing a Wave server either.
He starts off by saying that Wave is composed of the following technologies:
- Federation (XMPP)
- The robot protocol (JSONRPC)
- The gadget API (OpenSocial)
- The wave embed API (Javascript)
- The client-server protocol (As defined by GWT)
and that "combining all of these pieces would just be the starting point" to development. This sounds to me like claiming that developing a Google Maps application involves working with NavTeq and writing tile rasterizers, or that making a website requires writing an OS, a web server, and a web browser. Here's what people will use to develop with Google Wave:
- Make a wave view appear in your web page via the embed API (Javascript)
- Make a view or interface in Wave using the gadget API (OpenSocial)
- Provide outside data or services to Wave with the robot API (JSONRPC)
All of them will have demo code that you can understand "in a weekend on your couch with a beer", or however else he thinks that people develop Web 2.0 apps.
Dash instead advocates a different API that does actually require you to host your own servers and federate over XML-RPC. The reasoning is that its easier for people to write their own server with XML-RPC than XMPP. XML-RPC is less efficient than Jabber (XMPP), so for intensive applications, should we be worried about performance? From the pushbutton page:
Scaling issues? There will inevitably be some learning to do about how to scale the resource-intensive hub layer of a Pushbutton system. But because the hubs live on cloud systems that make enormous amounts of computing resources easily available, because the coders creating the reference implementations of the hub software have great experience making web-scale systems, and because it's relatively simple to introduce new hubs as needed, this will likely not be a gating factor for adoption of Pushbutton. Worry? No
I think that last statement should read, "Worry? YES". Instead of using a properly written, efficient server, we should all run home brew, inefficient servers on huge clouds, because computing power is free! Google is going to release the Wave server open source, and its going to be really easy for you to run theirs on your hardware. Web programmers don't worry about writing web servers, and Wave programmers should not worry about writing a Wave server either.
0 Comments:
Post a Comment
<$I18N$LinksToThisPost>:
Create a Link
<< Home