Redis founder Salvatore Sanfilippo hadn’t run up against term limits. No one was demanding he stop leading the project, and he wasn’t struggling to keep Redis innovating. But on June 30, 2020, Sanfilippo announced the “end of the Redis adventure” for him. Effective immediately, he relinquished his lead maintainer role, saying “I don’t really know what there is for me in my future,” except to “just look around… without doing too many things.”
Despite (or, rather, because of) being the face of Redis for over 10 years, Sanfilippo was done. He needed a break. While Sanfilippo’s departure only affects the Redis community, the reasons have far broader implications.
So let’s talk about open source maintainers, and how Sanfilippo’s example translates into best practices within the enterprise.
If you’re familiar with how open source communities work, you can skip ahead, because you likely already know this: Maintainers don’t write much code. As the GitHub Open Source Guide says, “If you maintain an open source project that a lot of people use, you may have noticed you’re coding less and responding to issues more.” Instead of writing code, you’re communicating with would-be contributors to help them shape their code to be useful for the project, or you’re documenting processes and vision, or any number of other things.
But coding…? Not so much.
Talking with the maintainer for the popular OBS project, founder (and maintainer) Jim Bailey told me that one of the major headaches of maintaining a project is that the incoming software often “isn’t very good.” As he explained, “It can be very difficult to review people’s code, because you want everything to be consistent in your project… There’s a lot of bad code that people try to contribute.”
Of course not all the code is bad, and sometimes it’s “bad” because it’s somewhat narrow and self-centered. As Bailey put it:
People only contribute stuff that’s useful for them, almost exclusively. They usually don’t contribute code that is useful to everybody, though sometimes they do…. [M]ost of the time, maybe 80 percent of the time, whenever you get a pull request for something, a request to merge code, it’s almost always [for their narrow self-interest].”
#salvatore sanfilippo #github #obs project, #redis