Thoughts on Open Source
Opensource is powerful. It benefits companies. It enhances careers of people. There is no question that Opensource is one of the best things that ever happened in the software industry.
Below are some benefits of Opensource to companies:
1) Increases awareness for company
A company that has vibrant participation in OSS benefits by drawing attention from developers and ops folks. Companies also earn some goodwill. Do keep in mind you have to keep your commitment to opensource participation, its not a one time thing.
2) Attracts talent
It is no secret that top talent in the industry are involved with opensource. I can say with first hand experience that closed source developers are often not as good as opensource developers. I have worked with both, and will take OSS developers anyday over closed source developers. Talented developers often want to work with companies that have a known open source participation. It also turns out that often open source developers actually may know how to work with other human beings. ( yes, there are some examples of bad apples in opensource — nodejs muddles come to mind )
3) Exposes company to latest tech thinking and tooling
A big risk companies face is being stuck in the past with technology and continuing to use outdated tools. Opensource is a good cure for the risk of being technologically outdated. Developers that are involved with open source often are also learning about what works better.
4) Helps you build more secure software
It is likely that opensource software is used by lot more people than a closed source software and it increases the chance that any serious security bugs are caught earlier than in a closed source software.
These are just few benefits top of mind. Despite these benefits, there are some wrong reasons to do open source. These are:
1) Search for product-market fit
If you don’t know what pain your software solves, opensourcing it won’t give you answers. If anything Opensourcing your product allows others to figure it out and profit from it faster than you can.
2) Lead generation
Unless your product is immensely popular, most opensource projects do not get enough interest from buyers. This is unlikely to be a good leadgen activity for your company.
3) Sell support services
This model is hard to pull off and is one with scores of dead companies before you. Its also not that profitable these days.
4) Free testing
If your software is crap to start with, it won’t really matter whether it is opensource or not. You won’t get the free testing by open sourcing your crap.