Ramblings of a Tampa engineer
yellow Dodge Charger
Photo by Uillian Vargas / Unsplash

I've been noticing in the development community, a problem I can only describe as burnout. It started with an article that a large open source package maintainer gave another user write permission to it. This happens occasionally, but usually the new user has some sort of history with the project. In the linked case, this user had no prior work in the project.

This user turned out to be malicious and attempted and partially sucedded to infect those in the Node community by adding malicious code into the project and releasing it. This blog could be about that entire mess, but I was more curious why the original maintainer added someone else so willingly.

Before we jump into that though, we need to start with myself that has more hobby projects than free time. Projects have a few phases which I'd describe as developing, developed and abandoned.  Some projects never leave the developing phase, which could be for any reason. Perhaps the project is too difficult or time gets in the way.

A majority of my hobby projects are in the developed or abandoned phase. Developed projects live somewhere and I occasionally fix them or enhance them with features. Depending on the popularity of my projects, sometimes others in the world use them or in most occasions the project is used by just me.

Most projects end up abandoned, as I no longer use them myself but they are still deployed out there in the world. This means an occasional support request might come by. I got one a few days ago for a project, asking me to support the newest version of some game. Multiply this by a few projects, while working on new projects and you have a pile of too many things. This just leads to burnout.

I don't want to spend time on projects that I no longer use, because it selfishly doesn't help me anymore. I'm more driven to work on projects I also use, because I immediately have a return on any work. What happens though is some user meets me 50% of the way and presents code to solve a problem for an abandoned project. I might merge it, but then I have to do a release and write notes and at this point I've put too much time into it.

This is where just giving up an open source project is tempting, but as proven in the beginning of this article can lead to dangerous abuse. However, what can you do with an eager world of users wanting to prolong the life of every single piece of code anyone has written?

Taking this full circle back to the original point. The internet has changed, where even a little blog about a development topic is littered with years of support questions. All these avenues for support on developed or abandoned projects eat at you until you slowly burn out. This leaves projects in a rough state until you collapse and pass it on to someone else, much like what happened in the linked article above.

You’ve successfully subscribed to Connor Tumbleson
Welcome back! You’ve successfully signed in.
Great! You’ve successfully signed up.
Success! Your email is updated.
Your link has expired
Success! Check your email for magic link to sign-in.