Google Wave: You need to pay attention to this. - Jason Kolb re: the Future of the Internet

Google Wave: You need to pay attention to this. - Jason Kolb re: the Future of the Internet: "

So here's the deal with Wave: If you deal in technology, and you get this one wrong, you'll miss the boat. And it's a big boat. If, on the other hand, you get this one right, you have the potential to do some incredible innovation.

In a nutshell, this is the next revolutionary leap in Internet application architecture. Maybe the first truly revolutionary leap since HTTP itself.

I've been wanting to write this post for a while, but first I wanted to read fully thru and digest the specs and available code. I haven't done any posts about XMPP for quite a while, but you're going to start hearing a whole lot about it, and not just from me.

What is it?

Ok so what exactly Google Wave is can be confusing, because there are three parts: the protocol, the server, and the client. A lot of people are really going to miss the boat here if they don't keep the distinction between the three in mind, because I see a lot of people focusing on the wrong parts.

The Protocol

WaveAndXmpp At its core, Wave is an extension to the XMPP protocol. This is the REALLY important part. Here I'll back up for a moment for a little background on XMPP.

XMPP is a protocol which describes communication. It models communication between two nodes on a network.

Now, communication can take many forms, and XMPP accommodates many of them. It also supports different types of conversations: presence, notifications, subscriptions, back-and-forth--these are all modeled by XMPP. And it supports a wide variety of communication TYPES as well: video, audio, text, and so on.

I hear people mistakenly talking about Wave as immature or new technology. It's not. XMPP has been around since 1998, being developed and actively worked on for almost 12 years now. It's been approved by the IETF since 2004.

Although it's been mostly used for chat, that's only the tip of the iceberg when you dig into this protocol. I'm still pretty flabbergasted that this protocol hasn't been used more than it has, and I'm excited to see somebody finally tapping into its potential.

I'll touch on what Google has brought to the table with the protocol in a minute, but suffice to say that if Wave takes off as I hope it will, the full power of the XMPP protocol will finally be available as a core piece of application architecture. This is the real game-changer here, and what you need to be thinking about.

The Server

The server (a "wave provider") is a modified Openfire XMPP server that understands the Wave protocol extensions. Openfire has been around for a while too.

While wave providers are used for storing and server XMPP content in Google's implementation, there is a lot of potential in turning existing applications into wave providers as well. Any existing server-based content can be used as the basis for a wave, so just about any application out there right now has the potential to extend its existing functionality by offering its contents as waves.

The Client

Ok, this is probably what you've seen videos of. It's a wave client because it speaks wave protocol to wave providers.

Google_wave

What Google has done is develop the first really full-featured XMPP client, which also uses some of their new XMPP extensions to facilitate things like character-by-character updates. They've developed an incredibly sexy client, and I'm glad about it, because a sexy client like is what's required to sell an innovation this large to both the mass market AND the technical community.
"