Advocates of Linux, Postgres, Ruby, OpenLDAP and OpenStack all tout the benefits of having an open-source architecture. Granted, it’s a hard pill to swallow especially in compliance-ridden industries (finance, health). The benefits are vast though:
- Is software really your core business? If not, it’s the business logic you execute that gives you an advantage over your competitors, not the actual tools that you use. If the tools don’t work, they are open source – bend them to your will and make them work. You might even get the “community” to work on it instead of allocating internal resources.
- Training – when we all have the same tools and protocols as your competitors – then resources can move about with little to no additional training. Top notch minds are no longer hindered in the interview process by the tool experience that they know. If your competitors aren’t using the open-source flavor – maybe that becomes a competitive advantage.
- Talk about cutting edge – open source software intrigues developers because it aims to do things that have never been done before. Don’t believe me? Check out http://www.chromeexperiments.com/webgl
- And stability? Granted, open source software doesn’t necessarily go though all the QA and stress-testing that Lockheed Martin would (or shoud?) use on missile guidance systems, but the software is only as good as the community. If you start finding bugs, and politely post the issues on github or launchpad, dev-ops will take notice. Do not rely on open-source QA – you still need to make sure your business logic executes seamlessly and efficiently (with high-availability).
There are some reasons to stay away from open source though:
- The open source tool goes down to the business logic level. You don’t want your business tied to workflows and processes dictacted by a developer community. You need to control this, otherwise any competitive advantage will be short-lived.
- What you need is taking the open source community too long to develop. First -re-evaluate. Do you really need what you think you need? If so – maybe you can stoke the community. Competitions, nationwide conferences (featuring free beer & pizza!), putting resources on it directly – these things all may get more traction on the project. However, those things take time – so if your business is absolutely dependent on pay-ware, then you’ve got to do what you’ve got to do.
- What you need is a bit too cutting edge. This kinda goes back to #2. Go back 5 years – if you wanted an open source cloud solution, you’d have a tough time finding any developers that spoke cloud.
- You really do need to remain incognito. The CIA will never contribute to an open source project. In fact, “open source” means publicly available foreign intel for the CIA.
So open source isn’t for everyone. And that won’t change. You need to be smart about when to implement open source and when to build it yourself under lock & key.