How do I know if an open source software product is right for my organization?

More and more organizations are relying on open source software to build, test, deploy, and run mission critical IT applications. From small start-ups to Fortune 500 companies, organizations worldwide are continuing to find open source as a cost effective means to deliver quality business applications. With a wealth of commercial and open source software options widely available, how does an organization know if an open source product is right for them?

Here are several critical factors to consider when selecting open source software.

Community
Understand the community around the software. Perform a job search for postings referencing the technology. The results will give excellent insight into the usage of the software. In addition, ask yourself the following questions. How many times has the software been downloaded? When was the last release? How often are changes made? Are the forums alive and well? Are there frequent tweets (via twitter) regarding the software? Is the wiki alive and well? How often is the wiki updated? Are there books written on the topic? These are all great questions to ask yourself to get a better understanding of the community that exists around the software.

Expertise
Make sure you can find expert talent to work with the software. Determine if that talent exist within your own staff. If not, then consider training programs. Also, talk to local consulting companies with the proper expertise.

Quality
Research and experiment with the quality of the software. Talk to expert users in your area. Take a look at bug reports. Perform a proof-of-concept. Take a look at the source code and associated test cases. And, don’t forget to take a good look at the documentation. Without good documentation, it can be very hard to get started.

Usage
Consider the usage of the software. Open source solutions exists for a wide-range of applications including small code libraries, frameworks, development tools, application servers, enterprise grade databases, operating systems and more. When looking at open source, the planned usage of the software will probably dictate how closely you evaluate it. For example, you may take more time evaluating an enterprise database than you would a build tool.

Ownership
Learn more about who owns the software, and understand the owner’s motivation. Is it owned by an individual working part-time with the hope of sharing their code with the world? Is it owned by a non-profit organization with significant funding and a solid base of volunteers? Or, is it owned by a business or individual entrepreneur using the open source model to increase product adoption? The answer to these questions may help you better understand the long-term viability of the open source software.

Limitations (if any)
Make sure you understand the limitations associated with the open source version of the solution. Several open source companies offer open source and commercial versions of their product. The commercial versions generally offer enhancements that may or may not be critical to your application. If you feel the commercial version is important, then keep in mind that you may be able to upgrade to the commercial version at a later time.

Support
Understand the support options available. It used to be the case that many organizations feared open source because the software lacked commercial support options. Today, this is not always the case. Most widely adopted open source solutions have medium-to-large sized companies offering support contracts as well as indemnification. In fact, it’s not unusual for open source support companies to offer more responsive support than the alternative commercial software.

Licensing
Always consider the open source license associated with the software. Most products will have a link to a description of the license on their website. Certain licenses may limit your ability to use the open source version of the software.

Open source software can be an excellent option when trying to lower IT costs. But, it’s not always an obvious choice. Considering some or all of the factors outlined above can help your organization make the right choice.

About the Author

David Reines profile.

David Reines

VP - Technology

David has led the development efforts of several mission-critical enterprise applications in the Twin Cities area. During this time, he has worked very closely with numerous commercial and open source JEE technologies. David has extensive experience in the architecture, design, implementation, deployment and support of highly scalable business applications.

One thought on “How do I know if an open source software product is right for my organization?

Leave a Reply

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

Related Blog Posts
Modern Development Environment for C++: Part 2
In Part 1 of this series, I gave a quick overview of each tool in the development environment and how I came to the conclusion that the tool was a good fit. Today I’m going […]
Mock Intl and Date globals in Jest
In Javascript land, mocking the browser global objects can be a bit of a pain for tests. Searching StackOverflow gives plenty of complicated answers. Some suggesting using 3rd party mock libraries. Some that overwrite the […]
Bitbucket Parameterized Pipelines
Introduction I’d like to address how to handle lots of deployment environments withinBitBucket Pipelines. Below I’m presenting two options: Using tags to parameterize builds Using the BitBucket API to pass variables Lots of Environments There […]
AWS Cloud HSM, Docker and NGINX
There is quite a bit of easily searchable content on the security benefits of leveraging a Hardware Security Module to manage cryptographic keys, so I will leave that to the scope of another article. The […]