Naturally, I was off on vacation and away from most of the Internet when the news broke that Google was going to cancel Wave As We Know It. (I love my Android phone, but it’s not really the tool for serious blogging.) Lots of people have written about the topic, mostly along the lines of, “Wave was always a piece of junk”. They’re wrong, but the fact is that Google managed to screw this one up in a lot of ways. Let’s go through some of the problems, and their implications.
Lack of Patience: From what I can tell, Wave has been tossed to and fro based on management whimsy and panic; there doesn’t ever seem to have been a properly designed plan.
It was released very prematurely, when it was barely alpha-grade (and I suspect well before the engineers wanted it released), apparently because they wanted something to show off at Google I/O. This meant that the development team had to spend the entire past year mostly firefighting, instead of doing the sort of hard and principled sanity-checking and redesign that it needed before public rollout.
And now they’re killing off the public project after scarcely a year: ridiculously too quickly for a product that they had sold as revolutionary. Twitter is the exception, not the rule: most revolutions take years to percolate before finding mass-market acceptance. (Think about ICQ, or Friendster, or Mosaic — the first version of a revolutionary idea is usually several years before it hits big.)
I’m coming to the conclusion that Google’s biggest problem right now is that they are being surprisingly clueless about how to manage new products. Wave is a great product at its core, and Buzz a decent one, but both rollouts have been mismanaged on an epic scale. If Google needs to fix one thing about the company, this is it.
Identity Integration: Everyone treats this as an afterthought, sometimes even something to be avoided for pure business reasons. But it’s a huge problem, and Wave demonstrated why.
At initial rollout, Wave didn’t work with any existing identity system, not even Google’s own: you had to get a new “@googlewave.com” address to use it. Even when they started to open things up, it only worked with Google IDs.
Frankly, this is dumb. I understand Google’s motives for doing so — it’s technically a hair easier, and it encourages people into Google’s ecosystem — but it’s a foolish hurdle to put in front of a radical new tool that you are trying to get people to use.
The public is suffering a really bad case of identity fatigue: too many incompatible logins to manage. Each one is a minor thing, but each one leads to an additional reaction of, “What, again?” when folks have to create another one. In a perfect world, Wave should have been built on a generalized concept of identity that accepted, eg, Facebook logins, but at the very least it should have worked with OpenID and the rest of the open stack. I remain extremely disappointed that Google put far less thought and effort into this problem than I did on my own for CommYou — you just can’t keep pulling this on the public and expect to win.
Lack of a Killer App: The biggest complaint about Wave has been the constant question, “What is it for?”, and I have to lay a lot of blame at Google’s feet for not answering that more clearly.
The thing is, Wave has multiple killer apps. It is a brilliant co-editing system, easily the best tool I’ve ever encountered for group document development. And while it’s a bit overweight, it is in many ways the best conversation tool I’ve found to date (aside from CommYou, of course), mixing realtime and asynchronous conversation smoothly. In general, it’s a fine collaboration mechanism.
Either of those (and probably other stories) could have been a fine selling point — but Google dropped the ball. Instead, they simply tossed it out with a vague and confusing “It will replace email!” (what?), and never pushed any motivating examples properly. So it never developed the core audience that any tool needs in order to survive.
My sometime CTO Chris Herot has occasionally lectured me about the problem of Crossing the Chasm — taking a tool that is great and making it successful. A key element of that is always the killer app: showing at least one core group of users that they can’t live without this thing. Google simply assumed that others would do that job for them. That was arrogant, frankly, and it didn’t work.
Bloated and Slow: Mind, this is a hard problem, and it’s a damned sophisticated tool. But seriously: Wave runs kind of slowly even on Chrome, and doesn’t run at all on Internet Explorer. (No, Chrome Frame is not an answer.)
That’s just plain unacceptable for a current web-based tool — again, it was kind of arrogant on Google’s part. It’s especially unacceptable for a social tool, because social tools are all about critical mass. If a large fraction of a community is unable to use the tool, that’s an enormous handicap, usually an insuperable one. And much though Google might wish otherwise, a large fraction of the world is still IE-based.
I can sympathize with Google here, and cutting out IE6 is entirely reasonable at this point. But not supporting at least the same browser set as Gmail was a serious mistake. They need to trim down and optimize the UI to the point where it will run acceptably on the full range of modern browsers, if they actually want this stuff to ever be real; anything else is simply wishful thinking.
(The engineers in the audience might want to take note of a general lesson here. Successful products usually follow the path of starting with a simple tool that implements a great idea, and then slowly expanding from there. Wave did the opposite: it has a lot of pretty innovative ideas, but has proven to be a bit too ambitious for its own good, putting features ahead of the basics like broad compatibility. I’d bet that, if you teased Wave apart into its component parts, there are half a dozen great products to be had there, that would be more successful.)
No Mobile Support: Similar to the above, but worth calling out separately, is the fact that there hasn’t yet been any practical way to interact with Wave on a smartphone. Nowadays, that’s pretty much unacceptable. I mean, how can you claim to be a replacement for email and not have a mobile solution?
Now let’s be clear: this is hard. Really hard. It’s arguably a fundamental design problem — the way Wave works, it really wants both a powerful machine and a big screen, because there is no obvious way to do the co-editing thing without it.
But really — Wave is, as much as anything, a conversation tool, and it is ridiculous that there is no lightweight and easy way to interact with the conversation. Indeed, if Wave has a killer flaw, this is it. The conversation mechanism looks and feels great (okay, I’m biased — it’s identical to CommYou), but is fundamentally tied into the co-editing. A conversation is basically just a document that a bunch of people are co-editing together, and that means that there is no way into the conversation without all that co-editing weight.
This could probably be retro-fitted. There needs to be a standard robot that monitors your waves and provides a two-way conversational bridge for them, an API for interacting with that, and an Android app that knows your Wave identity and talks to that robot. A third party could have built that, and still could. (Indeed, bits and pieces exist.) But why would they? This is core functionality, to make Google pieces talk to each other. Google should have built it and publicized it properly, so that the hardcore members of the Google ecosystem — the sort of people who are mostly likely to use both Wave and Android — could work in a natural way.
Poor Business Support: I’ve spent most of the past year wishing desperately that I could use Wave at work. Not a week goes past without us getting into some ridiculously nested email conversation with ten participants, where everybody is commenting on each other’s comments, nested five levels deep, using every color of the rainbow to try to distinguish each new set of comments from each other. It’s idiotically painful, and Wave is precisely the right tool to do this instead: it excels at deep group conversations on a complex topic.
But I’ve been unable to even suggest that we use Wave: there’s no way it would fly. Let’s get into some reasons why:
- No SLAs: serious businesses require service-level agreements. We need to be able to count on a tool that is reliable, and Wave is nothing of the sort. This isn’t surprising — it was released at alpha-quality, and even today it’s basically a beta. But it’s no wonder that the business community hasn’t flocked to it, if we can’t take it seriously.
- No security assurances: I’m an engineer, and I get that nothing online is ever totally secure. But Google hasn’t been willing to even put a stake in the ground about protecting my intellectual property, even to the degree that Salesforce does. Without that, there’s no way I can go to my bosses and say that we should hold even casual business-related discussions there.
- No identity integration: okay, yes — it’s probably hopeless to wish that Google would provide a way to integrate with Active Directory. But really, it’s a huge issue. The above problems aside, my IT department is quite reluctant (with good reason) to add a completely parallel user-management system for the company: it’s a recipe for security problems, as well as simply a maintenance headache.
Of course, little of this is unique to Wave: these are common complaints about the Google ecosystem in an enterprise environment. But it’s particularly acute this time around, because Wave is something new. No Microsoft-centric shop is likely to use Gmail seriously, since MS is pushing Exchange at you so hard. But MS has nothing even remotely like Wave, and it is a great business tool, so this would have been a great opportunity for Google to get their foot in the door. Unfortunately, I think it’s been pretty much flubbed.
Next Steps: okay, so enough about the mistakes. What comes next?
I’m going to stick my neck out and say: Wave is dead (well, dying); long live Wave. There are actually a bunch of reasons for optimism. Google has said that they will be repurposing the technology elsewhere, and that’s appropriate — most of the interesting bits of Wave are infrastructure. I’ve argued for months that combining Wave’s conversational strength with a social network (eg, Buzz) would produce the first serious competitor to the LiveJournal platform. So I hope that Google is smart about that: that they are finally getting serious about the crossing-the-chasm problem by integrating the Wave technology inside real apps.
On the downside, if they don’t replace the Wave Inbox in some smart way, that’ll hurt. Inbox is one of Wave’s quiet strengths: a concise and very effective way to catch up on what’s been going on, whether you’ve been off having dinner or on vacation for weeks. I do worry that, if Google uses the Wave infrastructure without providing Inbox or something like it, the system will lose half its usefulness.
Also, there’s probably a bit of brand poisoning here. Frankly, Google handled this a bit clumsily: by killing off the main Wave project so publicly, I think they’re going to associate the whole thing in the public mind as a failure. That would be a damned shame, since so many of the individual pieces are so right: the failure has been mostly a management one at Google, failing to put it all together correctly.
But the underlying Wave protocol is open, and I think is here to stay. Competitors like Novell are already adopting it, as are open-source projects using Wave. I hope that projects like the Wave Forum (an open-source effort I’m helping with, to build a truly great forum system on top of Wave) will simply change gears a bit and move forward whether Google is pushing things or not.
So: opinions? Counter-arguments? What are the problems that I’ve missed above? What pieces of Wave do you think can and should be pulled out and reused?