Posts Tagged ‘Catching the Wave’

Catching the Wave: Tempo — Up, Down and everything in-between

December 7, 2009

Let’s talk about the concept of “tempo”. (For this term, I have to thank Stowe Boyd, who introduced us to it while I was at Zingdom — I think it’s evocative and right.) It’s helpful to think of online social tools as being focused on either “up-tempo” or “down-tempo” conversation.

Email is the classic example of a “down-tempo” tool. It takes a while for a message to get from the sender to the recipient, and the ecosystem has evolved around that. Conversations often last a long time, pinging and ponging over the course of days. The assumption, when you send a message, is that the recipients may not be present, so their messages are saved, and they might respond at any later time. The conversation is gradual in its pace.

IM, on the other hand, is “up-tempo”. While there are exceptions, most IM conversations take place between people who are present at their computers right now, and everything is built around that. Presence is key in IM: if the other person isn’t online, you probably don’t bother to talk to them right now. There are no guarantees of reliability: if you send them a message, and they’re not online, they may never get it.

The thing to keep in mind about Wave is that it is multi-tempo. If everyone is present, it can get very fast and interactive — indeed, even more interactive than IM. But all changes are stored, and it is specifically designed so that, if you come to the conversation three hours later, you can catch up.

This is a big deal: while Wave isn’t the only system built for multi-tempo, it takes the problem more seriously than most. It’s specifically intended to let you collaborate very effectively and interactively when multiple people are present, but still be easy to jump in later and catch up.

Chad has pointed out to me that the terms “synchronous” and “asynchronous” are often used where I use “up-tempo” and “down-tempo”. They’re nearly synonyms, but I prefer the “tempo” approach mostly because it implies less of a dichotomy. We generally think of “synchronous” and “asynchronous” as very different modes of communication, and they traditionally are — you can lump most online media into one or the other. But the reality is that it’s a sliding scale, even for the more traditional media but especially on Wave, so I have a mild personal preference for terminology that matches that.

Pushing and Pulling

Closely related to this is the question of “push” vs. “pull” methods of interaction. In their most traditional modes, email is “pull” — you go to a mailbox on your own time, and look for new stuff that has come in — whereas IM is “push” — when someone has a new message for you, you get immediate notification so that you can reply immediately.

Of course, these lines have been blurring for years. Many IM systems allow pull: if you’re not around, they will save the messages you have missed until you log in again. And my email is now very “push” — my cell phone rings when I get a message via Gmail.

Wave takes a very pragmatic view of this: it allows you to use both push and pull pretty much as you want, and is well-optimized for both. In particular, it’s designed to push stuff to you instantly if you’re around, but makes it easy to catch up later if you’re not. I’ll talk about this more in a couple of days.

Next: Threading the Conversation

Catching the Wave: Shall We Play a Game?

December 2, 2009

Let’s work through an example, which should give you the idea of how Wave is used.

Say I want to work together with my friends on something — say, figuring out some new poker variations for our monthly poker game, which is going to be Halloween-themed this month. (A shout-out to my friend Charley for providing the fine real-world example, and who was the real “I” in this story.)

I create a wave, and start off with some text describing the idea, and one or two sample ideas for games that I’ve thought of. I include the members of the poker group in the wave. (This isn’t quite email, so I don’t really “send” it to them. I can add new people to the wave at any time.)

At this point, Chad decides to jump in with another idea or two, and some critique of my initial ones. We’re both online at the same time, so the conversation goes quickly, with messages zinging back and forth inside the Wave. Both of us are editing the original article — the list of games — as we go, and in the course of a few minutes, we’ve beaten out a bunch of bugs in the games.

A couple of hours later, Mark logs onto Wave, and sees that there is a new conversation in his Inbox. He’s got some questions about several of the variations, though. He replies to several of the messages (creating subthreads by doing so); he also goes directly into the main document and replies right next to a couple of the game descriptions, starting threads in the middle of the document.

Chad has Wave open, and notices that his Inbox shows activity in the poker conversation. He opens it up, and starts a real-time conversation with Mark. Right there in the middle of the document, they chat back and forth a bit, and figure out where Mark is confused. They edit the document a little to make it clearer, then delete the conversation they just had (which is now just in the way).

Hopefully, that example gives you at least a hint of how the tool is used. Most useful waves seem to follow this general model: a bunch of people working together to refine the stuff that is contained in the initial blip. This is a somewhat controversial assertion, and certainly open to debate, but it is what I’ve observed in practice. In its current state, Wave has issues with more open-ended and less-focused conversation — I’ll talk about those more later in the series.

(For the record, the end result was one pretty good game, and one insane but amusing one.)

Next time: “Multi-Tempo and Heavyweight Threading”, as Google tries to square the circle of conversation models…

Catching the Wave: Sprechen sie Jargon

December 1, 2009

Okay, for real this time: let’s start talking about what Wave is. Bear in mind, I’m going to be talking about how I see it, not the official Google hype.

