Open Source Software: It's Not (Only) About the Money

Originally published October 20, 2005

 

Forget about the money. Although you may already know that free/open source software (F/OSS) costs nothing to license, software licenses make up only a small part of your budget when you must deploy mission critical, enterprise quality systems. Saving a few hundred dollars per seat, or even a few million dollars per work site, won't balance out a project or system failure.

Thus, forget price when comparing F/OSS and commercial (a.k.a."closed-source" or "proprietary") software. Instead, consider the merits of each type of software. You may still be surprised.

 What Does "Free" Mean?

Open source developers can publish their code under any of dozens of licenses that are considered "open." But what does this mean? A good place to start is the Open Source Initiative. You can read their ten attributes of open source licenses, as with any contractual distinctions, some licenses are almost open, others are sort-of open; some are extraordinarily open, and some just barely open. 

While the nuances and implications of different open source, free and near-open source software licenses are worth delving into, I will not discuss them here. For this discussion, more important attributes of open source are that the source code must be freely available and modifications and derived works must be permitted under the same terms as the original code. Another factor is that you cannot limit who uses the software, how it is used, or otherwise restrict or contractually lock-in the licensee.

Open source programs come from a variety of sources: Some developers are simply hobbyists grinding away in their spare time, while considerably more are professional software engineers and programmers. These professionals usually work in teams, often on full-time projects for corporate sponsors.

Whoever or however they are being made, all open source software shares the attribute of being open. Thus, you can look at the source code to see how it works; add, change or remove features; even fix bugs. Anyone with the interest or desire can do this. Being open often means having superior security, stability, support and control of your business.

Benefits of F/OSS 

Everyone worries about national security. People also understand the importance of secrecy here. So how can open source software actually be more secure than proprietary? To start with, a closed-source vendor's source code is accessible only to those vetted by the vendor—employees. No one else is supposed to see the source, which (as your vendor will tell you) means no one can plant malware inside the executables or use insider knowledge for harm.   

At the same time, however, there are security risks with proprietary software. There could be a disgruntled employee, who subverts proprietary source code or reveals flaws to outsiders. Do you buy software internationally? Is your vendor cooperating with local government security agencies, demanding back doors to commercial products? How can you be sure? Even honest mistakes are easily hidden by compiled code. 

Ultimately, you must trust your vendor to deliver secure software. This is particularly difficult since few vendors are willing to accept liability for damages caused by their software.

Like commercial software vendors, open source developers don't accept liability, but then they don't demand payment for their code, either. Basically anyone can examine the source for vulnerabilities and flaws, as well as correct them.

When something goes wrong with open source, anyone can help find the solution. When something goes wrong with closed source programs, though, the problem can only be fixed by the vendor's employees.

Advantage: open source. 

What about stability? You've spent a lot of time, effort and money building sophisticated business intelligence systems. So what happens when your vendor decides it's time for an upgrade? This is a good idea if that piece of software never worked right, or if you need a new feature provided by the upgrade.

Will the upgrade fix your problems? Maybe. Will it cost you to test and deploy? Absolutely.

Even worse are upgrades that serve only to inflate your vendor's bottom line while deflating your budget. Though these upgrades are an important part of your vendor’s business plan, they are probably not part of yours. 

Everything is working smoothly until your vendor stops supporting the version you're running. You can decide against the upgrade, but you might regret doing this when you need a new feature or support for a new platform. Otherwise, you have to take your chances, pay for updates and hope nothing breaks.

Of course, with open source you can always keep your current system after the developer moves on. Code that starts open stays open, and you can always hire someone to support open software. You can support it yourself as well. There is no financial pressure to upgrade, and no costs incurred if you choose not to upgrade.

Advantage: open source. 

This introduces the issue of support. In general, commercial software vendors sell support the same way insurance companies sell insurance; the less you use it, the more profitable it is for them.

The vendor's marginal cost per unit of software sold is negligible: Development costs are the same, whether you sell one or one million copies. In contrast, support for a million users will cost closer to a million times as much as supporting one user.

If you need support for open source software, you can buy it from a consultant or company only specializing in support. The market for open source support can be more competitive, because you are not locked into the vendor you bought the software from. If your support provider isn't good enough, you can search for something better.

But what happens when a vendor goes belly-up? Orphaned software often enters a legal limbo. Here, ownership goes to creditors, who may or may not be obliged or interested in maintaining it. Open source software remains open no matter what happens to the original developer.

Advantage: open source. 

What's In It For You? 

When you purchase commercial software you go into business with your vendor. While this might not be a good deal for you, it is great for your vendor. If your business grows and you buy more systems, you also buy more software licenses. If you stay in business for a long time, you throw off a nice revenue stream for software upgrades, maintenance and support fees. You assume all the risk, too: Since you do not actually own the software, you cannot sell it when you are done with it. Furthermore, your vendor is not liable if the software blows up your business. What is in it for the customer? There's the commitment to staying up-to-date with all those fees and upgrades. This includes never-ending training, hardware upgrades, troubleshooting and rollout of new releases. There is no end-point of a mature and robust system, because that is not in the vendor's interest. And that's where you must ask yourself, "Cui bono?" or "Who benefits?"

Proprietary software vendors are mainly motivated by software sales. They would like to have large user bases, since that means selling many software licenses and maximizing profits.

The traditional motivation behind open source projects has always been problem solving. The problem may be how to create a reliable and secure web server, design a useful scripting language, or engineer a robust and high-performance database. Most open source projects are, at first, the work of individuals. If these projects are great (or have some element of greatness in them), other people will begin using that code and joining in the development efforts. The original developer benefits, since she has created a useful tool that will help her do a better job.

Open source developers also benefit from large user bases. They get the satisfaction of knowing that others value the tool they created. A larger user base means more users who can report bugs, suggest improvements, and identify flaws; it also means more developers will be interested in contributing new features and fixing bugs. Thus, the software gets better as more people use it, and more people will use it as the software gets better.

What's in it for the original programmer? For one thing, an even better, more robust, reliable, secure and all-around more useful tool than she originally created. Another benefit is that she obtains fame and fortune. The original programmer now has a reputation for creating cool things and a greater demand for her programming talents.

Finally, what’s in it for the software user? Open source licenses make it possible to create tools that are more robust, reliable and secure. Thus, where all other things are equal, open source software can be clearly better than the kind you pay for.

Advantage: open source.

Obviously, I am biased toward open source software. Is open source software always the best solution? Absolutely not. Even when both open source and commercial solutions are available, proprietary programs often work better.

But, all other things being equal—when open and closed source solutions are both adequate to solve business problems — open source solutions appear preferable. This is true even before you consider the price.

  • Pete LoshinPete Loshin

    Pete is Founder of Internet-Standard.com, an open source and open standard computing consultancy providing technology assessment, needs analysis and transition planning services for organizations seeking alternatives to commercial software. Pete has written 20 books, including “TCP/IP Clearly Explained” 4th Edition, Morgan Kaufmann, 2003) and “IPv6 : Theory, Protocol, and Practice,” 2nd Edition (Morgan Kaufmann, 2004).

    Pete can be reached at pete@loshin.com or at 781. 859.9175.

Recent articles by Pete Loshin

 

Comments

Want to post a comment? Login or become a member today!

Be the first to comment!