Friday, July 8, 2011

"Version control" is a four-letter word

The title of this post was said to me in a phone call yesterday morning by a team member, as part of apologizing for making version control harder. (See previous post.)

Version control is a very frequent problem. Pretty much no document is written by just one person at a time; there's one specialist editing their part, the economist adding comments to every bit asking for details on costs and benefits, and me trying to correct people who think the a in "preamble" is capitalized. Documents are stored in a server everyone has access to. All tech writers and I know at least some RDMs would prefer people to work in server documents. It's just one document, it's simple, you can see what everyone else has done, there's no risk of changes being lost due to working in different versions or someone having problems with their own computer. The only problem is that when one person is in the document, no one else can be. If someone else tries to open it, it's locked for editing, and they can only do so in "read-only" mode. But it's very rare that multiple people would need to be in the document at the exactly same time, so it seems clear to us that working on the server document is much better.

Not everyone bothers, though. Some people try to work in server documents but give up at the first sign of it being locked for editing, while other people clearly don't even try. In either case, they save a copy of the document somewhere else and make their changes in that. Then it's my job to combine the original document and their version. Microsoft Word has a tool that does this relatively easily, but depending on the document (over a hundred pages, comments and tracked changes by over a dozen reviewers, including some that might be in both versions and some that might not...) it can still take a fair amount of work.

I don't like this partly because it makes more unnecessary work for me, of course, but it also multiplies the risk of mistakes and means that one reviewer can't see what the other has done. Unfortunately, we often can't just tell people to do things our way. My attitude towards version control on the doomed project has been fatalistic most of the time: the project is such a mess that it would be impossible to get everyone to do things the smart way, so trying would be a waste of effort; I'm just making sure I get the time I need for the extra work.

Yesterday, though, it occurred to me that this problem is just a technical one. Why can't two (or more) people work in the same document at the same time? Because that's just how Microsoft Word works. There's no reason it has to be that way. It would be technically difficult but we're just talking about a new kind of computer program, not faster-than-light travel or anything. Multiple people writing a text document together one paragraph at a time is basically what a chat program is, so someone just needs to figure our how to edit previous lines. (It helps that, for this kind of project, you rarely want to delete anything entirely until others have had a chance to review it. Hitting the "delete" key actually just results in text in a different color with strikethrough formatting.) Once you can do that, adding formatting for formal documents should be easy. Or even if that is too technically complicated, something else seems almost as good and much simpler: a server document that can be opened by multiple people and periodically automatically updated. People might not be able to see changes as they happen, but if the document gets updated every two minutes, or even every five, it would still work pretty well as long as the people aren't trying to work on exactly the same part of it.

There would probably be a lot of money in such a program. (Unless it already exists and I don't know about it, I guess.) I doubt my organization would use it even if it existed - too hidebound, too much training and upgrades required, a little behind the times in IT - but I'm sure there would be a market for it at places that are just a tiny bit more tech-savvy than here.

No comments:

Post a Comment