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?

The Vexations of Text

November 28, 2009

Catching the Wave has been on hiatus this week, due to a combination of me being off at a Microsoft seminar all week and not really wanting to post while everybody’s busy with Thanksgiving.  It’ll resume next week.

In the meantime, though, I commend to you this article from siderea on LiveJournal.  She makes an excellent point that, while text is a more powerfully expressive medium for communication than it’s often given credit for, there are some essential conversational subtleties that are difficult or impossible to convey this way.

I’m curious about what people think about this, and particularly whether you think that there is any difference for up-tempo / synchronous modes of communication.  IMO she’s entirely correct for slower modes like LiveJournal, but I wonder if the extra subtleties of timing play into up-tempo.  For example, I’ve found that pauses in an IM conversation can be fraught with meaning; what other details are available there, and how much (if at all) can they help with the limitations she points out?

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?

Fake Identity, coming to a lawsuit near you

October 5, 2009

It’s been building for a while, but here’s the best example I’ve seen so far: a group of teens have been sued for impersonating another.  Basically, the four teens created a Facebook profile for their target, putting a lot of work into making it look real, and then used it to make their target look like a racist ass.  This probably isn’t unusual by now, but they went far enough to cause demonstrable harm to the kid, resulting in a defamation suit that sounds like it has a good chance of winning.

It does lead me to wonder where this is all going legally.  When we talk about “identity theft” today, we’re usually talking about schemes designed to steal your money or credit.  But this is a different sort of identity theft, perhaps even more damaging in the long run — taking control of your public profile and changing what people believe you to be.

I’m struck by the fact that, when this did turn into a lawsuit, the suit was defamation.  This seems to imply that the basic action of impersonation either isn’t illegal, or at least doesn’t result in a harsh enough punishment.  My gut says that it probably ought to be quite illegal, although my head says that it’s always difficult to write laws like this without pretty severe unintended consequences.

Opinions?  Do you think there should be harsh laws against this kind of identity theft — designed not to steal, but simply mislead?  Do you think it’s possible to write such a law well?  What sort of consequences is it likely to have?  I’m chewing this one over myself…

More on the legal limits of anonymity

August 21, 2009

Serves me right for letting myself get behind on my blog reading.

Yesterday, I talked about the need for clearer standards on when a publisher gives up an anonymous poster’s identity.  As it happens, there was progress on this front just a few days ago: Ars Technica posted a good article on almost this subject.  It’s not about blogging in this case, it’s about an apparently-false anonymous whistleblowing claim, but the basic principle is close — someone is claiming to have been defamed by an anonymous claim, and wants to find out who made the claim in order to sue them.

This time, the case apparently made it up to the appeals court, which has taken the contradictory previous decisions and attempted to craft a reasonable compromise.  The article gives the exact wording, but it basically boils down to requiring the plaintiff to demonstrate both that there are reasonable grounds and that they actually need the person to be unmasked.

So yay for intelligent judges, and at least a little progress towards laws and precedents that make sense in the modern age…

The inevitable limits to anonymity

August 20, 2009

I suspect that most folks will have heard about this, but I’ll refer my readers to this good article in SFGate about the “Skanks in NYC” case.  (Thanks to Aaron for the link.)

The short version: we’ve finally gotten a court case that came out with a ruling I’ve been expecting for a while, saying that there are limits to what you can get away with in blogging.  For a long time, there’s been a tacit assumption among many bloggers that they can say anything, and would be legally invulnerable — they saw that the system treated them as anonymous, and kind of figured that that meant they were untouchable.  This case ruled otherwise: it says that this particular blog crossed the line into defamation (at least, enough so to get a subpoena).  Moreover (and much more seriously), it ruled that Google has to turn over what records it has about the “anonymous” blogger.

Like I said, I’ve been expecting this.  The lines between blogging and publishing have long been blurry, and some blogs are obviously treading in libel territory.  I don’t see any real reason why the court would consider an op-ed column potentially libelous, while ignoring blogs like this.

Is it a good thing or bad?  Hard to say.  Anonymity does have its place, and is occasionally deathly critical; OTOH, 99% of uses of it (at least in the US) are simply venal.  IMO, this is an area where the law really needs to grapple with the problem seriously.  In particular, we need crystal-clear rules for when a “publisher” (such as Google in this case) can be coerced into turning over an anonymous poster’s information.  In this particular case I happen to think that it’s reasonable, but it’s the top of a slippery slope to more questionable requests.

In the meantime, keep in mind that your anonymity is not legally protected, at least not to an absolute degree.  So if it really matters, make sure that your tracks are well enough covered that the publisher’s contact information isn’t enough to track you down.

Opinions?  How do you feel about the legal lines here?  Is the demand to Google reasonable in this instance?  Where would you draw the line?