Presented by

  • Rob Norris

    Rob Norris
    @robn@social.lol https://despairlabs.com/

    Rob is a professional systems programmer with a focus on OpenZFS, the original CoW filesystem that won't eat your data. He has over 25 years industry experience as a programmer, sysadmin and technical manager in hardware, operating systems, infrastructure software and email, with interests including embedded systems, programming languages, network services, graphics and games. While he likes making computers better at things they should be good at, he delights in making them do things that they really shouldn't, and then excitedly telling you the story of the ensuing disaster.

Abstract

How to make sure contributors to open source are properly supported and funded is a question as old as open source itself. While we place huge demands on open source contributors, there are still very few ways for those contributors to work on open source while still drawing a full income. This leads to critical open source infrastructure software being undermaintained, contributors burning out and leaving or, in desperation, accepting any help they can. Serious bugs like Heartbleed or near-misses like the XZ backdoor are the obvious outcome.

A “third way” often discussed is for individual contributors to directly take on users of the software as customers or supporters. This is a path I took in 2023, when I left my job at an email service provider to become a private contractor working full-time on OpenZFS, an open-source filesystem and storage platform. It’s a 100% community-developed project with no corporate owner, which means I have to persuade enough people and companies to give me enough money, every week, to provide a stable income.

Through experience, contacts, personal profile and dumb luck, I have been able to make this work, but the overhead is immense: dealing with tax, putting aside money for leave and retirement, buying test hardware, accepting a loss of income for conference travel and attendance, writing reports, sending invoices, and so on - all things that aren’t writing code, the only thing I actually want to do.

No one ever told me it would be this hard. When we talk about how to properly fund open source, we talk about foundations and donations but we almost never talk about the experiences of the individuals on the ground who we’re asking to do the work, day after day, with open source as their job.

We never mention that if they fail, their family is going to suffer.

If you’ll join me, I’ll take you through my experience of going out on my own. I’ll introduce you to my family, and tell you (in real dollar amounts) about how much money is actually required to support them, and so what I need to be able to replace through client work. I’ll show you how my contract income compares to what I get from Github and Patreon support. I’ll show you all the difficulties that come from not looking like a “normal” employee or tradesperson. And I’ll explain to you the ways that I’m playing on easy mode, and why this would be so much harder for anyone with less industry experience than I have.

My hope is simply that to give you some idea of the size of the problem we face. If we are serious about making open source software available and accessible to everyone, we will need to build a system that doesn’t require individuals to make outsized sacrifices. Because at the end of the day, if forced to choose between my supporting my family and working in open source, I choose my family 100% of the time.