Comment by jillesvangurp

4 hours ago

I've been fascinated by the dynamic of large scale OSS projects operating without management vs. industrial scale software development since I was working on my PhD around 2000. Basically, something like the Linux kernel involves thousands of contributors and yet ships reliable as clockwork every 8-10 weeks. Their management structure is basically a simple hierarchy of lead engineers gate keeping their source trees with the ultimate authority in the form of Linus Torvalds who merges changes only if they meet his criteria. Anything that receives the thumbs up goes in. And thumbs down means the contributors get to work on their patch some more.

There are no planning meetings, no stand up meetings, no product management, etc. There is a yearly conference; but that seems to be mainly a social event. Meetings don't really factor into the process. There simply are none. They've completely removed meetings. Many other OSS projects likewise have no meeting structures.

Meetings are synchronization bottlenecks. Everybody stops what they are doing to wait for a meeting where some kind of decision process takes place. Anything blocked on that decision has to wait until then. And then work progresses. The more meetings you have, the more bottlenecks you create. The larger your team, the less practical this gets. OSS projects are huge and cannot afford to drop everything they are doing to have a meeting. Meetings are way too expensive at scale.

What the OSS world does is resolve decisions asynchronously so they don't end up blocking anything important. Individual contributors and stakeholders might have side meetings of course but having meetings is not part of the overall development process. They do their thing and then changes get submitted.

The interesting thing is that most large scale OSS development is dominated by corporate contributors. Most full time contributors are employed and their employers have a big stake in these projects. But it seems they skip all the meetings when doing OSS. And then they switch back to having lots of them for all internal development.

The results don't lie. Many OSS projects have been around for decades, maintain a high pace of development, and seem to do a good job of staying on top of technical debt and quality issues. Without having meetings.