In response to our article on the benefits of open source software, Twitter user Plato Hieronimus wrote to us:
“What’s your take on customized open source vs. pure custom builds. When should an organization go with one or the other?”
It’s a great question. After all, if you build it yourself, won’t it be exactly what you want?
When You Should Build Your Own Software
There actually are a few times when it can make sense to build your own software platform. These times tend to be:
- When you are building something truly innovative. (An e-commerce shopping cart is not innovative in 2010, nor is a CMS or a CRM database.)
- When you are a software company that is building a product or software service for license or subscription.
- When you are building software that provides your company with a specific competitive advantage. Again, your CMS is probably not going to do that (though a lack of a CMS can certainly be a competitive disadvantage).
- When what you are building is very simple, and the hassle of working with a technology framework or platform will add unneeded overhead.
Beyond that, the reasons are few.
In Most Cases, Open Source Is a Better Choice
For the rest of us, the benefits of working with open source software vastly outweigh the cost of building your own. We have seen very few scenarios when building websites where the foundational software was anything truly innovative or provided a real point of differentiation. (That’s more often found in the front-end design and the content).
Advantages of open source software over build-your-own include:
- Scalability and Flexibility – Well supported open source software provides a framework for future growth. Most build-your-own software focuses on specific use cases rather than general needs, making it harder to change course.
- Support – There are far greater support options for an open source system with many proponents and vendors than with something you’ve built yourself.
- Stability, reliability and reduced risk – Open source software of any significance has been tested under heavy load and is deployed by many thousands of developers worldwide. A homegrown platform hasn’t been tested anywhere else.
- Larger development team – A homegrown solution has the development team that works on the software, and that’s it. You are paying for all of the development. With open source software, many others are sharing the bulk of the costs of producing a system with far greater capabilities than you could pay to create in any reasonable timeframe for any reasonable cost.
- Rapid bug fixes – With a homegrown system, you must contract with your specific development vendor to fix any bugs. With open source software, bugs in the general platform are often fixed before you’re even aware they existed.
- Increased security – Homegrown systems are notoriously unreliable when it comes to security. Since open source software is used by many, security becomes an imperative. Your internal developers are just not likely to spend as much time on (or even know about) security issues as are open source developers, and when security holes do come up, they get plugged extremely quickly. If you need further evidence, the White House, the FBI and the CIA all have built their websites on open source platforms (Drupal, Plone and Plone respectively).
Want to learn more about how open source software can help your organization? Give us a call.