Re: OSS Java vs Commercial

January 24th, 2003 by Hen

Steve’s comments got me thinking on a tangent I like to use to hammer home why open source is better than commercial.

It goes like this, and is based on the fact that computer programmers are craftsmen using engineer methodologies to match the demands of the overlords [managers].

Which product do you expect to be better from a craftsman? The lovingly created piece of art that they made for their own home, or the one they made for the wealthy customer who is demanding it be done tomorrow.

The answer is that it depends. Mainly on whether the wealthy customer is supplying resource that the craftsman cannot provide. Therefore a goldsmith’s house is not full of gold. An Oracle DBA is unable to churn out open-source based systems sitting on Oracle. However, if the wealthy customer is not supplying any extra resource, just what the craftsman already has, then I’d much rather have the one the craftsman makes for themselves.

Metaphor meaning: Rather than buy an expensive piece of code that some programmer of unknown quality churned out to a tight deadline, use a piece of open source, and hopefully free-beer, code that a craftsman is putting their reputation on the line for. When did you last see an internal Oracle developer putting their name on the line? When did you see a MySQL developer putting their name on the line? I believe the latter is more common than the former.

There are other considerations though. Product and support.
* Companies write a product that they think a customer will want.
* OSS Developers write a product that they want.
* Good companies provide a support structure to Developers, testing, user-analysis, bug-report handling, user-complaint handling. In a good company, this makes the developer’s job easier and I believe, the product better. Few companies have the resource to be a good company it seems. More likely the support is non-existent. Testing is limited, bug-reporting is left to developers, user-analysis is a bunch of management guesses and user-complaint handling is dealt with by clueless tech-support front-line with printed up notes.
* OSS Developers support directly. This breaks down when user level exceeds developer level. The solution here is that developers stop supporting all users until some of those users can be classed as developers and the system is rebalanced. Commecial companies can upset this by providing their own support, as it can send an OSS project to stagnation or development collapse.

There is one other big difference between an OSS product and a commercial product. OSS doesn’t die. When a company dies, its product vanishes from the market and all is lost. When an OSS project dies, most of the time the site will sit there for a couple of years untended. The project may be restarted by a new individual at any time. Sometimes the bandwidth vanishes, but as there are numerous copies of said code around the world, chances are that it can be renewed there.

So why use OSS? Quality [the coders care]. Stability [it’ll be around forever].

Why not use OSS? Lack of necessary features [not what the user wants]. A tiny domain [few potential users, so developer loss hits the balance hard]

One Response to “Re: OSS Java vs Commercial”

  1. steve Says:

    All you need it love.. doo doodoo doodoo..

    You have to love what you do