The prevailing wisdom regarding open source communities is that they foster innovation in software. Members of the open source community not only share development code, they compete in a meritocracy for bragging rights on key features, patches, and contributions that they deliver at breakneck speed.
There are both advantages and disadvantages to an IT department as beneficiary of this model, and one must weigh them carefully.
Before you jump in, consider the following issues:
- The code never stops changing. How many times a year do you actually want to update your software? With an ever-changing code stream, it may be challenging to stay in sync. This is why some of the major players (Red Hat, Novell) have limited the number of releases they issue per year so that you don't have to be constantly updating. Are they creeping more to the proprietary cycle by doing this? That remains to be seen.
- Innovation can burden the user experience and create training and support problems. Every set of changes can be felt downstream by your users. Look at Microsoft Office as a classic example of a set of products whose feature set far exceeds the needs of the end user. Most of us don't know how to use a fraction of what comes with the package. Do you have the time to retrain every time you update your software?
In some cases however, you will find that the benefits, combined with your best practices in scheduling your upgrades, may deliver a more empowered experience.
- Unlike legacy applications that have evolved into slowly adapting beasts, open source software developers often build upon projects and code that are generally well contained and thus easier to update and maintain. Open source software companies can be more nimble than an ISV that has been patching and updating a code base for more than a decade or two. It is also difficult to retool and create a new code base, which means the older the code, the more challenging it is to start over with a clean slate.
- You, the customer, get a say in what gets done and can actually do the work if it is a priority for your company. In fact, many companies such as SugarCRM and Red Hat have specific programs in place to encourage this type of contribution that ultimately rolls back into their main stream of code.
- There are fewer barriers between you and the actual developer. The forums for open source products are active, with developers picking each other's brains and testing each other's code. If you don't like something, it's pretty easy to voice your concern and get very quick feedback on whether or not the developer can address your issue. No need to navigate a product management hierarchy that may not view a smaller company as a priority.
- Most open source software products can be downloaded and sampled for free before you make a major commitment. If the product doesn't seem ready for prime time, you can ditch it and give it a try six months from now.
- Of course, the ultimate trade-off is time. You either suffer the delays in waiting for your software vendor to deliver what you need, or you invest time yourself to capitalize on innovation. What are you waiting for?
Paula Hunter has more than 20 years of experience in high-tech marketing and business development. She currently consults with software companies, assisting them in their go-to-market strategies in the Linux and open source marketplace. Most recently, Hunter served as VP of marketing at Collax Inc. (a Linux-based server solution for small and midsize businesses) and as marketing and business development director with OSDL, a global consortium of leading technology companies dedicated to accelerating the adoption of Linux.