Problems with the iPod nano may embarrass Apple, but at least users get defective hardware replaced. Technology analyst Bill Thompson thinks it is time for software vendors to accept their liability.
Like many who gazed longingly at the iPod nanos on display in the shop window at my local electronics store I felt a degree of schadenfreude when news started coming in of cracked screens and scratched displays.
Problems have emerged with the iPod nano (centre)
Apple says there was a manufacturing fault with some LCDs, and will be replacing nanos with defective screens, although it does not yet accept that the tiny players scratch too easily.
Doing so would land it with a massive bill for replacing or repairing them all - and it would have no choice because the iPod is a physical object.
If goods aren't of satisfactory quality then purchasers have pretty clear legal rights, and in the UK the Office of Fair Trading and local trading standards offices will ensure that they are upheld.
Sadly, the same sorts of protection don't hold for software.
When you pay for a new copy of Microsoft Office or AppleWorks you buy a licence, not the software itself, and it comes with a long and detailed legal disclaimer which carefully dodges many of the rights you might expect to have.
For example, one of the programs on my laptop has a licence which tells me that it is provided "'as is' with all faults", and that the developers "disclaim all warranties, whether express or implied, including without limitation warranties that the product is free of defects, merchantable, fit for a particular purpose and non-infringing".
The licence goes on to tell me that the developers "will not be liable for any indirect, special, incidental, consequential or exemplary damages arising out of or in any way relating to this agreement or the use of or inability to use the product".
Although they do admit that local laws may mean they can't wriggle out of some responsibility for what their software does.
This licence in question is the one that comes with the Firefox browser, one of the most popular free software applications, but commercial software is just the same.
You may be able to get a refund on software even after you've opened the package and implicitly accepted the terms of the licence, although some retailers will argue that you have already "accepted" the product by installing it.
But the bigger issue is what happens when buggy software leaves your computer open to attack from viruses, worms or hackers.
If your hard disk is trashed, or your confidential data has leaked out onto the net, then you have no legal comeback.
A friend of mine is a children's writer. When she writes a non-fiction book she is typically asked to sign a contract that indemnifies the publisher against legal costs resulting from errors of fact in the book.
If she was to suggest a school experiment that involved drinking sulphuric acid, because she'd confused it with acetic, then she'd be in big trouble.
Yet I can't do anything when a company produces software that exposes my online banking details to any script kiddie with time to spare, because I've agreed a licence that removes such liability.
Buggy software can be a pain to tidy up
The point is not that we should encourage lots of lawsuits against software companies, or have unlimited liability for software. After all, I can't sue Toyota if my car doesn't start and so I miss an important meeting, although I can sue it if a design fault means I crash on the motorway.
But the complete lack of any liability is an anomaly that should be removed. Carmakers have learned to accept the obligation to design safe cars, even though they complained about it at the time, and it is time software developers did the same.
Security consultant Bruce Schneier, one of the most sensible, well-informed and insightful people working in the field, has argued for some time that without proper vendor liability we will never solve the problems of computer security.
He points out that "the costs of insecure software aren't borne by the vendors that produce the software", because when someone's PC gets infected with a virus it isn't Microsoft who ends up paying to have the system cleaned.
I am painfully aware of this at the moment, since I'm systems administrator in my household and I spent over five hours last week upgrading the firewalls, anti-virus and anti-spyware programs on our three laptops and two desktop computers.
I'd rather do the regular housework than have to cope with an infected system - but I'd rather that the housework wasn't so necessary or time-consuming.
One argument against product liability for software is that it would destroy the industry by placing unacceptable costs on developers, and that it would wipe out the open source movement in its current form since there is no way an organisation like the Mozilla Foundation could distribute Firefox for free under those terms.
Bill is not happy with licences used by Firefox and others
But if a system is unjust then it should not be supported, and an unwillingness to strip undeserved privileges from a group, however noble their cause, is not sufficient reason to maintain the current dispensation.
Programmers have built their business models on a freedom from responsibility which would be considered wholly unacceptable in almost any other sphere of activity, public or private.
We all pay the cost in wasted time, lost files, hacked systems and reduced productivity. Our children spend time in lessons waiting for interactive whiteboards to be repaired while businesses around the world suffer from crashes and security breaches.
If Apple turned round to nano users and pointed to a shrinkwrap "licence" on the high-design packaging that exempted it from the provisions of consumer protection law it would never get away with such a blatant disregard for its customers' rights.
Why then do we allow software developers to do exactly that?
Bill Thompson is a regular commentator on the BBC World Service programme Go Digital