The essential arguments that Mark Minasi makes in The Software Conspiracy: Why Software Companies Put Out Faulty Products, How They Can Hurt You, and What You Can Do is that it's possible to write bug-free software, and that consumers should demand it. Instead, shrink-wrap software companies set their goal as "good enough" instead of "bug free." This is no longer a tolerable goal for mass-market products, and it will ultimately harm the software industry as well as end users.
Although Minasi doesn't even try to supply evidence for "conspiracy" (perhaps the book's title is something the publisher suggested), he does name names and produces smoking guns suggesting that many American software firms are getting away with slop and greed.
For example, the chapter "Software and the Law" documents subtle changes that companies such as Microsoft have slipped into their products' End User License Agreements (EULAs), the case histories of EULAs in American courts, and the dubious status of the claim that they "license" software rather than "sell" it. His trump question is: Why do companies refuse to publish EULAs on their web sites so that customers could know the terms before running the install program?
As common sense as Minasi's argument is, it remains that there are at least three errors in the book:
- That the word "algorithm" is derived not from Al-Khwarezmi's usual appellation, meaning "man from the land of Khwarezm," but from some nickname that means "man from the town of Khiva".
- That Microsoft "built" MS-DOS (the most generous word possible would be "adapted").
- That the Y2K bug was in large part due to use of a two-digit ("99") year for space saving, which is dubious since any Cobol programmer would know how to save more than that by using a binary, rather than an (ASCII), display format for dates.
While trivial errors such as these usually would not affect a book's argument, this is an exception. Why? Because these errors make me wonder about the claim that we should be able to write bug-free software within the real world's constraints of time, money, or boredom. If Minasi, who is obviously conscientious and experienced, can't write bug-free books, why would we expect higher standards from programmers?
Electronic Review of Computer Books
Modern airliners, automobiles, and defense systems rely on software to operate. This mission-critical software is often plagued by serious defects or bugs, and when some bugs bite, they kill. Building on that theme, computer journalist Minasi reveals the true cost to business and society of flaws in mainstream software. He examines software bugs in detail, pointing out common defects and providing commonsense advice on how to cope with software we rely on daily. Minasi also explodes the myth that "it's impossible to write software without bugs"--a myth he alleges many software firms want us to believe--and he warns about proposed changes to laws that would allow a software firm to sell a dangerously flawed or completely useless application and leave no recourse for victims of its failure. Offering step-by-step advice on what consumers can do to help solve the problem of buggy software, he concludes by presenting potential future scenarios, good and bad, and the consequences that could result from inaction. A call to arms for software consumers and a warning to the industry, this is a worthwhile purchase for most libraries.--Joe J. Accardi, Northeastern Illinois Univ. Lib., Chicago Copyright 1999 Cahners Business Information.
A lucidly written, eminently practical guide to fighting back against the modern scourge of software "bugs." Ever had your keyboard freeze up in the middle of creating a document? Ever lost a file because your computer mysteriously shut down? Software problems like these are costly, frustrating, and far from rare. Technology journalist Minasi tells us why software is so defective, and what we can do about it. Minasi advocates a "buyer beware" approach: "Companies make software and sell it to the public despite the fact that there are hundreds of thousands of defects in the software, defects that the company is fully aware of when it sells it." How do these companies get away with introducing defect-filled products into the marketplace? Minasi offers a surprisingly candid answer: people have such abysmally low expectations about software that very few complain. Thus, software companies sell whizbang features, while skimping on quality control. The cultural divisions within software companies also contribute to the problem. Marketing departments wants dazzling features and a short design process, while programmers want time to create superior products. Mostly, marketing wins out. Moreover, the computer industry press rarely criticizes software companies, who provide essential advertising revenues. Minasi isn't optimistic about the ability of consumers to gain legal redress for software-related problems. He describes the flagrantly anticonsumer licensing agreements contained inside boxes of "shrink-wrapped" software. These licenses are basically one-sided contacts offered to consumers on a "take it or leave it" basis. The software lobby has succeeded brilliantly in fending offefforts to enhance consumer protection. What Minasi proposes is that consumers learn how to take care of themselves. He provides an array of troubleshooting suggestions to combat bugs, as well as practical advice on how to seek technical support. An absorbing, easily understandable, and inspiring book about standing up for your rights in the realm of defective software.