Why google wave didn't work
As you may have heard, google is letting google wave going down. Now I know that there's already a lot of people who gave their analysis about this, but I'd like to voice a different way to put it.
I think the main issue is how people perceived google wave, and how google themselves tried to push it to the public. The google engineers did it right, but the "marketing" of it was utterly wrong.
Most people out there thought it was a facebook replacement, or another attempt to do social networking or something. That isn't the idea of google wave. Some other thought of google wave as a clumsy attempt of a strange web UI. That isn't the idea of google wave. The main idea of google wave is a new protocol for communication, to replace a bunch of other protocols we've seen around for too long, such as "e-mail". Now, how do you spread something like this, exactly ? Let's see.
First, e-mails sucks. That is for sure. The same way that CVS sucks for doing any kind of SCM, e-mail sucks for doing any kind of communication. And as Torvalds says, SVN is the most pointless software ever, as it is "CVS done right", but there's no way to do CVS right, because of the principles it is based on, any attempt to circumvent the issues generated by e-mails are vain as there's no way to cure the current e-mail system, because of the principles it is based on. The only way is to create something radically different.
Now git worked pretty good. Why google wave didn't ? Now my answer is: because it wasn't aimed at the right people. The same way cvs, svn and git are aimed at command-line freaks, E-mail were invented by scientists and computer geeks who were using terminals to run softwares like mutt in order to type their e-mails and send them across the wire. Unlike facebook, twitter or other current trends which were powered by social-oriented, non-technical people, e-mails were initially started by computer freaks.
So if they actually wanted people to bait, that was the computer freaks. Not the end user who barely knows how to install a software. And how do you do this ? Open the whole thing, completely. Make it a package that is actually installable, so that people can toy with it in their garage's server. Make it so that it's really usable from a command line terminal. The google I/O presentation showed a terminal able to access google wave and I was like "OH MY GOD YEAH THAT FRIGGING ROCKS BABY!" but... it never got really useful at all. You couldn't really interact with the official google wave servers using it. Yet installation of the whole thing on your local server was a horrible nightmare. And you couldn't do anything with it anyway!
Google wave was meant to be open, sure. So what about that whole bunch of packages that were "closed source and google-privacy only" which would prevent you from running a proper google wave server and interconnect it ?
In short, google wave failure is due to a misbait. Google should have baited the people who actually created e-mails, and should have baited them by creating a very crude daemon/client system that'd work from the command-line. The web UI should have been fully optional, and getting a workable terminal daemon should've been considered a premium feature. THEN let the various computer freaks toy with it, enlarge it by adding more and more servers to the network, and enrich it with more features, until it starts hitting the non-computer-freaks. Baiting at the non-technical people first was the biggest mistake.