27
votes
Good open source projects for beginners to contribute to?
I'm looking for a project to contribute too. I'm not that experienced with programming, so I want something that isn't too complex. I'm also looking for a fairly young project. Big, mature projects don't really have much that a newbie can work on.
Tildes :)
The codebase is very easy to get into, and there's lots of features (big and small) that you could try.
Web development probably isn't a great place to start though, unless you're already familiar with it somehow. There are so many different pieces working together that it's going to be quite intimidating unless you already have knowledge related to at least some aspects of it.
I'm trying to keep the Tildes code pretty approachable, but it's inherently pretty complex just due to the nature of web development.
Depending on the OP's experience with full-stack web apps, jumping into a codebase like Tildes may be a lot to bite off at once, but I know Deimos has been super helpful in answering questions and I imagine others are happy to jump in. I wonder if we should have a topic here in ~comp about "Tildes codebase questions."
I definitely think ~comp can serve that purpose for now, but ~tildes.convocation (from the Convocational Development article which was being shared around a few months ago) or even just ~tildes.dev was my suggestion for a dedicated place for this sort of Tildes specific development discussion.
I'd also like to suggest a chat room (Gitter, IRC, Riot/Matrix, etc.), as it can be intimidating to have to create a post for small questions.
Great point, though I worry about the ease of getting questions answered in new topics vs chat rooms. I've seen good and bad in both. I guess it depends on the volume of requests: if the volume is small, a chat room can be great; if the volume increases, separate topics are probably better to avoid questions getting lost.
I don't expect volume to be a problem right now, though, ha.
Ah nice, either of those sounds good.
What types of projects are looking for? Basically, what interests you? Web apps, CLI apps, desktop apps? Which language(s) do you like?
EDIT: I did some searching around HN and reddit, and there are a number of threads on each with lists of projects, so you may want to take a peek there. Also, I found a link to Up For Grabs, which looks pretty neat.
You start contributing to open source projects only once you start using them. So make a short list of open source projects that you love using, but you wished you were able to "fix" something in that.
I know that you mentioned a small project. But that doesn't have to be the case even if any beginner wants to contribute. Any interested person can at least contribute to the documentation.
I'm saying so from my personal experience. I am interested in Emacs, Org mode, Nim (language), Hugo (static site generator). I'm not an expert coder in any of those domains, but I started contributing slowly by doing doc updates and fixes. Then as I read more about those projects and passively reviewed the Q/A on their help channels, I gained more confidence to then start contributing in their code bases too.
Mozilla is a huge project, and not just the Firefox browser!
We have an intake website for prospective volunteers. We also have an
#introduction
channel on our IRC server that is a good place to start.