this post was submitted on 14 May 2026
32 points (97.1% liked)

Open Source

46794 readers
313 users here now

All about open source! Feel free to ask questions, and share news, and interesting stuff!

Useful Links

Rules

Related Communities

Community icon from opensource.org, but we are not affiliated with them.

founded 6 years ago
MODERATORS
 

Hello,

I have been thinking about making the jump towards Open Source, not just using OSS but also contributing to it.

First, some OSS projects/apps I know of are Peertube, Lemmy (right now using Voyager app), Mastodon, Matrix (used to use the Element app, gave up because I realized it was too hard for those around me who got used to Whatsapp), OpenStreetMap (through OrganicMaps), Jellyfin, and Actual Budget, Godot Engine, Luanti, GrapheneOS... I might know more, but those are the ones I remember right now.

Second, I have some basic experience with programming (mainly Java [haven't learnt GUI yet tho], SQL, and C# for Unity videogames), but no experience entering an already created codebase yet, let alone making changes and sending them (and I admit I might need to get some practice with Git), so it is pretty intimidating. Do you have any advice about it?

Third, I'd like to hear about projects you find interesting or useful. Not neccesarily to contribute or even use them myself, but I'm interested in which other projects there are out there.

Edit: Thank you for the responses, what I got was basically find OSS to replace not OSS I currently use, and contribute either fixing issues myself, helping with other stuff (documentation, helping newer users), or giving feedback on the project.

you are viewing a single comment's thread
view the rest of the comments
[โ€“] OwOarchist@pawb.social 12 points 10 hours ago (1 children)

Yep ... the pipeline to becoming an open source developer:

1: Use open source software.

2: Get annoyed by some small, incredibly specific bug.

3: Fix that bug yourself.

I've fallen victim to that a couple times personally.

And @TotallyWorthLife -- it doesn't take a whole lot of knowledge, as long as you're working on a project that's willing to humor beginners' mistakes. I contributed to OpenRCT2 and KDE, both written in C++ ... and I know basically zero C++. (I only knew a bit of Python and some half-forgotten PHP.) But I knew enough to look at the source code, ask devs questions about which files do what, and understand the code enough to zero in on the issue I was experiencing. In both cases, I ended up asking more experienced devs there if I'd gotten the changes right, but in both cases, I actually had. (Admittedly, one of those cases was basically by pure luck. They were using bitwise operators, which I knew nothing about, but I'd copied the line from elsewhere in the codebase where similar operations were done, and it happened to be the right one.)

Just two pieces of advice I'd have for starting out:

1: Look for something that should be a very simple fix. In both of my cases, I only needed to change one file, and only a couple lines in that file.

2: Look into fixing a bug, not implementing a new feature. Or, at least, if you want to add a new feature, you should definitely be talking to that project's devs first to see if they even want to implement that feature, and if so, get their advice on how they'd want to implement it. Yes, you're doing free work, but if you're adding more code for them to maintain and then expecting them to maintain it, you're kind of demanding that they do free work as well. A simple bug fix, though, is a one-and-done that should (at least in theory) reduce the amount of maintenance work the regular devs of that project need to do.

Okay, thank you for your experience and advice! Will keep eyes more open for bugs and stuff, and try to start small.