All in the <head> – Ponderings and code by Drew McLellan –

Writeboard Document Locking

After 37signals responding so quickly to my rant yesterday about the inability of Writeboard to prevent multiple editors destroying your document, I thought it was only fair to go back and try the new feature out.

Repeating yesterday’s test of inviting a small mailing list of friends to come work on my document with me yielded a smaller number of participants than yesterday (I guess they’re all bored with my antics by now, which is understandable enough!), but three of us gathered and started bashing out some edits. In a lot of ways, this was a far more reasonable test than yesterday’s, as a group of three is far for realistic than the mass of us who jumped on the thing yesterday.

With three of us editing, I saw the “Hold on” message just once, but I know the others saw it too at points. Our edits were fairly quick, so this sounds about right. Even so we managed to screw up the document and lose some work. It went something like this:

  1. I made an edit
  2. John Oxton added a line to the bottom
  3. I hit edit again, but Oxton’s text never appeared
  4. I made by changes, saved
  5. Oxton’s words of wisdom were lost to the world

In fact I’d only realised John had made a change by flicking back through the version lists.

Hats off to 37signals for being agile enough to respond to feedback so quickly at get something in place. Writeboard is a better product for it. However, it’s not quite fixed yet, and in some ways is a little worse than before – a document locking system that doesn’t quite work is more dangerous than knowing that there’s no document locking system at all and that you need to be careful. I’m sure the guys will get this ironed out.

Over in the comments on SVN, Jason claims that real-time collaboration is only useful 5% of the time. I’m not sure where that figure comes from, but it’s probably in the right sort of ballpark for an awful lot of customers. However, there’s a whole world of difference between wanting a system that does real-time collab, and having a system that can cope if multiple people happen to hit the same document at once without losing data. I think that most would be of the opinion that the latter is essential 100% of the time. But I think 37signals understand that now.