A Quest for Open Source
Open source software development has become a real game-changer in the last couple of years. It went from being mainly a hobby of a group of enthusiasts to the basis for entire companies. Corporations like Google, Facebook, Amazon, Microsoft and many others acknowledge the ever-growing role of open source in the modern world and hire entire teams to support its development.
But before diving into how FOSS can be profitable—not only in terms of a company’s reputation but really profitable—let’s first look back at its history.
A (very) brief history of open source
It all started in 1984 when Richard Stallman launched the GNU Project, aimed at creating a completely free operating system. To be clear, ‘free’ here means to be free for anyone to use, not necessarily in terms of price. A year later, the Free Software Foundation was created and formed the main principles of free software—being able to run it without restrictions, modify it as needed, distribute or redistribute (either paid-for or free).
In the following years, free software became a real threat to corporations such as Oracle and Microsoft, who focused on and profited from their proprietary products. GNU/Linux grew as a viable alternative to Windows, especially in the server environment.
Today about 98% of all companies use open source software in some form. Large companies have separate departments that support and commit to FOSS development regularly. Even Microsoft, which was pretty closed-off and profit-oriented years ago, has drastically changed its attitude to open source.
Microsoft’s 180 shift on FOSS
I would like to expand on this a bit more. I personally think that last year was truly the year of Microsoft in terms of how the company moves towards and facilitates open source development.
Here’s why:
- Microsoft created and continues to develop VS Code, the most popular code editor in the world. It’s open source and free.
- TypeScript, a superset of JavaScript which has gained a lot of traction lately and now is the de-facto standard of writing JS for many developers and companies, was created and is still maintained by Microsoft.
- Last fall, Microsoft bought GitHub, a code repository hosting site with millions of users, and made its private repositories free.
- Microsoft switched its Edge core to the open source Chromium engine. This means, among other positive things, easier cross-browser web development and wider compatibility (Edge is coming to Macs too!).
- Earlier, Microsoft moved its entire MSDN database to MDN Web Docs and further contributed with massive updates to MDN pages.
- Last but not least, Microsoft constantly shares knowledge with the world. Lately, it has open-sourced their Frontend Bootcamp training materials, which includes many great tutorials on React, Redux, and TypeScript.
And other companies are as well. Both Intel and Google have recently open-sourced projects to facilitate development in the rapidly growing machine learning sector.
Why tech giants are going open source
Are there any benefits of spending corporate time and money on development for free?
Well yes, there are lots of them, for both entrepreneurs and developers. First of all, contribution to open source builds up a company’s reputation in the developer world. As a company owner, you get additional advantages in the eyes of developers both already working for you and those considering coming on board.
Furthermore, senior developers, when looking for a new place to work, are less likely to make a choice based on salary alone and are more likely to seek other benefits. A company’s open source support initiative is among the top ones.
There are also companies that build their entire businesses around open source products they create. Success stories include MongoDB, a non-relational database developed by the company of the same name, which is now one of the most popular databases in the world. The most common source of income for such venues is the provision of auxiliary services like paid support, specialized hosting (e.g. Atlas for MongoDB) or other ‘x-as-a-service’ solutions.
To see our story of building a successful open source product, check out our Robomongo showcase.
Open source learning environment
From the developer’s point of view, there are clear benefits as well. The open source community is very friendly and supportive of new devs who are eager to learn. This makes starting a new FOSS venture a great experience. When in trouble or confusion, you can always get advice from the top developers via Twitter, for example.
Also, if you haven’t yet decided to start your own project, you can always contribute to open source by helping others with their issues. There is even a dedicated website to help you to get started with. This way you will get the necessary experience and communication skills to join the adventure. And this one will be an awesome one, I’m telling you.
In conclusion, I would like to note that more and more companies will jump onto the open-source train and start working either on their own solutions or assisting with the development and maintenance of popular open-source tools. This trend has only a positive effect on both the developer community and the well-being of all companies involved.
Further Reading
Have a look at this post for more on the history of FOSS and this great collection of guides if you're interested in contributing to open source projects.