If you are a developer, then I would say you're in debt to unknown people. Don't worry it is good debt and there's nothing to be worried about whilst you repay it. But, yea, it is a never-ending one.
Let me explain
What is Open Source
First of all, what is open source?, and I would assume you know it. But if you are getting into this new world of programming so for that, here's the explanation.
Open-source software is computer software that is released under a license in which the copyright holder grants users the rights to use, study, change, and distribute the software and its source code to anyone and for any purpose. Open-source software may be developed in a collaborative public manner.
Those were the first lines I could find when searching for open source.
So now you know what open source is so let's talk about the good never-ending debt you are in.
What is Open Source Debt?
Let me break this down into few pieces
Why do people create things for free?
Open source is all about accessibility for everyone, with ease.
I am good with examples so let me show one example of me.
I am working on this project named Elecrue. I started this project and made it public for two reasons, I created it for my own because I was looking for a good starter code for electron-react in js but I didn't found one so I created one myself, the second I wanted to repay my open-source debt as React, Electron, Vue is open source. And the third and bit selfish one, Is that I wanted to beef up my resume.
By doing so, I helped a lot of other developers who were having the same problem, now they can use it to create other things to make more amazing things open source, like Evan You did by creating Vue open-source, and now hundreds of hundreds of developers and companies use it to create more amazing things. In this great loop, everyone makes their contributions.
How to repay Open Source Debt?
Now you understood the debt, now let's talk about the ways you can repay it.
There are many ways of repaying this debt, let's talk about some that are most common ways
If you want someone to give you something good then you need to give something good too
By writing quality code for a problem and then sharing it:-
As the statement itself explains, You should just do like me or Evan You, write a code for a problem or a fun project that you think will both make your resume good and will help someoneBy Educating others:-
Another way is to educate others. There are many ways to do this, Like creating tutorials on youtube, writing blogs, or making Github repositories for storing and sharing learning material like IoT Course from Microsoft (which I am learning IoT from).By Helping Others:-
Open Source is all about helping each other, so if you happened to find any bug in your favorite library or framework, then create an issue on its repository. If you have a solution for that bug, make a pull request on it. By doing so you are helping yourself and others, And it will add a big pulse to your resume.By Sponsoring the creator or project:-
I used Evan You as an example a lot of times to let's use him as the last example too. If you have seen his Github profile and Vue Github Page then you would have noticed that there is an option to sponsor a project or the developer, it means you can pay the developer or the project via Github to backup developer. As the project grows large like Vue it needs a lot of maintenance so often developers don't have the time or energy to maintain the project as there is a lot of work and time they need to pour in. So the people or the companies who uses the project, pays the developer a small amount so the developer keep maintaining the project
As October is coming up, there is a month-long celebration called Hacktoberfest, to promote open source. I think it is a good way to remember to repay your open-source debt. To learn about it more check out their website:- https://hacktoberfest.digitalocean.com/
That's it, I hope I explained well this great debt that never ends for good, If you liked it then share this article, If not then don't forget to give me feedback so I can improve myself.
Have a good day,
Rajvir Singh