At its heart, Wave is a tool for shared workspaces that involve conversations. In this, I’m using “conversation” in the most general sense: a group of people interacting. At the moment, that’s mostly through text, but in the long run those interactions will involve everything from party-planning tools to maps to spreadsheets.

To begin with, here’s some terminology. Okay — some jargon. But it’s official Wave Jargon, so we may as well get used to it now.

  • Wave (with a capital W): the tool itself. If I specifically mean Google’s version, I’ll sometimes say Google Wave, but since that’s the only real implementation yet, that’s usually what “Wave” means.
  • wave (with a small w): a shared workspace/conversation, which includes a specific group of people who are working together. (You can have public waves, but they have lots of problems. Personally, I think they’re currently a bad idea; I’ll get into why later.)
  • wavelet: a single permissions boundary within the wave. This is the bit that matters a lot to the techies, and very little to everyone else. A wave is composed of any number of wavelets, each of which potentially includes a different list of participants. This is how you can have what are called “sidebars” in some conversation systems or “private replies” in Wave: side-conversations that only a couple of people are in. In practice, though, most waves contain exactly one wavelet.
  • ping: a private wavelet between two people, sometimes inside another wave, sometimes on its own. Pings typically look a lot like IM conversations inside Wave.
  • blip: an individual element of collaboration. In practice, usually a single message sent by somebody. If you think “blip” == “message”, you’re reasonably close most of the time.
  • thread: a bunch of blips that are responding back and forth. Threads can be stuck anywhere: as sub-threads that reply to a particular blip, or even inside another blip. This is weird, different, and possibly the most useful single thing about Wave: that threads can not only be deeply nested trees, but that you can put one of those trees wherever it seems useful.

So you create a wave to talk about a given topic. This contains one or more wavelets, each of which is essentially a separate conversation about that topic. Each wavelet contains a root blip, which is most often the thing you’re talking about, and lots of other blips that make up threads of replies; these threads can be placed more or less anywhere in the wave.

Next: an example of Wave; or, Shall we Play a Game?

Catching the Wave: the Nuts and Bolts

November 30, 2009

Okay, most of you probably don’t care so much about the open-source project. You want to know what this tool looks like, and how to use it. Here are the rough basics of the initial Google Wave client, for those who haven’t seen it yet.

This picture shows the typical layout of the Google Wave client:

A typical view of the current Google Wave client

A typical view of the current Google Wave client

There are four major pieces —

  • On the top left is the Navigation pane. This includes your Inbox — the list of waves that you’re involved with — as well as less-used groupings like your Trash, Spam and so on. It also has separate lists for saved Searches — lists of waves based on particular criteria like tags — and Folders. (Yes, Google has knuckled under and included Folders, which they’ve never done for Gmail. I believe this has to do with the way Tags work in Wave, which doesn’t let you use them quite the way you do in Gmail.)
  • The bottom left is your Contacts: the people you know in Wave. This can get a little subtle, but in general it works like you expect a contact list to work. It is integrated with your Gmail Contacts, but includes both “My Contacts” (the people you’ve expressly put on the list) and “All Contacts” (a wider group of people you’ve talked to), so it may appear larger than you expect.
  • The middle pane is a list of waves, and intentionally looks a lot like a normal email inbox. By default, this lists the conversations in your Inbox — the Inbox consists mainly of waves that you were invited into, or started, or include a group that you are in, plus other waves that you have read. But if you select another search or folder, it will show that instead of your Inbox. (This picture shows my waves with the tag “ArtOfConv”.)
  • Finally, the right-hand pane shows the currently-selected wave, in reading mode. You can switch over to editing mode instead; this looks almost the same, but replaces the toolbar (which currently shows buttons like “Reply” and “Playback”) with editing controls instead.

Those are the basics, as you will see them out of the box. There are some more bits and pieces that will show up sometimes — for example, pings show up in a “minimized” form along the top, or you can open multiple waves at once — but most of the time, you’ll probably be seeing it more or less like this.

Next: Sprechen sie Jargon; or, what do all these words mean?

Catching the Wave: The Tool and the Project

November 19, 2009

So the first question everyone asks is, what the heck *is* Wave? There’s been a lot of contradictory opinion about that, but the next several articles will try to provide a little perspective.

You have to keep in mind that Wave is two very different things, right out of the gate. First, it’s a new tool from Google, that is currently in an early alpha release. It’s buggy as all get out, and we’ll talk about that more later, but it’s improving rapidly. It is in a pure invitation-only mode right now, as most Internet tools start out — you have to get someone you know to give you an invitation. Those invites were rare as diamonds in the beginning (thanks to Michael Kleber for getting me an early one), but successive rounds of growth have made them a little easier to get.

Second, it’s a new open protocol. Google is trying to make something really new and different here: a new online ecosystem that is as pervasive and important as email or IM or the Web. They know that they can’t do that on their own: plain and simply, they’re not that deeply trusted. So they are fostering efforts to build alternative versions of these ideas, and to standardize server-to-server communications: the “let a thousand flowers bloom” approach. These other visions will come both in the form of open-source projects and commercial software — for an example of the latter, check out this announcement that Novell Pulse is planning to federate with Wave. (Thanks to Michael Kleber for pointing this out to me.)

