Hitting the exponential software growth curve hard

Part and parcel of the software industry is the constant release of new versions of each vendor’s product. We look forward to version 1.

Part and parcel of the software industry is the constant release of new versions of each vendor’s product. We look forward to version 1.0 throughout the beta process, we see 1.1 and 1.2 come along with enhancements and – if you believe the marketing – additional elements of functionality that did not fit into the original development cycle.

(Not because the company failed to think about them in the first place and had to rush them in for the update after user feedback of course.)

Then we get major re-releases and 2.0 comes along. Then 2.1 and so on – nothing new so far I know, bear with me please…

What the vendors sometimes don’t talk about with any specificity is the amount of code growth that goes on between the different phases of the application’s development. Is the same amount of growth going on between 1.1 and 1.2 – and does moving from version 1.0 to 2.0 represent the same as level of code update (and functionality) as the jump from 4.0 to 5.0?

curve'

The reason I pose these posers is that I’ve been getting used to working with QuarkXPress 7.1 – my page layout designer on the other hand is using 6.0 and the thing is that the there has been so much change between the versions that we can’t simply share files between each other. I can read his files, but I have to export backwards (to the previous version) during my saves.

(NB for technical accuracy I recently had the chance to meet Quark CEO Ray Schiavone and he assured me this situation has been or is being fixed.)

So the discussion here is that we should look carefully at new release roll-outs and ask what kind of change (and how much of it) has gone on. Also, perhaps we should ask ourselves why the company behind the application has carried out such a big software upgrade. Were they too busy doing something else? Were they just pushing tired out goods into the market? Was there a genuine reason why they went back to the drawing board and performed so much re-engineering?

We can ask the same question of small changes of course – are they just being done for marketing purposes? Are they being done to create an impression among the customer base that they are using a constantly evolving product? Is the company about to host its annual user conference and they need a product to announce?

Or – just maybe we need better release notes?