logo

drewdevault.com

[mirror] blog and personal website of Drew DeVault git clone https://hacktivis.me/git/mirror/drewdevault.com.git

Stress-and-happiness.md (9216B)


  1. ---
  2. date: 2020-01-21
  3. layout: post
  4. title: The happinesses and stresses of full-time FOSS work
  5. tags: [foss, maintainership]
  6. ---
  7. In the past few days, several free software maintainers have come out to discuss
  8. the stresses of their work. Though the timing was suggestive, my article last
  9. week on the philosophy of project governance was, at best, only tangentially
  10. related to this topic - I had been working on that article for a while. I do
  11. have some thoughts that I'd like to share about what kind of stresses I've
  12. dealt with as a FOSS maintainer, and how I've managed (or often mismanaged) it.
  13. February will mark one year that I've been working on self-directed free
  14. software projects full-time. I was planning on writing an optimistic
  15. retrospective article around this time, but given the current mood of the
  16. ecosystem I think it would be better to be realistic. In this stage of my
  17. career, I now feel at once happier, busier, more fulfilled, more engaged, more
  18. stressed, and more depressed than I have at any other point in my life.
  19. The good parts are numerous. I'm able to work on my life's passions, and my
  20. projects are in the best shape they've ever been thanks to the attention I'm
  21. able to pour into them. I've also been able to do more thoughtful, careful work;
  22. with the extra time I've been able to make my software more robust and reliable
  23. than it's ever been. The variety of projects I can invest my time into has also
  24. increased substantially, with what was once relegated to minor curiosities now
  25. receiving a similar amount of attention as my larger projects were receiving in
  26. my spare time before. I can work from anywhere in the world, at any time, not
  27. worrying about when to take time off and when to put my head down and crank out
  28. a lot of code.
  29. The frustrations are numerous, as well. I often feel like I've bit off more than
  30. I can chew. This has been the default state of affairs for me for a long time;
  31. I'm often neglecting half of my projects in order to obtain progress by leaps
  32. and bounds in just a few. Working on FOSS full-time has cast this model's
  33. disadvantages into greater relief, as I focus on a greater breadth of projects
  34. and spend more time on them.
  35. The attention and minor fame I've received as a result of my prolific efforts
  36. also has profound consequences. On the positive line of thought, I'm somewhat
  37. embarrassed to admit that I've noticed my bug reports and feature requests on
  38. random projects (or even my own projects) being taken more seriously now, which
  39. is almost certainly more related to name recognition than merit. I often receive
  40. thanks and words of admiration from my... fans? I guess I have those now.
  41. Sometimes these are somewhat unwelcome, with troubled individuals writing
  42. difficult to decipher half-rants laden with strange praises and bizarre
  43. questions. Other times I'm asked out of the blue to join a discussion I was
  44. unaware of, to comment on some piece of technology I've never used or to take a
  45. stand on some argument which I wasn't privy to. I don't enjoy these kinds of
  46. comments. But, they're not far removed from the ones I like - genuine,
  47. thoughtful praise arrives in my inbox fairly often and it makes the job a lot
  48. more worthwhile.
  49. Of course, a similar sort of person exists on the opposite extreme. There are
  50. many people who hate my guts and anything I've ever worked on, and who'll go out
  51. of their way to let me and anyone else who'll listen to them know how they feel.
  52. Of course, I have *earned* the ire of no small number of people, and I regret
  53. many of these failed interpersonal relationships. These cases are in the
  54. minority, however - most of the people who will tell tales of my evil are people
  55. who I've never met. There's a lot of spaces online that I just won't visit
  56. anymore because of them. As for the less extreme of this sort of person, I'll
  57. also reiterate what others have said - the negative effects of entitled,
  58. arrogant, or outright toxic users is profound. Don't be that person.
  59. In either case, I can never join new communities on the same terms as anyone
  60. else does. At least one person in every new community already has some
  61. preconception of me when I arrive. Often I think about making an alias just to
  62. enjoy the privilege of anonymity again.
  63. A great help has been my daily interactions with the many friends and colleagues
  64. who are dear to me. I've made lifelong friends of many of the people I've met
  65. through these projects. Thanks to FOSS, I have met an amazing number of kind,
  66. talented, generous people. Every day, I'm thankful to and amazed by the
  67. hundreds of people who have found my ideas compelling, and who come together to
  68. contribute their own ideas and set aside their precious time to work together
  69. realizing our shared dreams. If I'm feeling blue, often all it takes to snap me
  70. out of it is to reflect on the gratitude I feel for these wonderful people. I'll
  71. never be able to thank my collaborators enough, but hell, I could stand to do it
  72. some more anyway.
  73. I also have mixed feelings about how *busy* I am. Every day I wake up to a
  74. hundred new emails, delete half of them, and spend 3-4 hours working on the
  75. rest. Patches, questions, support inquiries, monitoring & reports, it's endless.
  76. On top of that, I have dozens of things I already need to work on. The CI work
  77. distribution algorithm needs to be completely redone; I need to provision new
  78. hardware — oh yeah, and, the hardware that I need ran into shipping
  79. issues, again; I need to improve monitoring; I need to plan for FOSDEM; I need
  80. to finish the Wayland book; I need to figure out the memory issues in himitsu
  81. — not to mention write the rest of the software; I need to file taxes,
  82. twice as much work when you own a business; I need to implement data export
  83. & account deletion; I need to finish the web-driven patch review UI; I need
  84. to finish writing docs for Alpine; I have to work more on the PinePhone; I have
  85. a legacy server which needs to be overhauled and is now on the clock because of
  86. ACMEv1; names.sr.ht needs to be finished...
  87. Not to mention the tasks which have been on hold for longer now than they've
  88. been planned for in the first place. Alpine is still going to have hundreds of
  89. Python 2 packages by EoL; the ppc64le server is gathering dust in the
  90. datacenter; there's been some bug with fosspay for several months, in which it
  91. doesn't show Patreon figures unless I reboot the process every now and then;
  92. RISC-V work is stalled because the work is currently blocked by a large problem
  93. that I can't automate; the list of blog posts I want to write is well over 100
  94. entries long. There are *several dozen* other loose ends I haven't mentioned
  95. here but am painfully aware of anyway.
  96. That's not even considering any personal goals, which I have vanishingly little
  97. time for. I get zero exercise, and though my diet is mostly reasonable the
  98. majority of it is delivery unless I get the odd 2 hours to visit the grocery
  99. store. That is, unless I want to spend those 2 hours with my friends, which
  100. means it's back to delivery. My dating life is almost nonexistent. I want to
  101. spend more time studying Japanese, but it's either that or keeping up with my
  102. leisure reading. Lofty goals of also studying Chinese or Arabic are but dust in
  103. the wind. I'm addicted to caffeine, again.
  104. There have been healthy ways and unhealthy ways of dealing with the occasional
  105. feelings of being overwhelmed by all of this. The healthier ways have included
  106. taking walks, reading my books, spending a few minutes with my cat, doing
  107. chores, and calling my family to catch up. Less healthy ways have included
  108. walking to the corner store to buy unhealthy comfort foods, consuming alcohol or
  109. weed too much or too often, getting in stupid internet arguments, being mean to
  110. my friends and colleagues, and googling myself to read negative comments.
  111. Despite being swamped with all of this work, it's all work that I love. I love
  112. writing code, and immeasurably more so when writing *my* code. Sure, there are
  113. tech debt skeletons in the closet here and they're keeping me awake at night, but
  114. on the whole I feel lucky to be able to write the software I want to write, the
  115. way I want to write it. I've been trying to do that my entire life —
  116. writing code for someone else has always been a huge drain on my emotional
  117. well-being. That's why I worked on my side projects in the first place, to have
  118. an outlet through which I could work on self-directed projects without making
  119. compromises for some arbitrary deadline.
  120. When I'm in the zone, writing lots of code for a project I'm interested in,
  121. knowing it's going to have a meaningful impact on my users, knowing that it's
  122. being written under my terms, it's the most rewarding work I've ever done. I get
  123. to do that every day.
  124. This isn't the retrospective I wanted to write, but it's nice to drop the veneer
  125. for a few minutes and share an honest take on what this is like. This year has
  126. been nothing like what I expected it to be - it's both terrible and wonderful
  127. and very busy, very goddamn busy. In any case, I'm extremely grateful to be here
  128. doing it, and it's thanks to many, many supportive people - users, contributors,
  129. co-maintainers, and friends. Thank you, thank you, thank you, thank you.