The cost of software development goes up exponentially as the demand for reliability increases, since there is an ever increasing need for checking, double-checking and checking again. Debugging is not cheap! This is why you'll find that a piece of business software for trading costs MANY times more than your desktop spreadsheet - it's not just a question of functionality, but of reliabiltiy and when things go wrong on the LSE you're talking about $trillions of trades each day. When it comes to human life such as NASA or Boeing's flight control systems, you're looking at software that has been rigorously tested and debugged line by line over many years. If it goes wrong, people die. Full stop. Now the point of all this is that in consumer software (such as that used to make your fridge order some more milk), no-one really cares if it goes wrong and you have en extra pint arrive on the doorstep. If you put in the cost of making this software rock solid, it'll be too expensive for people to buy.