Lessons I’ve learned contributing to open source in my free time

Photo by timJ on Unsplash

First Off, Why?

I just want to start off by saying that contributing to projects can be super rewarding. Maybe there’s this weird bug in a node module that you use at work that you’ve built a fix for in your own application. If you can find a way to move that fix into the module, not only are you being a good open-source citizen…

Photo by Sander Weeteling on Unsplash

Learn new skills and deepen your knowledge with this exercise

Photo by Eepeng Cheong on Unsplash

Read Through Software Projects You Use

Over the last few weeks, I’ve been spending some time picking out some of the software projects I use and attempting to write small, simple versions of them. It’s been a pretty neat way to learn how and why certain things work the way they do.

Photo by Max Nelson on Unsplash


Identify Dependencies

Quassel is a service that stays connected to multiple IRC servers and channels that you can interact with by using the Quassel client. It’s nice to use when you want to take part in conversations in IRC channels but don’t want to miss out whenever you’re not logged in.


In order to get player stats for an Overwatch account, you need to go to the player profile page. There is no Overwatch API provided by Blizzard, so if you want that information…

Some background on generators

Generators are cool. They make it easy to write iterators by defining a function instead of building an entire class that implements Iterator. They also make it easy to write lazy lists and infinite streams. The big difference between a generator function and a regular function is that while a regular function can only return once (as in, once a function returns its execution stops), a generator function can yield multiple values over the time of its execution. In between each yield, the execution of the generator function is paused and waits to resume until the next time the generator…

Chris Opperwall

Software Engineer, but I write about my own stuff. I like Linux, FreeBSD, open source things, and bicycles.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store