April 30, 2012

Version Management Recovers Wasted Time at Work

Version Control

wasting time at work infographic

“Trying to find key information” is listed as the second highest time-waster on the infographic “5 Things That Waste Your Time at Work”. In this article, I’ll describe version management’s role in organizing a subset of that key information, which I describe as the problem of variant copies.  

When you have multiple, differing, related, and unmanaged copies of a document, you have what I call variant copies of a document.  Version management tracks the relationships between all the variant copies, at which point we can call them versions of the document.  

But enough with semantic hair-splitting! What I’d really like to talk about is how we often think of a document as a single entity, when typically it actually exists as a number of unmanaged variant copies. Those variant copies are a source of trouble: not the least of which is they form an impediment to “trying to find key information”, as illustrated in the infographic.  

The next step is to explore how version management helps tame the unmanaged copies and save time and effort.

Blog as Example

In a previous blog article, I talked about the problem of variants in our everyday world, and speculated on how version management could help ease some of the issues that arise when working with multiple copies of a document.  

While working on the article, I realized the process of blog writing itself created a problem of unmanaged variant copies!  Authoring a draft in my favored document creation tool, Microsoft Word, was the first step.  Five(!) variants ensued:

  1. .docx file (authored in Microsoft Word)
  2. .pdf file (created to be passed around for general review)
  3. Drupal blog editor, HTML format (pasted content from Word into web interface)
  4. .html file edited in Visual Studio HTML editor (added HTML not supported in the Drupal interface)
  5. Published Drupal blog (minor edits by publisher in our Marketing department)

Three problems arise because content changes are introduced in all but one of these five unmanaged variants:

  1. I’m not sure which variant contains which edits
  2. I have to manually move edits back and forth between each variant
  3. And germane to our topic-at-hand, I’m going to spend time searching through the variants to figure all this out.

Does this ever happen to you? I find myself, unhappily, often reliving similar scenarios! That’s because, even though I think of my blog article conceptually as a single document, just beneath the surface is a chaotic, churning sea of unmanaged variant copies.  

How Version Management Could Solve the Problem

Software developers don’t know how good they have it. Despite working with thousands of code files and sometimes thousands of versions of each file, they face this type of problem far less often, and they have powerful tools to help answer the questions that leave me tearing my hair out when manually managing blog article variants.

If I were using a software version management service like Perforce, I would have branched each of the copies into managed versions of the original document.  My version management software then knows the relationship between all of them. Further, I can easily propagate changes between the versions, visualize the differences, and interactively or even automatically reconcile every change between all 5 versions.  Now that’s a time saver, whew!

As I wrote in my previous article, “The Problem of Variants in Our Everyday World”, version management acts a virtual “man behind the curtain”, taming the time-wasting, unmanaged variant copies that seem to spring up like weeds in our workflow, and turning them into cooperative, managed versions. 

The Cloud is Not Enough!

As a side note, the infographic that I linked at the top of the article suggests that cloud technologies are the main answer to finding needed information.  Although the cloud may help by reducing the absolute number of unmanaged copies, I’ll argue that without version management, you are still often left alone to make sense of the chaotic mess of what’s left. Here’s where Perforce is coming to the rescue with our mission of Version everything. 

I’d love to hear about where unmanaged variants are cropping up in your work!