3 ms·
If each one of us contributed just a little bit of time to the open source software that we love, we could prevent hundreds of valuable projects from going stal
by bunderbunder 15y ago
If each one of us contributed just a little bit of time to the open source software that we love, we could prevent hundreds of valuable projects from going stale or dying.
Or, alternatively, we could speed its demise. (Disclaimer: I'm massively speculating here.)
Brooks's Law applies to open source projects, too. As the number of people working on a project increases, so does the amount of time more-experienced project members have to spend on supporting less-experienced project members (giving advice, evaluating their changes, fixing their bugs, etc.). So does the amount of time that can be eaten up by communication in general. That creates a succession of traps:
- Project maintainers can get caught spending all their time doing the unfun bits (bureaucracy) instead of the fun
bits (cutting code).
- By extension, more coding work has to fall to contributors who are theoretically less productive at the task.
- At some point, this results in each new contributor being a net negative in terms of productivity.
- Meanwhile, the core team members are getting bored or frustrated or both, and burning out.
I'm thinking here, too, of that recent study suggesting that 40-person teams are approximately as productive as 4-person teams. Speaking from my own experience, I suspect that the team that's 1/10 the size is also having 10x as much fun.
So I suspect that a project is generally much better served by a few people who work on it because they are really dedicated to it, than by a large number of people who make small contributions, perhaps only out of a sense of obligation. Sure, the vast majority of developers are most likely just consumers of open source tools and not producers of it. That's ultimately a good thing. If everyone's making bricks, who's left to build walls?