Originally Published: Monday, 2 July 2001 Author: Doug Needham
Published to: opinion_articles/opinion Page: 1/1 - [Printable]

Those Radios are on Mars: Using Open Source in a Closed Source World.

How does a Linux advocate reason with management who might believe only in COTs (Commercial Off the Shelf) software? Doug Needham has some opinions on the subject in this fascinating look at the issues of open source, the enterprise, saving money and, most of all, making good stuff.

   Page 1 of 1  

Linux Advocacy is the role that most Linux professionals are in. Those of us who try to use Linux in our day-to-day work lives are Linux advocates. Some of the hurdles that we must overcome are the dinosaur mentality of line management and executive management that if software did not come from an "established" software house that it is not worth looking at. Most of these people think of software from software houses (Microsoft, CA, ORACLE, etc...) as COTS. I would propose that what is said to these people is that any distribution of Linux is a COTS product.


What is COTS? COTS stands for Commercial Off The Shelf. It represents a number of ideas. One idea is that a company does not need to "waste its time" doing development of a product if they can go purchase a product at the local store, or through some sort of bid process. Another idea is that this COTS product is going to fulfill a majority (if not all) of the needs of the particular problem. Finally there is someone else there to support your COTS product if you have problems with it. You don't have to worry about your Chief Engineer getting offered a better paying job at another company and leaving you stuck on a project.

An example of this is the Mars Pathfinder/Sojourner mission. Sojourner was a robot that communicated with Pathfinder the base station so that Sojourner did not have to have the full communications equipment to attempt to communicate with Earth. Engineers purchased some radio modems from Radio Shack, and enhanced these COTS radios to withstand the harshness of the Mars environment. This was a savings of time and money because the engineers did not have to spend time inventing new radio modems.

However what were these engineers able to do? They were able to take the components out of the housing that the radios came in. They were able to put these electronic components into a housing that protected the sensitive electronic components into a housing that would protect it from the harsh environment. They were not limited by a license from radio shack preventing them from seeing the internal components of this mission critical component of the expedition. Or were they?

As a teenager I frequently took things apart that I bought from Radio Shack. I would open up the back and take the screws off and peer in wonder at all of the components inside hoping to one day understand what they all did. There was one problem. As I opened the back there was a small sticker that said something to the equivilant of "warranty void if cover removed". I did not understand what that meant until I became older and began developing and supporting production applications.

When I was a DBA (Data Base Administrator) if one of the application programmers that I was supporting began using database utilities to work with the database without my (or our groups) permission and there was a problem my response to them would be "Hey, you did this not me you violated the terms of database support. You fix it." The first time I did this I finally understood that sticker in the radio "warranty void if cover removed".

My group was providing support and our customers began doing things on their own that they did not understand. I was able to protect myself by the statement you opened it you fix it. I think that this is the mentality that a lot of people in corporate enterprises have. "We have a COTS product the only ones smart enough to fix/modify it are the vendors, we have to do what they say, and cannot use it outside the scope of the license!" My opinion is this is the vendors way of protecting themselves. To most vendors the "license" and the closed proprietary development model is their version of "warranty void if cover removed"

To revisit our engineers working on Pathfinder/Sojourner, let me ask a question? Did they void the warranty? Yes. If there is a problem with those radios will Radio Shack fix it? Of course not. Radio Shack cannot fix the problem with those radios because the radios are on Mars. What does that mean? That means that the people responsible for fixing those radios are the engineers who opened up the radios. This, in my mind, changes some of the value of COTS a bit.

Did the engineers save time using the radios? Yes. Did the radios meet a majority (if not all) of the needs for the project? Yes. Is there someone outside the project to call for support of those radios? No. Is the project in trouble if the engineers that worked on those radios leave the project? Maybe. A lot of projects have had fears of losing engineers to a variety of causes for a long period of time. They have come up with procedural solutions to a technical problem.

Most corporations require procedures to be written when breaking new ground. This allows for at least a peer to come behind an engineer and duplicate their work, at worst this means that an engineer that is not as senior can work on the same problem following the senior engineers instructions.


"How would all of this apply to Linux and Open Source?" you may be asking. Let us think about what Radio Shack did. What did Radio Shack do to produce the radio modems? They used components (resistors, diodes, capacitors, wire, etc...) to build the radios. They integrated all of these components into what can be used as a bigger component of an even bigger project. What do Linux Distributions do? They use components (the Linux kernel, the GNU libraries, Apache, Samba, etc....) to create an install-able distribution of Linux. They integrated all of these components into what can be used as a bigger component of an even bigger project.

How did the engineers decide what radios to use? My guess would be they had heard of Radio Shack before(what EE hasn't heard of Radio Shack?) and maybe even used Radio Shack radios. Did they just bring the radios in and install them on Pathfinder/Sojourner? No. They did tests to make sure it would work. They studied the schematics. They modified the components to fit into their environment.

How do software engineers know what distribution of Linux to use? Hopefully they have heard of a particular distribution (Red Hat, Mandrake, Yellow Dog, Debian, Progeny, etc...) and maybe even used the distribution. Should they just bring in a distribution and install it in the enterprise? Not necessarily.

My recommendations would be to establish a testing environment within your organization to understand which distribution best fits the needs of your enterprise. Test it out and establish evaluation guidelines. Study the source code. Modify the components necessary to allow Linux to thrive in your environment. If you need help there are too many places that do support of Linux now to use the tired argument that there is no support. If you don't believe me do a search on an Internet search engine for the phrase Linux support. I just tried this on two different search engines. The first one returned about 75,000 results; the second site returned over 100,000 results.


The simple facts are that Linux distributions are here to stay. The best thing to do in the enterprise in these days of cutting cost is to begin to examine how to take advantage of the best technology available at the best price. Linux has the best price/performance ratio out there. You just have to have Linux skilled people to take advantage of it.

If you are that skilled person look for others in your area. Look for the local Linux user group (LUG). If you are a manager and don't know if you have any people working for you familiar with Linux, ask. Chances are you have at least one person who has worked with Linux a bit. If you are an executive and don't see that Linux is on your event horizon ask your managers or senior engineers if there is a place for Linux within your project/organization. You may have Linux installed and not know it.

I don't think there is a majority of people in the Linux community who would advocate completely throwing out your current systems and completely using Linux (I am sure there are a few, though). I believe that most Linux Advocates would say "Let's look at where we can use Linux and Open Source solutions in your organization. Once you have seen the performance and capabilities of these solutions you will see that there may be other ways to use it. Oh, and by the way you don't have to worry about those per seat license fees. " After all isn't this the role of a Linux Advocate?

   Page 1 of 1