Get started with Open Source

#BlogsWithCC

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

Resources