22
votes
Good open source projects to contribute to?
Anyone able to suggest good open source projects to help build coding experience that are relatively approachable?
Anyone able to suggest good open source projects to help build coding experience that are relatively approachable?
Obligatory "hey Tildes is open-source". Here's the stack in case anything strikes your fancy.
@Deimos, did I miss anything particularly enticing?
Haha well, I don't know if anything in the Tildes stack is enticing. It's all (deliberately) pretty boring tech, and at this point some of it's also quite outdated because I chose it all about 6 years ago.
It should be a decently approachable project and might be good for learning about a full website stack, but I don't feel like it's very exciting (other than getting to contribute fixes/changes to a site that you use).
I've started bootstrapping myself for Tildes development. There are a lot of dependencies but the dev environment is presented through a Vagrant controlled virtual machine that is converged via Ansible and that makes it a bit easier.
That's not a list of open-source projects to contribute to. It's a list of the technologies Tildes is built upon. Bauke is recommending for the OP to contribute to Tildes. I certainly don't imagine Bauke would include PostgreSQL as a beginner-friendly project for open-source contributions :)
I believe the traditional recommendation is this repo
https://github.com/MunGell/awesome-for-beginners
You can search through there for something that's more relevant to your skillset + interest (which you'd need to tell us to actually give you a recommendation).
Is there an open source tool that:
I'd definitely recommend looking for projects you have some familiarity with (either as a user or just prior knowledge). It makes it easier to get up to speed with a codebase, and also means that you get more fulfillment from seeing your work reflected in something you have visibility on.
If nothing comes to mind, I have a couple selfish recommendations (tools I use or am interested in):
It’s a very broad question. What have you learned about already?
One way to go might be to start building your own thing and then look into contributing to any libraries you use, such as when you see a bug and the fix seems easy enough when you debug it. Looking at things from a user perspective will suggest gaps.
NixOS packaging. Nix is a fairly straightforward language that will help you understand organization, and then you'll also learn a lot about build systems.