I have been writing software since 1968. I can remember the day I first wrote a few pages of code that was correct on the first draft. It took years to accomplish that for simple codes. Humans just are prone to errors. We mis-type. We mis-think. We are off by one and in the wrong place and add when we should subtract. That’s reality.
In the world of IT, most users of software rely on someone else to supply software. That makes sense. It’s specialization, one of the greatest inventions of humans, to have experts do what they do best. Naturally, we pay experts well. That applies to programmers and software projects as well. Out of this has grown global mega-corporations supposedly providing good software for everyone to run on their PCs.
The typical model breaks down for several reasons:
- the larger the organization or the software, the more it is prone to errors/bugs,
- mega-corporations need to produce large codes simply so they can sell the next big thing once everyone who will buy a copy of the old one has done so,
- mega-corporations are also run by businessmen, lawyers, accountants, salesmen and not usually by programmers who are busy programming,
- mega-corporations spend a lot of effort to become monopolies so they don’t have anyone left to compete with them and anything they produce will sell because people need something…,
- in a monopoly, the supplier can charge whatever he wants with whatever features he wants at any price he wants, and
- good software requires new ideas from time to time. New ideas rock the boat at mega–corporations and are discouraged.
We’ve been through decades of M$ and its partners pushing really lousey software because they had a monopoly. FLOSS was there all along but it could not succeed in the market because of sweet back-room deals and exclusions and restrictions. FLOSS survives because the world needs software and can make its own.
FLOSS is superior by all measures, too. Bugs per thousand lines of code, for instance. Lines of code per applications, too. Cost per application. FLOSS is good stuff. If you haven’t tried it, get yourself a computer and visit Debian GNU/Linux.
According to the latest survey by Coverity, FLOSS trumps non-free software in code qualty. That’s reality in spite of what some ugly commentators state here. The reasons are obvious to anyone who thinks about it. If your priority is to produce good code, it will happen. FLOSS is not intent on propping up a monopoly, or locking-in customers or making megabucks, just good code.