What is Open Source
Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or the content of the product. The open-source model is a decentralized software development model that encourages open collaboration. The main purpose of open-source is peer production.
Why was open source introduced?
The open-source movement in software began as a response to the limitations of proprietary code. The idea of open source originated in 1983 from an ideological movement informally founded by Richard Stallman. Stallman believed that software should be accessible to programmers so they could modify it as they wished, understand it, learn about it, and improve it. Stallman began releasing free code under his license, called the GNU Public License. This new approach and ideology surrounding software creation took hold and eventually led to the formation of the Open Source Initiative in 1998.
History of Open Source(a.k.a How did Open source begin? )
Open source promotes universal access via an open-source or free license to a product's design or blueprint, and universal redistribution of that design or blueprint. Open source gained hold with the rise of the Internet. The open-source software movement arose to clarify copyright, licensing, domain, and consumer issues.
How does Open source work?
Open source code is usually stored in a public repository and shared publicly. Anyone can access the repository to use the code independently or contribute improvements to the design and functionality of the overall project.
How to contribute to Open Source Software?
Fork the main repository to which you want to contribute to
Clone the forked repo
Checkout to a new branch to make your changes from the main branch
Push the repository to the remote origin
Make a PR linking the upstream main repository to the remote origin branch
Go through the conversation of the PR merge process. Here, You will get feedback about your commits and you can make new commits to improve your work in the same PR
After the PR is merged, Checkout with the main branch locally
Copy the upstream repository link locally and run
git remote add upstream copied_upstream_link
Next, Run
git fetch upstream
Then, run
git merge upstream/main
Now, Your local repository is in sync with the remote repository
Delete the branch where you made the changes locally
If you are not sure about what we went through above, Then go through EddieJaoude video on how to start contributing to Open source and what are Git branches, Github forks, and remotes
Examples of Open Source Software
Mozilla Firefox
Linux OS
VLC media player
LibreOffice
GIMP
and many more
Advantages of Open source software
Open-source software is free.
Open source is flexible - Developers can examine how the code works and freely make changes to the application to better fit their unique needs.
Open source is stable - The source code is publicly distributed, so users can depend on it for their long-term projects
Open source comes with a built-in community that continuously contributes and adds value to the source code by improving it. Some example where you can work on open source projects is EddieHub Inclusive Open Source Community