Back to postsArnold Lupamo
Jan 18, 2025·4 min read

Why I contribute to open source

Open source taught me more about software engineering than any course. Here's what I've learned and why I keep coming back.


My first open source contribution was terrifying. Reading a codebase built by engineers far more experienced than me, trying to understand conventions I'd never seen, writing a PR knowing strangers would critique every line.

It was also the best decision I made as a self-taught developer.

What you actually learn

Courses teach you to build things. Open source teaches you to build things *with other people* — which is most of what professional software engineering actually is.

In my Wikimedia Foundation internship, I wasn't just writing React components. I was:

  • Reading code written by engineers across time zones
  • Understanding *why* decisions were made, not just what they were
  • Writing code that others would maintain long after I was gone
  • Communicating design choices in PRs and discussions
  • None of that maps cleanly to a tutorial.

    The compounding effect

    Each contribution builds context. After a few months in a codebase you start developing intuition for its patterns, its weak spots, where the technical debt lives. That intuition is genuinely valuable and surprisingly rare.

    Where to start

    Don't look for "good first issues" on random repos. Find something you actually use and care about. Read the code. File a detailed bug report. That's already contributing. A PR will follow naturally once you understand the codebase.

    The Wikimedia ecosystem — Wikipedia, Wikidata, Commons — is a great place to start if you want meaningful global impact. The community is welcoming and the problems are real.