|
|
|
|
Page 3 of 7 The Case for Open Source Software I find that many Computing topics require conceptual thinking and it’s always hard to fully explain a topic unless we draw a parallel with a tangible technology. So to help explain this topic, we will draw a very effective parallel with the ‘Car’. The question then, is if we had two cars, an Open Source car and a Proprietary car, how would they differ? Well the cars that we use on the road have always been of the Open Source variety. You can open the hood and look at all the parts. You can remove any parts and further take apart the parts to make any modifications if you like. And when you put it back together again after making your modifications, the car will perform differently (hopefully to your liking). The same is true for Open Source technology. I promise not to get too technical, and I’d like to show you some code that makes up a simple program. Here is our sample program written in the C++ language:
When this program is compiled (something like when we put the removed parts back on the car), and when it is run, it will print the following message onto the screen: Hello World! I'm a C++ program Very simple stuff right? Ok, well there are a few details that you probably don't understand unless you have programmed before but you got the main idea - the cout line prints the text. Well, what if you wanted it to print “Hello World! I’m a C++ program. I like oranges!”? Think about it for a minute. Take a look at the code again. If you guessed that you would add another ‘cout’ line you’re right! This is the line you would add right under the last cout line:
Once you’ve put the new line of code in your program, you compile the program (put the parts back in the car) and run the program. Ok, that’s as technical as I want to get for our conversation. As you have seen, we were able to make modifications to the code to make the program behave the way we wanted. It stands to reason that the only way we would be able to make this modification to our program is if the maker of the program provided us with the code that was used along with the program. That’s what happens in an Open Source system. And that’s what is meant by the term Open Source. It means that the source code of the program is open (i.e. freely available). On the other hand, in a Proprietary system, the code is never passed along with the program. The maker of the program always sends the compiled version and hides the actual code that was used to create the program in a vault. The two major manufacturers of Operating Systems are Microsoft and the Unices (UNIX, Linux etc.). Microsoft is of the Proprietary variety and UNIX is of the Open Source. |
Comments
thanks for the detailed info!
RSS feed for comments to this post