What I’ve learned in open source, and why I think you should contribute.

LunaConf 2022

Chris Kipp

A huge chunk of time

How I got started

  • Building silly little things for myself

No one uses them? Who cares, it's for you and you learn from it.

  • Finding something you use or like

Metals

Metals

Some things open source have helped me with

  • Teaching me that you don't need to be an amazing programmer to contribute to major projects
  • Reading code
    • Sometimes there is no other way to get the context
    • Many times you have to jump into other repos
    • Really... this is no different than work
  • Reviewing code
    • This code needs to be maintained
    • 100% remote and mostly with strangers

Some things contributing has taught me

  • Not all code gets merged, and that's ok
  • Some of the most important contributions aren't code
  • Some people are just assholes. Don't be an asshole, and if you can avoid assholes, avoid them. If you're a maintainer, don't put up with assholes.
  • If you don't enjoy working on something in your free time, don't.

Things to do while contributing

  • Ask questions and clarify before implementing
  • Over communicate in your commits (not just in your pr descriptions)
  • Go back and amend commits
  • Look before asking

Things to avoid while contributing

  • "Why don't you just..." *
  • Giant PRs
  • Don't implement a new feature without getting the OK from maintainers

Some resources

Now, go contribute