So keep in mind that the current thing people will usually point to as “Wave” is just Google’s first-draft realization of these ideas. It was released a bit hastily (and perhaps a bit too early), and has lots of flaws, but this client is just scratching the surface here. There’s a lot of evolution yet to come here, both from Google and from other folks.

One thing Wave is not is email. In my opinion, Google did themselves a disservice by spreading the word that Wave is what email would be if it had been invented today, because it leads people to think of Wave as a new version of email. Put that out of your mind: the only thing Wave really has in common with email is that they are both conversational tools for sharing and collaboration. (Well, and they both have things called “Inbox”.) Wave has elements of email, but it also has elements of IM, forums and lots of other things.

An implication of that is that there actually isn’t all that much new about Wave, and a lot of people are dinging it for that. But that misses the point. Wave isn’t about radical new ideas, so much as it’s about a new way of combining a lot of old ideas. You’ll often hear it described as “Forums plus IM”, or “liveblogging plus email”, or something like that. It has elements of all of those, but the combination is what makes it interesting.

The discussion below will mostly be talking about Google Wave — that is, the initial Google client/server version. But the ideas here go far beyond Google, and much of the potential lies in what folks will do with both their tool and the larger architecture.

Next: The Nuts and Bolts

Catching the Wave: Prologue

November 18, 2009

This is a personal introduction from Justin. Many hands contributed to the following series — it was drafted in Wave itself, with lots of back-and-forth discussion — but this bit is my own perspective, so the reader can take my biases into account.

A month or two ago, thanks to my friend Michael, I got an invite to Google Wave; since then, I’ve been playing with it fairly heavily, getting a sense of what it is and what it does. It’s time to talk about that in detail. Those of you who have been curious about Wave, this is the series for you. This is going to be really, really long and in-depth, far moreso than most of the glossy overviews in the press, but I’m going to break it into lots of little articles on particular topics, one per day. I encourage you to share the URL around — this subject goes right to the heart of what this blog is about, and there’s a lot to say here.

(BTW: no, I don’t have any more invites. Sorry, but they went pretty fast, even limiting myself to people who I knew would dig into it seriously. If you ask around, they seem to be getting easier to obtain now.)

Disclaimer upfront: as many of you know, I’ve spent the past two years of my life mainly consumed by trying to build a system called CommYou. That was largely the inspiration for this blog: CommYou was all about fostering productive multi-tempo conversation online. It had a lot of cool ideas — it’s basically my attempt to create the conversation system I’ve always wanted. But it’s never made it past early alpha, because my standards are high: it’s actually in the middle of the second major rewrite now.

So you’ll understand my mixed feelings when I say that the most concise way to describe Wave is, “CommYou, only more ambitious”.

That’s over-simplified, of course: Wave isn’t trying to do *precisely* what CommYou does. But along the way, they wound up coming to remarkably similar conclusions about how you structure multi-tempo conversation in order to achieve serious collaboration. In particular, the look and feel of their conversation system, and the framing of how you present things to the user, are awfully close to CommYou’s.

The result is that I’m just now getting over a sense of frustration at having been “scooped”. The CommYou project is pretty well dead — I’m not dumb enough to try to compete head-to-head against a serious Google project.

That said, the purpose of CommYou was to produce my ideal conversation system. Wave currently has lots of flaws (which will be discussed at considerable length in later articles), but it comes closer than anything I’ve seen to date. So as I get past the frustration, I’m turning into quite a serious Wave evangelist — if I seem to complain a lot, it’s mostly because I can see how great this system will eventually be, and I’m impatient. This is the realization of a lot of the ideas I’ve had for some time now, and I’m hoping to see it evolve into a truly great system.

Hence, this series. Over the next few weeks, I’ll be discussing Wave in enormous detail, focusing less on the basic “what it looks like” (which you can find lots of articles about), and more on what’s really going on here, what Wave is good at, what it’s bad at, what you should be using it for, and particularly why this is going to become an absolutely indispensible tool once they get the bugs ironed out.

So join in, spread the word, ask questions and provide your insights, as we dive into Wave (which shall, henceforth, be the subject of altogether too many mixed metaphors).

As the rest of this series gets posted, I’ll be updating this article with links to the later ones. So bookmark this page, and it will serve as the table of contents for the rest.

Credits: lots of people have helped me with this series of articles. I’d like to especially thank Michael Kleber, Chad Bergeron, Alex Feinman and Anna Bradley, who have done much to help crystallize my thinking, as well as Jessica Polito, my wife Jane for proofreading, backboarding, and generally putting up with me, and Charley Sumner for organizing the first serious Wave I participated in that was about something other than self-referential navel-gazing about Wave itself.

Next time: okay, so what do we mean by “Wave”?

Table of Contents


What is Wave?