Why use open source?

17 February 2011
Over the years I’ve given a lot of thought as to why people should invest in open source solutions. I’ve come up with a lot of reasons, some good, others just smarmy. Some of the reasons for choosing open source, however, may be a little less obvious than others. The biggest reason I like to suggest open source software is that you own the code. This is different from owning a copy of the compiled program. Owning the code means you can change it and modify it in any way you see fit. These changes aren’t just limited to cosmetic customizations either. When you use open source code you can make changes all the way down to the core of the application. This gives ownership unparalleled in the commercial software world. It also means that over time if you want to make upgrades or customizations, these won’t involve any additional purchases. Open source is widely documented and supported. While open source code might not have a company or commercial support, most open source projects are extremely thoroughly documented. Often times this documentation can be found in non-traditional places. Support forums are a common area to find support documentation. This enables the user community to create documentation on their own, and provides an interactive place to find support. Additionally, owning the code means you can read it yourself. Ultimately all the documentation you need is contained in the source code. Having a community of open source users for a project also means that you can share support with other users. The larger the project, in general, the greater the volume of community support. Open source promotes a positive ethic of sharing. This argument is generally reserved for organizations such as non-profits or educational institutions. Open source is about volunteers contributing their time to make products that are free for everyone to use. This is a sort of digital communism that allows everyone to enjoy quality software regardless of their financial resources. Promoting open source promotes sharing, and research. Open source projects contribute ideas and projects to a free community, in much the same way as academia. These ideas and projects are open for peer review and scrutiny and help to foster other, new projects. Open source projects are easy to find support for. This is a basic cost benefit advantage of open source that makes it easy to sell to business. Open source projects don’t require any financial outlay or certification so they attract a wide body of professionals who utilize and support them. With a commercial product you must always rely on the company that produces the product for support. Open source means you can turn to an almost unlimited community of programmers who can maintain your project. Open source won’t go away. Unlike commercial products, open source products never disappear due to business failures. Even if a project loses it’s core developers and maintainers, they are always left open for new developers and leaders. This means you’ll never have to worry about being stuck with an unsupported, legacy application. When using an open source solution your only cost if for the expertise in applying it. You have to pay for staff or consultants to implement, customize, and support a solution, but that’s it. In terms of total cost of ownership it tends to be much lower. Also, since specialists in open source solutions don’t have to pay for expensive certifications they tend to charge less. In my opinion open source solutions make much more sense from an ethical, and business standpoint than their commercial counterparts. Granted, there are many variables that can influence the decision of platform for a particular project, but as a general rule you can find open source alternatives to almost any commercial package that are well worth considering.