This content originally appeared on DEV Community and was authored by Suraj Vishwakarma
Introduction
If you want to collaborate, discuss and code in a group of developers, just like in tech companies, without getting a job in those and want to help others. If so then open source projects are the best way to get exposure to developing communities. It is advised that every programmer should contribute to open source projects to help the community.
Open source has become one of the most respected communities that helps others. There is more and more encouragement towards open-source participation. Every big tech company is investing in open source in some or another way. Such as Google has GSoC, Microsoft own GitHub, and many more.
Open source also led to the development of some of the great tools and software.
Some of the noteworthy are
- Android
- Linux
- Swift
- Kotlin
- Tensorflow
- Many More
There are many opportunities in the open-source community. You can explore a lot in these communities. You can also get a potential job in big tech companies through open source.
After so much positivity in open source. Let's dive deep into the open-source as an absolute beginner.
What is Open Source?
Let's addressed the elephant in the room that is “What is Open Source?”.
First, let's get clear about Open Source Software. According to Wikipedia
Open Source software is a type of computer software in which source code is released under the license in which the copyright holder grant users the right to use, study, change and distribute the software to anyone and for any purpose.
-Wikipedia
Open Source Software is not only free but also lets you access their source code. They let you understand their code. You can use their code in your project, can edit their project and after editing can distribute under a different license.
If a project is open-source, then other developers can contribute to it through platforms like GitHub(will discuss GitHub in a later part). The idea of helping other developer’s projects is forming an open-source community. This community is growing, helping, and impacting the development of software.
Two words most common word attached to open source community is Git and GitHub. Let look at these.
Git
Suppose, you are working in a group of developers on a single project. There is an original project file(let's called it master). Each developer is having a duplicate copy of the master and everyone is working on different features. After each developer has completed his work. Now, it's time to add the source code to the master.
If everyone adds the code to master without knowing each other’s code then there can be an issue such as
- Different structure of code
- Some features will work and some won’t
- Create complexity in the source code
- If the code isn't backup then it will hard to roll back changes
To solve such problem Git comes to rescue the developers.
Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficient.
-Git
In Git, version control tracks down every change in any file, which can be easily push to master. Since very change is track down, it become easy to go back to previous code, if there are bug in the new code, Otherwise there will be lot of trouble in manually removing code makin compatible with previous code again.
With the help of Git, every developer can work on different branch and after approval can merge into master.
GitHub
Git provides control over the source code and GitHub is a platform which uses git version control to upload open source project to theirs cloud for sharing code to others. Git is local and GitHub is cloud-based.
GitHub as a platform has helped developer in many ways such as
- sharing code to other developers
- collaborating with other developers around the world
- discussing ideas and features for the project
- other people can report an issue
- some developers can work on the issue
- And Many More
Open Source Projects to Contribute as Beginners
Animation-Nation
Language: CSS, HTML, JavaScript
GithHub Star: 99+
Zero to Mastery is an organization on GitHub that has various repositories for beginner of different languages and level. You can make your very first contribution to one of the repositories of zero to mastery organization. One of my favorite repository is of Animation-Nation, where you can contribute your CSS animation.
30 seconds of code
Language: JavaScript
GitHub Star: 76k+
It has short JavaScript code snippets for development needs. You can look into issue tab for finding some issue that fit your level.
Spacetime
Language: JavaScript
GitHub Stars: 3.4k+
A lightweight javascript timezone library.
Forem
Language: Ruby, JavaScript, HTML
GitHub Stars: 16.8k+
Forem is open source software for building communities. Communities for your peers, customers, fanbases, families, friends, and any other time and space where people need to come together to be part of a collective.
dev.to is hosted on forem.
OKHttp
Language: Java, Kotlin
GitHub Stars: 13.7k+
HTTP is the way modern applications network. It’s how we exchange data & media. Doing HTTP efficiently makes your stuff load faster and saves bandwidth.
Want to Read complete list?
This was a preview of the complete blog post that was created in collaboration with Aviyel. Read all 25 Projects for beginners on Aviyel.
Read Full Post here: Beginners guide to starting your Open Source Journey?️
Aviyel is a community driven monetization platform for Open Source Projects.
Aviyel works with open source creators to build and incentivise active communities, achieve financial independence and increase adoption of their projects.
We are building a knowledge sharing platform that offers seamless and guaranteed exchange of knowledge, support and content around open source projects between the open source community and the businesses and developers who build great products using them.
This content originally appeared on DEV Community and was authored by Suraj Vishwakarma
Suraj Vishwakarma | Sciencx (2021-06-27T06:32:55+00:00) Beginners guide to starting your Open Source Journey?️. Retrieved from https://www.scien.cx/2021/06/27/beginners-guide-to-starting-your-open-source-journey%f0%9f%97%ba%ef%b8%8f/
Please log in to upload a file.
There are no updates yet.
Click the Upload button above to add an update.