Open Source – Is It All Hype or Just Good Software?
By Randy Kemp
Open source software: Is it hype or just good software? Well, before we go into this question, we really need a definition. Let’s start with this good, basic definition of open source. They say, “Open source software is software for which the underlying code has been made available for users. Users are then able to read it or change it as they wish.” This is a good definition. But how do we find good open source software, if such a thing exists?
Are you into country music? If so, do you remember a tune called “Dust On The Bottle” by David Lee Murphy? Well, the song is about this young lad, who goes to this country wine maker named Creal, for something to impress a young lady. And he pulled out a bottle of wine, covered with dust. Let’s examine a couple lines from this song, and relate it to open source software.
“There might be a little dust on the bottle. But don’t let it fool ya ’bout what’s inside.”
So we get our first inkling about open source. It appears to be dusty on the surface, but it is good inside. And that is the problem. Not everyone has a person called Creal, to tell them what constitutes a good bottle of wine – let alone good open source software. Now let’s take another verse of the Murphy song, that gives us a better clue.
“There might be a little dust on the bottle. It’s one of those things that gets sweeter with time”.
Now before we get into this “sweeter with time” thing, let me give you a bit of background, as to why I can speak on these things. For several years, I was a software developer at Motorola, where I wore many hats. Three years of working with Oracle and Java, and three years of working with ASP.NET and SQL Server. In addition, I wore the hats of technical writer, project manager, business analyst, trainer, and six-sigma black belt. But I ran web servers for engineers, based upon the open source web server Apache, and scripted UNIX with Perl, another popular open source product.
So let’s start this “sweeter with time”, with a product called Tomcat. Tomcat is a Java product, which is under the Apache organization umbrella, and the source was initially donated by Sun Microsystems. Tomcat is basically used to be a java interface between databases, like Oracle, and a web server. There was a lot of rumble initially that Tomcat was really buggy. But when it was released as open source, the worldwide community of super coders went to work cleaning it up. Today this product is in the same class as any commercial equivalent. So it has gotten “sweeter over time.”
Another example of “sweeter over time” is L.A.M.P. L.A.M.P. is a hybrid of four products, named LINUX, APACHE, MYSQL, and PHP. What we have is an operating system (LINUX being the open source version of UNIX), a web server (APACHE), a database (MYSQL, even though I consider POSTGRESQL to be just as good), and a scripting language (PHP). Each of these products has been successful for many years. But together, they constitute a powerful combination, for running complete web applications, with dynamic (database) content.
Now there are a couple of points here, that need to be shared, so as not to see open source as cut and dry.
1. If you are running critical applications, make sure you give sufficient time, after a new architecture is introduced. So if Apache is going from 1 X to 2X, Tomcat from 5X to 6X, or Perl from 7 X to 8X, don’t be the first on the technology bandwagon. Wait until Apache 2.2 X, for example.
2. Insure there are software support companies available; it is it critical to get a fix right away. I know, for example, that MYSQL has service contracts available, from the commercial company that oversees the software.