Not so long ago the majority of software was proprietary and sold in bright boxes at a high cost. The idea to open the source code to the public was not popular; companies did their best to keep their code secret in order to protect their intellectual property. Only R&D was participating in product development and the speed of new feature delivery was completely dependent on the capacity of the company’s R&D centers.
Privacy and Security
But when you’re buying proprietary software, how can you check if it has any backdoors? Most customers don’t worry too much about this, however for governments and big organizations that have to comply with particular rules and regulations, the question of strict security is crucial.
Customers have come to prefer paying for services and buying subscriptions rather than paying for licenses and software has become a tool for delivering services to end users.
Time was ticking though and the IT industry soon realized that the cost of software is high and not all the users are ready to pay a fortune.
Zoo of Devices and Operating Systems (OS)
For a long time when software was installed on desktops or servers, the market share of Microsoft Windows was significant. If you released a new desktop product, in most cases it was oriented towards Windows, covering the needs of most customers. However, we now live in an era of diversity with a whole lot of different devices: desktop, laptops, smartphone, tablets. The operating systems market share has been divided between numerous providers, in particular Microsoft Windows, MacOS, several Linux distributions, not to mention mobile device OS (OS X, Android etc.).
Finally, now we are witnessing an exuberant start up movement which brings forth new innovative services and a fight for investments.
Open Source Business Drivers
So which business drivers are popularizing open source?
Speeding up adoption for different platforms
A good example is Microsoft .NET. This used to be the most popular software development framework for Windows. At the same time UNIX-based operating systems started unraveling, so to keep the .NET developer community alive and distribute .NET development experience, Microsoft opened the source code of for .NET in November 2012.
Demonstrating your innovations and technical level
Open source projects can show how innovative a company is and what cool technical staff you’ve got. Look at Netflix, the American on-demand video provider: they have a wide range of projects released as open source. The company has a special technical blog pitching their innovations, which inspires many companies to follow Netflix experience in cloud adoption and Micro Services.
Supporting user innovation
When you release a framework or a product, you are probably not acquainted with all the use cases, so it’s a good idea to support user innovations and give them the opportunity to develop new features or fix defects in the existing ones. This can be done though the following approaches:
- Release your product as open source and allow the community to participate in product development. Then you may release commercial software based on the community’s input results. This option is good for combining the free open source version, user innovations and monetization.
- Keep the core of the system as proprietary software, but release an open source framework that allows users to extend the product and adapt it to their needs.
The release of the product, or its part, as open source helps establish a developer community around the project, at the same time involving users in the product development and lets you show your innovative approach and technical mainstay. Here's a guideline for beginners to get armed with free services and set foot in open source: