At the beginning of every road, the possibilities always stretch infinitely to the horizon. So it always seems when one is starting a business as well. But could your open-source project actually support a business as well?
The answer is not always “yes.”
On the surface, even the concept of an “open source software business” seems to be an oxymoron. “Open source” means software that is freely available for users to download, use, and distribute. A “software business” means charging for that software, be it from licensing, support, or documentation. So how could an open source project be used to build a software business?
To answer this question, we need first to understand why both commercial and open source software models work in the first place. Commercial software offers features. In return for my money, this shiny package will (hopefully) offer me out-of-the-box features that meet my needs. Open source software, on the other hand, offers code. I can go somewhere, get the source code for free, then customize and extend it as I need. The software freedom that Stallman originally talked about is really a freedom through code: I am “free” with open source software not because I got the software free of charge, but because I have its source code, so I can change it to suit my needs. Therefore, commercial software will appeal to people who are looking for stable, easy to use, and supported features, whereas open source software will appeal to people who are looking for well written source code to modify or customize.
Not all software have both groups of people. For example, there are certain types of software which practically nobody wants or needs to modify or extend, so open source has a limited value proposition (other than being free of charge.) In this case, you might be better off releasing your software as shareware: give it away for free, but keep the source code, and then ask people to pay for an enhanced version. (A modern alternative to this model would be to offer it free online and sell ads.) Conversely, there are some types of software, especially in the open source world, which are really not intended to be used out of the box and therefore are only valuable to programmers willing to work with the code. These might work adequately as open source projects, but you will probably have a very difficult time making a business out of them.
Therefore, to have an open source software business, you need to find a type of software where there are people who need the source code and where there are people who would pay for out of the box features, stability, ease of use, and support. We think we’ve found it with business applications software, such as ERP and CRM software. Virtually all ERP software, even multi-million dollar commercial packages, must be customized, so our users will appreciate having access to the code. Ease of use, stability, out-of-the-box features, and support are things that business users are used to paying for as well. It was this thinking which led us to create the opentaps Open Source ERP + CRM business applicaitons suite.
If you think you have found such an open source project, I will write more about how to build software for both open source and commercial users in the next installment of our series on “An Open Source Business.”