Importance of Open Source and Why to choose GitHub
By: Priyadarshini Kumari
Tags: Github, Open Source

As a young developer, there were few things scarier to me than the mystique of Open Source. I had read, and heard a lot that it was important to find a project that I cared about and to contribute. But when you pull up that repository for the first time and check out the issues tab, it can be downright intimidating and anxiety-inducing. I probably read through “good first issue” tags 20 times before I gained the courage to add a comment stating, “I’d like to help with this PR.”

Then I did a thing: I pulled down the repository, read through all the documentation, looked into the source code related to this issue, and just tried some things. Some worked, some didn’t. I got to a point where I felt like it was right on the edge of being fixed, but there was a blocker. I reached out to one of the maintainers who had been my guru on the issue and he helped me get my pull request across the finish line. It was gratifying.

As developers, Open Source gives us the opportunity to find community, take on new challenges, and create something that is valuable for our fellow developers. Open source software is software whose source code has been made publicly available by its copyright holder. Under a true open source license, the software is developed collaboratively, and other programmers can look at, modify, or use the code.

GitHub is the most popular source code hosting facility out there for Open Source Software, and it’s still growing. Millions of developers use GitHub to share code and build businesses.

Words People Use When They Talk About GitHub

Repository: You can think of it as a folder or storage space where your project files can be stored. Sometimes GitHub users shorten this to “repo.” Fork: Fork can also be termed as copy or clone. Let’s consider the previous example where you were building a website for which you needed some help from your friend. Now your friend have found out some issues and wants to change something on your project. But here, he can not directly make any changes to the main file so he’ll make a copy of it. This is what forking means. Pull Request: In simplest form, pull requests are a way by which developers notify their team members that they have completed a feature and asking your permission to add your changes to the main file. Version Control: Basically, the purpose Git was designed to serve version control systems. GitHub allows you to switch from one version of the software to the other easily.

Features of GitHub which makes it preferable

Collaborative Coding — Contribute to projects quickly with automatic environment setup. Automation and CI/CD — Automate everything: CI/CD, testing, planning, project management, issue labeling, approvals, on boarding, and more. Security — Secure code as you write it. Automatically review every change to your code-base and identify vulnerabilities before they reach production. Client Apps — Take GitHub with you on any connected device and access GitHub from your OS X or Windows desktop. Project Management — Keep your team in step and your code at the center of your projects. Team Administration — Simplify access and permissions management across your projects and teams.

Hope this article gives you a good overview of Open Source, GitHub and it’s benefits.