How to start contributing to open source?

Just do it. It's that simple.

The thing about programming is that it's such a vast field and things are changing so fast that you'll never ever know "everything". There's always going to be something new, something you're probably not familiar with and it's intimidating.

I've been programming professionally for over a year now, I'm currently a sole developer of a project written in Django, Rails and Node.js. At the time of taking over the project I've never written a single line of Ruby, nor had I anything to do with Node.js. I was a junior who's been given a project where 2/3 of the stack is a mystery to me and there's nobody to do me code reviews, watch over what I'm doing with git or how do I deploy the application to production. You do not want to know how my first deploy went.

The thing is, sometimes the only way to truly learn something is to get yourself out there and experience it first hand. The thing about working on projects that are not solely your hobby projects is that you're probably going to run into a lot more complex problems and things that you're not familiar with, and the best part of it is that you're going to have to deal with it yourself. When I started using git I thought I knew what VCSs are because I know how to commit my code and push it to a remote branch. Turns out that life brings other problems and you'll learn to deal with them on the spot.

So the simplest thing you can do is start small. The first project I contributed to was a list of games with source code hosted on GitHub - something as simple as a README file. That's it. And you know what? I loved it and I was over the moon when the owner of the repo thanked me for making a pull request and contributing. I ended up being the top contributor and it was so much fun! And you know what? I was intimidated at first too.

The sooner you try to contribute, the sooner you're going to realise how silly of you it was to have been intimidated. Just do it! :)

/r/learnprogramming Thread