retpolanne blog

Your friendly programmer catgirl 🏳️‍⚧️😺

2 April 2024

On the humanity of open source developers

by Anne Macedo

It’s almost 3am and I’m pondering about something here.

We’ve recently seen the weird situation of the xz-tools [1]: pressure on top of a maintainer that led to some ill-intentioned developer to add some backdoor to xz. That kind of reminds me of this comic strip by XKCD [2] where modern digital infrastructure is dependent on a pet project made by a random developer who single-handedly maintains it for fun.

Mental health is something that had worried me for a long time. I’ve suffered enough burnouts to learn not to overwork, I usually take the Spoon Theory [3] as an analogy for what I’m currently feeling. It’s already hard enough to live under a capitalist society, where we need to work 9-5 in order to have just enough money not to die of famine and to be part of this consumerist cycle. I’m currently living alone, and sometimes I get so angry that everything I do costs money. Aside from that, having chores due to living alone is already tiring. As a neurodivergent individual, things usually get messy as quickly as they can. As a mentally-ill person with Borderline Disorder and Autism, everything can easily trigger glitches in my head and make me go through a shopping-spree that always puts me on a budget-contention behaviour later. And being transgender and doing hormone therapy just makes my energy vanish. At least I’m still pretty, thank god.

From time to time, when I settle and my mental health seems stable enough, I tend to make plans and follow them thoroughly. I had time and energy to do things such as apply to Google’s Summer of Code (GSoC) program and be able to follow through with my plan of becoming a kernel developer. I reached out to great developers and Linux perf maintainers such as Arnaldo Carvalho de Melo (acme), Namhyung Kim and Ian Rogers, who helped me find things to work on, reviewed my proposal, reviewed my patches (and thankfully merged one of them :), they really helped me as mentors should do.

This week, I planned on crafting my proposal to GSoC and sending it for reviews, but trying to balance my day-job with home chores, fatigue due to hormone replacement therapy and the Easter holiday just around the corner, I was kind of losing faith that I would be able to keep up with it, even if it was a smaller project. Remember that I do my open source work off hours, so it’s not always something that I can commit to for certain.

Messaging my mom, back and forth, she tells me that she got dengue (the virus that is fairly common in Brazil during summer carried by specific mosquitoes) and she wasn’t feeling very well. She went to the doctor on the other side of the city (she’s a teacher at a public school, and her healthcare plan only covers hospitals in a specific region of Sao Paulo) and she was feeling exausted. On Sunday she went to the hospital again because she was feeling sick again, and then at night she called me, desperately, asking for company and for help. She’s also suffering from depression, and I had to move to live alone abruptly last year. She needs my help and companionship. She’s a tough woman, but she’s been through a lot.

In the next few weeks we’ll search for a place and live together again. I decided to send an email to the perf maintainers/mentors withdrawing my the GSoC application so I could take care of her and of myself as well. They reassured me that I could help whenever I could :)

And guess what? Behind plain-text emails written by highly experienced developers, there’s a lot of humanity. Not only were they highly inclusive and helpful, they also shared bits of their personal life as they resonated with my mom’s situation.

I was glad to see such kind of humanity in an open source project of this proportion, and this is something that many seasoned developers should learn.

Nitpick, nACK patches as you want, but do so in a constructive, empathetic manner. And throughout my kernel journey, although I’ve seen some examples of people not being very helpful, I’ve also seen great examples of people doing their best to help you.

And even though I didn’t apply for the GSoC this year, I’ve already gotten a patch merged to the upstream! I learned about a new tool. I got in contact with maintainers, who appreciated my work. Got constructive feedback on my patches, which I’ll carry to every git commit I make. I learned a lot :)

It was a nice journey, please take care of your health and of the people you love.

And thank you acme, Namhyung and Ian for the big-small mentorship you gave me :)

[1] Everything I Know About the XZ Backdoor

[2] XKCD: dependency

[3] The Spoon Theory

tags: mental-health - open-source