I’ve spent the last 80 minutes – a beautiful summer afternoon in the garden – watching the Google Wave video. Nico Adams has enthused about this to me and Cameron has been blown away.:
And my opinion is that this is absolutely game changing – it makes a whole series of problems simply go away, and potentially provides a route to solving many of the problems that I was struggling to see how to manage.
And later from Cameron:
…as I said to someone yesterday, when they write the history of the web, Thursday will be the day that email died. It may be too early to call it the day that the wordprocessor died but I guess we’ll see. I think it will clearly subsume wikis and blogs at least as separate services – there will still need to be some “public facing” approaches that may be different to what was demoed which was essentially person to person. There was no discussion of subscribing per se. But that is easily do-able.
It’s interesting actually – some people just get it and many others don’t seem to. All the translation and spell checking and clever embedding is very flash but the key revolution at the core of it seems to me to be the combining of messaging and the collaborative document. Everything else is just nice added functionality.
So why am I not feeling this epiphany – “the greatest thing since Mosaic”? There is no question the demo is impressive and critically important (although there were too many talking heads and not enough demos you could read).
It’s because I had the epiphany when Mosaic came out, 15 years ago. At that stage I walked around on air for three days. It changed my world and what I chose to do. The second epiphany was XML, – let’s say 1998 – which I was fortunate to have had a small hand in developing. XML is at the heart of Google Wave. It’s shared structured information. XML had and has the power necessary to transform the world. It’s just taken 10 years to do so.
And I’m now used to the fact that ideas take 10 years to develop, even in the incubator of the Internet and Web. In 1998 I was worried that XML-over-the-Web would be a mad rush between competitive commercial applications. I was worried about ontological warfare. I’d developed Chemical Markup Language (with Henry Rzepa) – XML for chemistry –. Adobe et al had developed Scalable Vector Graphics (SVG). I prophesied that SVG would be the killer app for XML-over-the-web. It had everything – a good spec, some lovely tools and it hit you between the eyes. So what happened? Microsoft took a different route. Adobe bought Flash and killed SVG. “The day the graphics died.”
As a reality check – a thoughtful technical piece (It’s new but not new) explains GoogleWave-as-infrastructure and mirrors my own views. Nothing is actually new. But everything can be different.
I have seen several false dawns in the last 15 years. And cases where the dawn has been deliberately obliterated. This could be different. But not because of the technology. Because of the organizations and the zeitgeist.
The critical things are:
-
A central approach which is large enough to survive and which potentially can be trusted. (The trust in Google is the single biggest aspect of everything).
-
Open data (and open minds). The success of GW will be based on sharing. Yes, GW has sophisticated security mechanisms but it is based on the idea (unthinkable 10 years ago) that people who have never met will share personal and important information trusted to a third party with whom they have no contract.
-
Standards. GW is built on XML. XML makes the previously impossible just simply hard work. And it makes what used to be hard relatively straightforward. (I imagine they have to do a lot of engineering under the hood, with image formats, etc. )
-
Open Source extensibility. Because GW is Open, people will add to it. And they will. But we shall still have to look to the fine print – what is really Open and what is simply exposed? Googlemaps are not Open – hence Openstreetmap. I’m more hopeful with Google code because they have created their Open Source site and hence imbibed the culture.
So GW potentially provides everything I have been waiting for for 10 years. An integrated infrastructure, with sufficient tools to make rapid progress. That relieves me from the burden of organising input, parsing, workflow, storage, dissemination. And concentrating on what I really want to do which is to build chemically intelligent systems. Bobby Glen and I put this idea forward 8 years ago as an eScience grant proposal “The world wide molecular matrix”. It was perhaps naive and optimistic in places and the 2002-zeitgeist would anyway have killed it. (The grant didn’t get past the middleware weenies who were looking for “Grid stretch” – a meaningless term which ensured the funding went to infrastructure based on the rather arrogant idea that academia knew how to build world-beating middleware).
GW has shown that it can build middleware and interactiveware better better better than academia.
So let’s turn to what we really should be doing – building chemistry based on a universal public information infrastructure. On the pillars of the Blue Obelisk – Open Data, Open Source, Open Standards. The Blue Obelisk has got most of the components – and we need componentware as well as applications. I haven’t looked into GW (though we have been using GWT). I suspect it’s not as trivial as it looks to use. GWT took us some time, and Google moves in an industry where developers can be hired in large teams. (I remember at an Xtech (XML) meeting 2 years ago at a session on SVG on mobiles – one company developer: “We didn’t need much resource – 10 developers for 3 years was sufficient”. I turned bright green.
The key thing is collaboration. The BO has shown that if we work together we get a good mixture of complementarity. GW might be the next impetus – I don’t know. But I am sure that if we keep developing componentware – CDK, Jmol, OpenBabel, JUMBO, OSCAR/OPSIN, etc. we’ll end up being ideally suited for the next wave.
And if that is GoogleWave, fine. If not we’ll recognize it when it comes.
I’m conscious as I write that we are also working with Microsoft on Open Source chemistry – with C# and WPF. How does that fit in? Or doesn’t it. I don’t know, but – as we are thinking of poets Laureates in the UK these days – lines of Tennyson spring to mind:
The old order changeth
,
yielding place to new,And God fulfills himself in many ways,
Lest one good custom should corrupt the world
I agree that the overall principles are based on existing technology to a large extent (at least from the user perspective, and based on the online video). Why I (personally) got very enthusiastic was because suddenly a lot of hurdles to conceptually integrating work will vanish. I see problems ahead too – but for now I look forward to being able to concentrate more on the science and less on the technical implementations …
@anna thanks – I will try to blog more later. I think the integration depends on the types of information and the amount people will share.
A good read… And thanks for the link. (and I don’t think Adobe quite killed SVG, btw. – I use it more and more for my web work; whenever I can afford to ignore Internet Explorer, which is surprisingly often)
As for openness: At this stage it doesn’t really matter if Google follows through or not. If they were to become evil tomorrow, it’s too late – the idea and the protocol spec is out there. The technology is surprisingly trivial: XMPP + a minor XML vocabulary for managing participants to a wave and mutating it (the tricky bit being ensuring ordering and consistency) + “wave storage” (i.e. storing current and past state – likely in the form of a the stream of wave operations + a snapshot), and you have the server. The client “just” needs to provide the UI and apply the incoming stream of wave operations to the documents it holds…
Cloning Wave wouldn’t be that hard – a lot of work, but none of it particularly challenging.
@vidar great to hear from you. Yes, SVG is there and will win through but it’s hard for ordinary mortals to distribute apps they know will work.
I agree that the technology can be lifted – I’m probably more worried about the possession of all that shared data. It will be interesting to see whether the community really becomes Open or whether Google is driving this. Not that I worry too much at present.
I agree that the idea is more important than the product. If Google’s Wave doesn’t work out somehow, a similar document collaboration system in the browser will surely be made (I hope!).
From a chemistry point of view, I could see chemical drawing extension. Especially combined with playback features that Wave has; for drawing mechanisms, for example.
Oddly enough, there was some discussion on #bioclipse about using xmpp to collaborate on chemical documents – specifically on drawings, although I’m not totally convinced of the use-case (do chemists really need to draw structures in collaboration?). It did occur to me that, implemented badly, such a system could spend a lot of time messaging back and forth about highlighting. Perhaps a ‘send’ button…hmmm.
Anyway, it did finally show me what the point of these sort of messaging protocols might be 🙂
Pingback: Unilever Centre for Molecular Informatics, Cambridge - Google Wave - some implications for science « petermr’s blog
Pingback: Unilever Centre for Molecular Informatics, Cambridge - Google Wave and implications for science « petermr’s blog
Pingback: Unilever Centre for Molecular Informatics, Cambridge - Google wave and implications for science « petermr’s blog
XMPP has a ‘XEP’ called IO-DATA of which I am co-author and initiated by Johannes Wagener, and we just submitted a paper that described this framework. We have set up various ‘cloud’ services for various life sciences fields, including a few based on the CDK. IO-DATA cloud services are semantic from the ground up and currently uses XML Schema to pass around information about IO. CML is used for the CDK services.
The current library xws4j is written in Java, but there is also a framework that calls these cloud services from HTML web pages. As of yet, I have not clue what the easiest way would be to integrate chemistry in GWave… regarding JChemPaint, I think SVG could be an option, but I rather see GWT bindings.
One of the really interesting things about Wave is that the application distribution problem may go away. Because your program is wrapped with the message/document you know that your end user has the same functionality that you do. The user no longer has to install the functionality. How well this works in practice is anyone’s guess but at least with the robots this is handled server side so it should be possible to be pretty confident about sharing the functionality.
@egon @cameron many thanks. Yes. Java+XML (or Javascript+XML) is not completely functional programming but it has similarities. Jon Bosak presciently wrote “Java+XML – the future of the web”.
Pingback: Using Google Wave for a week – it’s still great! | Gobbledygook