Ask HN: Getting started with GitHub
As a soon graduating CS senior who feels a calling to the startup scene - I felt an appropriate learning opportunity would be try contributing to open-source projects on GitHub.
However, I am not sure how to start. I feel that my skills aren't yet up to the level that I could contribute solid code to any of the large projects.
I am web developer at heart, so I have a strong knowledge of the main technologies as well as some django, drupal and others. Are there any particular projects you can think of that I would be able to contribute to? Any other relevant tips or advice that you think that I need?
tldr; How should I get started on GitHub?
5 comments
[ 3.4 ms ] story [ 18.0 ms ] thread1. Pick a project at (more or less) random; something that "scratches an itch" for you personally. It may or may not turn out to be maintained, the maintainer(s) may or may not be receptive to pull requests, etc., but nonetheless, you can grab it, fork it, and start hacking. If it's a project with a mailing list / forums, you might want to lurk a bit first, get a feel for the community, and maybe even post a message saying "Hey, I was thinking about adding Feature X, or fixing Bug Y, any interest in that?"
2. Ask around for a project that's actively seeking more help; maybe even one that's being run by a fellow HN'er. Build a good relationship with said HN'er and maybe get them to act as a bit of a mentor and walk you through the early phases of your involvement.
3. Check http://www.reddit.com/r/FOSSHelpWanted/ and find something there.
4. Start your own project from scratch and put it up on Github.
And for a slightly self-serving bit... if you know (or want to know) Groovy and are looking for a project like mentioned in [2] above - that could use some help - I might just know of one. Shoot me an email if you'd like to hear more. :-)
Anyway, many projects on Github use Github's issue system for tracking bugs and feature requests. So if you find a project that you are interested it, see if it has any outstanding bugs in the Issues section that you think you could take on. Then fork the repo and try to fix the bug. Test your fix to make sure it works, then submit a pull request saying that your fork fixes the bug.