> open source distributes design over small, self-assembling groups who individually tackle parts of an overall task, but large-scale, unified design needs centralized control and sustained effort.
I actually think at a minimum that this isn't true, but it's also possible that the complete opposite is true.
OSS has maintainers who know what they're doing. Fundamentally, one of their most important jobs is to gatekeep bad code and ideas from their project. It can be distributed, but it's not intrinsic to OSS at all. I find that usually the opposite is the case, and that maintainers leverage the technical controls they have over projects (basically PR's and RFC's) to "anchor" all decisions through them, while still trying to scale the work by having other people do as much of the work as possible.
However, I would say that potentially the even the reverse of what the author is saying is true in same cases.
> design over small, self-assembling groups who individually tackle parts of an overall task
From my perspective in a lot of privately run companies, the design and features that end up making it to production are actually a bunch of little compromises between special interests within a company, who are all vying for control and credit of the product. It's precisely because OSS is free and requires an extremely high degree of skill upon the maintainers that it's able to eschew these kinds of office politics and deliver what they think is the "best" for the software.
Obviously some projects are better than others, but I think there's a reason that OSS almost always tends to be of much higher quality than privately developed software. These "self-assembling" groups that organize along political boundaries of various product owners or managers is probably one thing that doesn't help get the best ideas to find immediate traction.
Am I wrong about this?