What if?

 In one of my favourite Futurama episodes, Professor Farnsworth displayed his “What if”  machine.  It allowed a projection of the future based on the “what if” assumption made by one of the characters.  In an earlier post I discussed “Geekonomics” by David Rice.  Rice meticulously researched his topic, citing many references to support his case.  The main difference between his book authoring and my blog writing is the time spent in preparation.  This blog is far more speculative and without the time spent looking into corroborating evidence makes a far less convincing case.  After all, blogging is not journalism

So, having cranked up the “What if machine” let’s give it the opening statement:

What would happen if adhesion contracts of software manufacturers were not permitted in court?

The full pretext is really that software manufacturers would then be held liable for damages caused by insecure or buggy software.  Differences in the laws between countries, makes this an issue that would not work out as simply as I would have you otherwise believe.  These differences are beyond the scope of this discussion.

Insurance companies play a large role in protecting companies from paying damages.  Looking at the automotive insurance industry, we can see that the track record of a driver plays a part in the insurance premium the driver is charged.  There are estimates of how much insecure and buggy software costs industry and the general public – so it can be reasoned that insurance companies will know approximately the funds required to cover the payouts.  On the flip-side how to rank software development companies such that their premiums are “fair” (read competitive) will start off being very “hit and miss”. There is little statistical analysis of developer traits and development practices that reduce the likelihood of insecure software.  “Better Quality Assurance” may be the answer, but defining what this means is problematic.  As such, insurance companies are unlikely to be able to set reasonable premiums for software development companies.  

Another issue which would need to be confronted relates to open source projects.  Should they be immune to prosecution under some “Good Samaritan” act?  Some open-source projects are likely to be profitable due to on-going service / maintenance contracts.  Others aren’t…  Should the profitable companies be exempt on the guise that the software they provided was “free”? 

Once insurance companies become involved, there’s likely to be far more interest in good development practices.  Defining good practices and proving companies stick to them appears to be a great way to improve overall software quality.  (When defining “quality” in terms of “defect severity and defect count”).  Until reliable metrics are available to insurance companies, it is likely that liability insurance premiums will be based simply upon the upper limits of payouts.  I would anticipate that most insurance companies would set their fees “fairly high” – but what this means in practice is beyond even my advanced powers of speculation and making things up…

High insurance premiums would hit the small software companies the hardest.  They either have their profit margins hit hard, or they run the gauntlet of not using a liability insurance policy.  It’s easy to speculate that these companies would be the first to disappear from the market.   With insurance, they may no longer be profitable, without insurance, it’s only a matter of time until an expensive date with the courts…

Larger / more profitable companies will start driving demand in the insurance market.  In an effort to provide competitive premiums, insurance companies will need to start defining the software company’s equivalent of “careful rating 1 drivers”.  Chances are this will lead to more practices being established to standardise the way in which development staff are selected.  Developers with formal learning (such as recognised degrees and diplomas) and/or up to date certifications will become more highly ranked than “skilled amateurs”.  Demand for courses may well be overwhelming at first – leading to a shortage of qualified developers.  Alternatively, some highly skilled but officially unqualified developers will likely leave the industry – leaving the computing industry somewhat poorer as a result.

So, will the abolition of adhesion contracts in the form of End User Licence Agreements lead software companies to providing higher quality software?  Will this cause a “strive for perfection” at the expense of fast paced innovation?  I can’t tell you the answers, but I don’t think we will need to wait terribly long to find out.  I rather think the current legal position of software companies is akin to the cigarette companies of yesteryear.  They will cling on to their position as long as possible, but sooner or later some clever lawyer will present a position that the manufacturers won’t be able to weasel out of.  When this day comes, the software industry will change…