Starters and Maintainers



Here’s to all the maintainers out there. To all the people putting in tireless, thankless work behind-the-scenes to keep code alive, to write documentation, to cut releases, to register domain names, and everything else.

starters和maintainers区别: 能力,工作性质,和工作量

There are two roles for any project: starters and maintainers. People may play both roles in their lives, but for some reason I’ve found that for a single project it’s usually different people. Starters are good at taking a big step in a different direction, and maintainers are good at being dedicated to keeping the code alive.

Another big difference is that usually there is a single starter of a project, and there always ends up being multiple maintainers. This is because supporting a project alone is simply not scalable. It will grow in popularity, and there’s a linear correlation to the number of issues, pull requests, and other various requests. For every Nth level of popularity a new maintainer must be added, ideally an existing heavy user.

Because it’s not scalable to support a project alone, it’s easy for a starter to get caught in a cycle of despair: he/she has all these cool ideas, but as each get released there is a growing amount of noise to distract from future ideas. It’s crucial to either forget about existing projects or find maintainers for them, but the latter is not a quick task usually.