A single code line: what is it, and why is it important. 

No matter how tech savvy you are (or not) you'll have come across single code lines.  Perhaps you don't realise when you have, but you have.  If you use accountancy software for example (e.g. Sage or Xero), you know that there are lots of other companies using it, and that there are periodically updates to the software.  It gets better every now and then.  But you don't notice when it happens, you just log in and there it is: better. 

The same is true for Ignite's insurance software.  We have one version of our software and we update it every month or so, to make it better.  

We do this even though it makes development slower.  You see it'd be much quicker to simply clone the latest version of your system and give that to a new client, rather than to merge all the functionality and fixes you've done for all the previous clients into a single code line.  

Why is this important?  Well, because other companies don't use a single code line.  Other companies sell upgrades.  Fair enough! (you cry) they've got to make money, and you'd be right.  But what if you don't buy the upgrade?  Answer: you're system gets left behind and you're stuck on a time-bomb of a system.  And if you try to upgrade in future it might not work, because the people who used to work on your old version one, or two, or five years ago have forgotten how it works, moved to another company or retired.  Then hey presto: you've got a legacy system.  Suddenly upgrading is a business risk, and you're going to have the same problem again in one, or two, or five years. 

As a software house if you don't have a single code line you end up with a tangle of systems a bit like human evolution's ancestry as in the diagram shown: lots of defunct versions that get left behind along the way and go extinct. 

One of our esteemed competitors recently announced that they're moving to a single code line.  Great news, good idea.  Two questions: what happens to all the poor buggers who're on the old versions?  And secondly do you really expect us to believe that you're going to stick with a single code line in future?  I'll believe it when I see it.