October 15, 2020
Open Source is everywhere. To understand it, let us talk about how houses/structures are built and the fundamental knowledge every building engineer should have. Now imagine that there are so many tedious and repetitive models every single building engineer ought to consider before coming to the final plan. Then all of a sudden, a thoughtful engineer comes up with a general scheme that encompasses the models.
What does this mean? Does it mean the other engineers won’t have to go through the initial repetitive process? Well, that depends on the licence. By license, I mean whether the engineer made his general scheme open to the public or not. Similarly, we have so many tedious and repetitive solutions to problems we face as we go about building solutions, be it with designs, code, or text. Having reusable models that depending on license coverage decentralizes and opens up these solutions to more people. People who in a respectful manner, can contribute to making this model better, and this, in a nutshell, is the concept of open-source.
Again, Open Source is everywhere. The term “Open Source” refers to something people can modify and share because its design is publicly accessible. This is widely dominant in the software world these days, but open-source projects are also available in other fields.
In the 1950s and 1960s, computer operating software and compilers were delivered as a part of hardware purchases without separate fees. At the time, source code, the human-readable form of software, was generally distributed with the software providing the ability to fix bugs or add new functions. Universities were early adopters of computing technology.
Many of the modifications developed by universities were openly shared, in keeping with the academic principles of sharing knowledge, and organizations sprung up to facilitate sharing. As large-scale operating systems matured, fewer organizations allowed modifications to the operating software, and eventually, such operating systems were closed to modification. However, utilities and other added-function applications are still shared and new organizations have been formed to promote the sharing of software.
Today, some of the most important players in the open-source ecosystem are the Apache Foundation, RedHat, and MySQL. Apache and RedHat have built and nurtured countless major open-source operating systems, platforms, tools, and libraries. MySQL has been the leading open source database for a long period of time now. Linux, Google, Microsoft, and Github are also important players in the Open Source ecosystem. Google is actively contributing to and supporting the open-source community with a dedicated Open Source Program which boasts of a number of initiatives to raise awareness of and spread the open-source gospel. Linux is the founder of the Linux Foundation that supports the creation of sustainable open source projects and ecosystems in blockchain, deep learning, networking. Github enables developers to collaborates efficiently and is the go-to platform for a majority of the software industries open-source activity.
Microsoft who had previously thought that free and open-source software is a threat to its business finally open-sourced some of its code in 2018, including the .NET Framework and Visual Studio Code, and made investments in Linux development, server technology, and organizations, including the Linux Foundation and Open Source Initiative. Linux-based operating systems power the company's Azure cloud services. Microsoft also acquired GitHub, the largest host for open source project infrastructure, in 2018. Microsoft is among the site's most active contributors. This acquisition leads a few projects to migrate away from GitHub. This proved a short-lived phenomenon because by 2019 there were over 10 million new users of GitHub
There are so many reasons why you as a developer should have your project open-sourced. The following should be enough reasons you should make your project open-sourced:
Wider Audience: One main reason why open source projects always thrived is because of their wider reach of audience. This makes it fun: working with people from the different spheres of the world and people from all corners of the world get to use the project. This makes a developer whose projects are open-sourced to gain a wider audience. Other developers who far away get to use your software. For example, the creators of Tensorflow ****would not have gotten this much audience if not the audience it got today if the project was not open-sourced. Today, Tensorflow is one of the biggest and recognized software library for numerical computation using data flow graphs.
Community Support: The community support behind open source projects is always overwhelming. Take, for instance, Android OS, over the years it has striven and improved because of community support. Many people have supported and suggested new ideas towards improving it --that is so cool about open source. Newbie developers, for example, get to find a lot of resources and support from the community and eventually over time begin to contribute to better the project. As a developer, this can make your project much bigger because of the involvement of the community
Diverse Collaboration: Open Sourced projects give room for collaboration from diverse angles. Different people from different parts of the world can contribute. Since people have different and unique ways of solving problems, diverse collaboration could make a developer’s project even go far beyond his/her initial expectation(s). Imagine if Kubernetes, an open-source system for managing containerized applications across multiple hosts, providing basic mechanisms for deployment, maintenance, and scaling of applications was closed source, do you think it would have gotten this number of contributors it has right now? More than 2000 developers from different angles of the world have done a thing or two to make it better.
Durability: Open Source projects tend to live forever. This is because a great number of people are using and constantly improving and supporting them. Open projects almost always never outdated😊 , For instance, jQuery might have faded off completely if not for its openness.
Endless Learning Opportunity: Whenever a developer decides to make his project open source, this always creates room for learning not just only to themself but also to the communities of developers worldwide. One army project becomes two or more army projects. When two or more good heads come together, there is always strength and little room for failure (bad code).
Conclusion In conclusion, as a developer, you should know that open source is a good investment in the future. Almost every Cloud or Web services are predominantly built on open source projects. Having seen and looked at the benefits of taking your project Open Source, there is no doubt that it is worth making your project open source.
Managing open-source projects can be trivial. Discover how Strapi, open-source Headless CMS, is using productboard to get feedback and define the roadmap.
January 22, 2019
Implementing GitBook to manage open-source documentation.
November 2, 2017
Sign up for the Strapi newsletter to keep up with the latest news from the Strapi community!