Here's an odd couple: Microsoft and the Linux Foundation. These two organizations, normally on opposite sides of almost any issue, agree that a new set of guidelines making software vendors liable for knowingly shipping buggy software is badly off base. They claim that the guidelines are likely to lead to a flood of expensive lawsuits against both large commercial vendors and small-scale open source developers. What's more, it could impose expensive obligations to scour support forums and the like for notice of problems, a procedure that would be overly burdensome for small developers, say critics.
Yes, this is a warning that developers should follow the issue closely. But there's another side to the story: Don't software buyers, both consumers and enterprise, deserve to get what they've paid for: software that solves the problem it was written to address?
[ The bugs we love to hate: nine of the strangest bugs ever. |
"There is a sense that disclosing defects is bad for marketing," says Fred von Lohmann, a senior attorney with the Electronic Frontier Foundation. Indeed, big software vendors have been arm-wrestling with buyers and consumer advocates over the issue of responsibility for buggy code since the 1990s, he says.
Changing the user agreements: No more free passes for buggy software
A centerpiece for the sometimes heated argument is the ubiquitous user license agreement. If you are one of the relatively few software buyers who has actually read one, you know that vendors typically disclaim responsibility for the quality of their software. And as the law is generally applied today, that means an aggrieved buyer can't sue. Would we allow, say, an auto manufacturer, the same luxury to disclaim responsibility?
Software developers may be held to the same standard as manufacturers under the new guidelines. A key passage -- Section 3.05 (b), if you want to look it up -- says that user agreements contain an implied warranty that purchased software "contains no material hidden defects of which the transferor [the seller] was aware at the time of the transfer." What's more, no matter what language the vendor places in the user agreement, the warranty still stands.
The guidelines are just that: guidelines. Written by the respected American Law Institute, an organization of law professors and a small number of judges, the guidelines are designed to help judges apply the law in intellectual property disputes. They are not binding, but because the ALI is highly regarded in the legal community, attorneys on both sides of the argument believe that they are likely to be influential.
Get the independent advice and expertise you need to support a virtual workforce.
The increase in Linux popularity has increased the frequency and sophistication of malware attacks. Read this 2 page white paper now to learn how you can protect your Linux environment with real-time protection that is certified by all major Linux vendors.
Download now »Ensuring acceptable application delivery will become even more difficult over the next few years. As a result, IT organizations need to ensure that the approach that they take to resolving the current application delivery challenges can scale to support the emerging challenges. This handbook elaborates on the key tasks associated with planning, optimization, management and control and provides decision criteria to help IT organizations choose appropriate solutions.
Download now »A common misconception is that mid-range storage requirements are dramatically different than that of a larger enterprise. Mid-range storage users may require less capacity, but they have similar functionality and management requirements. This ESG paper examines mid-range storage needs and reviews a new solution that adjusts size while retaining value, performance and functionality.
Download now »Actually, the most miserably pathetic software it has been my (non)pleasure to encounter hasn't been either commercial OR open-source. It's bespoke.
A lot of this stuff is intended for in-house use, but much of the really bad stuff I've seen was either intended to be accessible by employers or clients via the Internet (and not properly secured) or actually public apps. Online employment processes are among the consistently worst offenders.
One-of-a-kind software is generally not all that pretty, but in recent years it has descended from warty to outright paper-maché. It's mostly rush-job stuff done by the lowest bidder, yet it's often deployed publicly enough to offer a major exploit portal into the corporate network.
Even purely in-house apps have their issues, if not in security, then in reliability.
All in all, we've just gotten too easy with the idea that software should be flimsy, shoddy, and - cheap. Maybe it's time for some reflection. Laws usually get passed when self-regulation fails, but laws are not the ideal solution.
It's well-known that software developers who work for someone else (in other words, do not own their own company) have signed agreements in which they and their employers acknowledge that their code is a "work for hire".
In which case, it is the company, and not the developer, who is considered to have legally written the work.
So, the developer releases buggy code, but if anyone is fined or goes to prison for it, it is the legal author. And that legal author is not the developer.
So, developers, ignore Mr. Synder and code without fear. Those draconian agreements which you were forced to sign if you wished to be employed may now come back to haunt the company that forced you to sign them.
Isn't Karma wonderful?
Well, this is yet another sign of the times!
The author writes: "I'm not in the least concerned about Microsoft and other large commercial vendors who have inflicted buggy software on users for decades."
To which I reply: You will care when the entire industry is enmeshed in lawsuits and innovation seizes tight, and even current products (like operating systems and office suites) are removed from the market because they have exposed their companies to too much liability.
Getting the lawyers involved in this way is an invitation to disaster. It is using a nuclear bomb where a rifle is more appropriate.
There is NO KNOWN WAY to prove that any (significant) bit of software is correct. NONE. It's a problem that has been worked-on for decades. Provably correct code is a dream that only happens with trivially simple code.
Now, I don't care for the free-for-all that occurs now, but inviting the lawyers will destroy the computer industry in our nation.
If it happens, I'll look seriously again into giving-up my role as a senior software engineer and take-up short-order cooking where a mistake only costs around $1 instead of potentially millions of dollars.
But you now what? The way things have degenerated in the world and especially America, I can see this happening soon. Good thing there is a Waffle House around every corner!
Bzzzt, wrong answer. Clearly you do not understand the impact of four decades of Moore's Law on the complexity of hardware. Browsers are simple compared to an eight-core, multi-pipeline, tri-level back-side cached CPU!
Moreover you also do not seem to know that the majority of computer instructions executed are in imbedded code the VERY often have life or death consequences.
This would be like expecting the company that does your lawn service to guarantee that every blade of grass on your lawn will be a certain shade of green or darker and that there will always be enough moisture and that there will be no thin spots, and guarantee this for some number of years from now. They can't control the weather, they can't control who walks on your lawn or throws trash on your lawn or which neighborhood dogs do their business on your lawn or how much rain you get or how long the sun shines each day, or what other activities occur on your lawn, or any of a myriad of other factors.
Anyone who has done tech support knows how many ways a user can find to misuse or abuse a piece of software. And then you have the almost impossible task of trying to reproduce the exact conditions within which a problem occurred before you can determine who is at fault.
You can hold a vendor to a reasonable expectation of good performance under conditions within which the product has been designed to run, and you have a right to expect the product to perform as advertised. And that's all. Not every error is a bug. Some errors are simply conditions under which a piece of software was not designed to run.
By the way, I don't work for Microsoft or any other software vendor. I just have enough common sense to know that writing software is no more an exact science than maintaining your lawn is.
so does this suggest that individual devlopers/companes should charge 100 times or may be more then the usuall price to their costomers just in case if someone sues him/company for the 'might be buggy' software in order to tackle many lawsuits, cuz its next to impossible to test the software for all existing OS and all the environment combinations,it will take years to test each line of code !!!! ????
Big Fishes only care for themselves.Where would small time developers/companies be if this is imposed strictly,not because they sell buggy softwares,bugs might occur any time in any condition ..not known at time of developement.

Sign up to receive InfoWorld Resource Alerts
