Perhaps you may have never heard of it. Perhaps you have heard of it. The point of this article is to discuss the differences and benefits between open source software, and closed source software. Open source software, for those that are still in the dark, is software that is released with the code behind it that makes it work, or at least that code is available somewhere, usually for free.

What’s the big deal about open source software? Well, there are plenty of opinions, good and bad, regarding open source software and it’s closed counterpart. For example, the popular web browser Firefox is available open source. That means that you can get the code, or at least the relevant portions of the code, that make the software work. Another example, any flavor of a Microsoft Windows operating system (eg. Windows XP, Windows Vista, and lest we forget, Windows ME), is considered closed source, meaning the goons at Redmond do not want you to see the code that makes it run. What makes open source software good? Well, take this example: if you look for “Mozilla firefox addons” on Google, you’ll get well over a million results. Google for internet explorer (another one of Microsoft’s closed source applications) add-ons, and…well the number is less impressive. Point being, open source software allows developers to write their own code to make the software better, more functional, and generally easier to use.

There are a lot of arguments from anti-open source folks out there that say releasing the full source code to ANY application, whether it is a software application that you run on your computer such as internet explorer or firefox, or a web application, such as osCommerce, a popular eCommerce engine, opens up a huge security breach. I beg to differ. Why? I’ll tell you why. For every 1 person that finds something in the source code of an open source program that could be used to breach the security of that particular application, there are 10 people that have already found it and figured out how to patch it up. Sure, you’ll need to download an update, but isn’t that better than allowing access to all 2,500 of your customers’ sensitive data? I’d say it is. Now lets take the example of Microsoft, who seemingly releases a new patch every day or so. Their code is closed to the public, so it should be pretty hard for somebody with bad intentions to get in there and figure out how to write a new virus or worm to exploit a security vulnerability in some seemingly obscure piece of code, right? Well, no, not quite. You see, every windows update you download is because somebody DID in fact find a way to do it, and they have already done it, and in most cases, have been doing so for quite a while. Once Microsoft finally realizes this happened, their team of programmers have to take the time to figure out how it happened, how to fix it, and then deploy the patch to the millions of Windows customers out there. Within that time span, a countless number of machines could have been compromised, as is often the case. Had Windows been open source, such as any flavor of Linux (another operating system similar to Windows), this could be prevented, or at the very least would have affected a much, much smaller number of consumers.

Speaking of Linux, for any of those tech gurus out there, or anybody that follows the news in general, how often do you hear of a new worm, trojan, virus, or any combination of the 3, being used against a Linux machine? Rarely. Why? Because they release the full source for it, and as I said above, there are 10 people fixing it at the same time as the one guy trying to exploit it. That, coupled with the fact that most “black hat” programmers, meaning, those that wish to write code to do bad things, simply just don’t bother writing virii, worms, etc, for Linux machines. Why? Because they know its generally a useless waste of time for them. It will be fixed within days. That’s not to say that open source software such as Linux does not get compromised ever, but it certainly happens a lot less often than closed source software such as Windows.

With that being said, which would you prefer? Using an open source eCommerce software such as osCommerce and having bugs and vulnerabilities patched within days of their discovery, or using a closed source solution which may take weeks or months to patch? Think about it this way, the vulnerability may be something as simple as a user being able to spam your store with fake orders. Or, they could do much worse, such as stealing all 2,500 of your customers’ sensitive data, like credit card numbers, etc. That would be a fun couple of days, wouldn’t it? Explaining to your customers why they were charged $800 to a bank in Nairobi on the same card they just used at your store. You would seem like a professional and top-of-the-line business, wouldn’t you? Oh, did I mention that most open source software is completely free of charge?

2 responses to “Open Source vs. Closed Source

Posted by DK

I think both have a place. I personally generally prefer closed source – and the main reason is usability.
Closed source projects are generally commercial ventures, and commercial companies tend to put more effort into making a product usable in my opinion..
They often have whole departments of non-programmers just to dream up how the software SHOULD work, usually to the annoyance of the programmers since they mostly just care about functionality.
Whereas typically open source software are just work that a programmer wants to do, and the little details get left out and as long as it basically functions they move on to the next function, even if it functions poorly :). I have noticed this seems to be true even with the smallest commercial software companies.

Posted on February 15, 2009 at 1:12 am

Posted by Dean

Hi DK,

I’m certain that Eric will have a follow up response to your comment as well, but I wanted to respond to your comment too.

First of all, this is a very insightful view into the world of software development. Closed source products do tend to be more usable to the general user. They are well thought out and millions of dollars are typically invested to make them usable. We use closed source software such as Dreamweaver and Photoshop almost every day.

Open source software, however, tends to be much more stable and secure than its closed source brethren, particularly in the case of web based or specific open source software, as opposed to desktop software. Don’t get me wrong, I’m not giving up my copy of Photoshop for a copy of Gimp. But open source software has some specific advantages in the online world, and sometimes in the desktop world.

Open source software isn’t developed by a single organization. Typically, at least the good stuff, is built by hundreds, if not thousands of independent programmers from all over the world. Why does this matter? Because when there is a security hole, or something breaks…it gets fixed, usually in the same day because hundreds or thousands of programmers have a vested interest in the software. The glitch doesn’t have to go through red tape, memos and “decision makers” to get fixed. Take Internet Explorer vs. Firefox for example. IE is broke, always has been and probably always will be. It’s been built by the most powerful and arguably the largest closed source monopoly, I mean company, in the world. They can’t get it right.

Firefox is built and tested by some of the best programmers and hackers in the world. When it breaks, they usually find the hole before the general public does and they fix it and update the software AUTOMATICALLY. WordPress is just awesome….as are several other open source pieces of software.

Other open source software such as OSCommmerce, Magento and Pidgin are much the same. They are great pieces of software and are unparalleled by anything that Adobe, Microsoft, et al. could possibly produce and they are more secure than 10,000 cookie cutter programmers in the Silicon Valley could hope for.

When it comes down to it, programmers are programmers. They build (typically) what they’re told to build or build to make sure that a certain level of functionality in intact. Open source programmers don’t typically have an endless stream of venture capitalists and a bank account to substantiate in depth beta testing and feature research. But they do make some phenomenal pieces of software, both open and closed source, with the right end user feedback.

It would be great if companies such as Microsoft, with more money than God, would help support more open source projects…don’t you think??!?! Then we could have the best of both worlds. Just imagine if Microsoft got some some open source developers to help secure Internet Explorer or make it understand and render some type of web standard other than their own. :)

Posted on February 16, 2009 at 9:14 pm

Leave a Reply

Your email address will not be published. Required fields are marked *

Read Related Posts