logo

drewdevault.com

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

How-to-abandon-a-FLOSS-project.md (4242B)


  1. ---
  2. date: 2018-12-04
  3. layout: post
  4. title: How to abandon a FLOSS project
  5. tags: ["free software", "maintainership"]
  6. ---
  7. It's no secret that maintaining free and open source software is often
  8. a burdensome and thankless job. I empathise with maintainers who lost interest
  9. in a project, became demotivated by the endless demands of users, or are no
  10. longer blessed with enough free time. Whatever the reason, FLOSS work is
  11. volunteer work, and you're free to stop volunteering at any time.
  12. In my opinion, there are two good ways to abandon a project: the *fork it*
  13. option and the *hand-off* option. The former is faster and easier, and you can
  14. pick this if you want to wash your hands of the project ASAP, but has a larger
  15. effect on the community. The latter is not always possible, requires more work
  16. on your part, and takes longer, but it has a minimal impact on the community.
  17. Let's talk about the easy way first. Start by adding a notice to your README
  18. that your software is now unmaintained. If you have the patience, give a few
  19. weeks notice before you really stop paying attention to it. Inform interested
  20. parties that they should consider forking the software and maintaining it
  21. themselves under another name. Once a fork gains traction, update the README
  22. again to direct would-be users to the fork. If no one forks it, you could
  23. consider directing users to similar alternatives to your software.
  24. This approach allows you to quickly absolve yourself of responsibility. Your
  25. software is no worse than it was yesterday, which allows users a grace period to
  26. collect themselves and start up a fork. If you revisit your work later, you can
  27. also become a contributor to the fork yourself, which removes the stress of
  28. being a maintainer while still providing value to the project. Or, you can just
  29. wash your hands of it entirely and move on to bigger and better things. This
  30. "fork it" approach is safer than giving control of your project to passerby,
  31. because it requires your users to acknowledge the transfer of power, instead of
  32. being surprised by a new maintainer in a trusted package.
  33. The "fork it" approach is well suited when the maintainer wants out ASAP, or for
  34. smaller projects with little activity. But, for active projects with a patient
  35. maintainer, the hand-off approach is less disruptive. Start talking with some of
  36. your major contributors about [increasing their involvement][relevant article]
  37. in the administrative side of the projects. Mentor them on doing code reviews,
  38. ticket triage, sysadmin stuff, marketing - all the stuff you have to do - and
  39. gradually share these responsibilities with them. These people eventually
  40. become productive co-maintainers, and once established you can step away from
  41. the project with little fanfare.
  42. [relevant article]: /2018/06/01/How-I-maintain-FOSS-projects.html
  43. Taking this approach can also help you find healthier ways to be involved in
  44. your own project. This can allow you to focus on the work you enjoy and spend
  45. less time on the work you don't enjoy, which might even restore your enthusiasm
  46. for the project outright! This is also a good idea even if you aren't planning
  47. on stepping down - it encourages your contributors to take personal stake in the
  48. project, which makes them more productive and engaged. This also makes your
  49. community more resilient to [author existence failure][existence failure], so
  50. that when circumstance forces you to step down the project continues to be
  51. healthy.
  52. [existence failure]: https://tvtropes.org/pmwiki/pmwiki.php/Main/AuthorExistenceFailure
  53. It's important to always be happy in your work, and especially in your volunteer
  54. work. If it's not working, then change it. For me, this happens in different
  55. ways. I've abandoned projects outright and sent users off to make their own fork
  56. before. I've also handed projects over to their major contributors. In some
  57. projects I've appointed new maintainers and scaled back my role to a mere
  58. contributor, and in other projects I've moved towards roles in marketing,
  59. outreach, management, and stepped away from development. There's no shame in
  60. any of these changes - you still deserve pride in your accomplishments, and
  61. seeking constructive solutions to burnout would do your community a great
  62. service.