Eric S. Raymond has many fascinating insights into the world of open source. I believe he correctly identifies the strengths of open source projects and their path to continued success. Most notably, he points out that:
"1. Every good work of software starts by scratching a developer's personal itch."
The best projects are passion projects. I can feel when a project is scratching my itch vs when a project is being completed because it must be. A good developer is competent enough to deliver results even when they're bored out of their minds; however, the results pale in comparison to when they thrilled about their project. I believe that this fact is the single biggest strength of the open source community. By allowing inquisitive minds to be naturally drawn to things that they are interested in, open source communities become filled with intensely passionate people. When a developer looses their interest, they voluntarily step away. Compare this to a company, where a person who hates their job must robotically go through the motions of doing their job for years. Open source projects evolve fast, because their current team is always charged with the energy of passion.
My main experience with a Bazaar-like community is through Irishsat, Notre Dame's satellite club. Reading The Cathedral and the Bazaar reminded me of the Computing subteam in several ways.
Although we're not open to the world at large, the software team is somewhat open-source within the Notre Dame community. As a volunteer club, our members are truly in it for a love of the game. Any class, experience level, and major is welcome to our meetings and Github. We see more short throughput than I'd like (folks coming to 2 meetings then never again), but this article helped me realize that this is a necessary side effect of the Bazaar. People have to experience the atmosphere before deciding whether it interests them enough to dedicate themselves to.
ESR's statement about not understanding a problem until after your first attempt really resonated with me. As a group of unexperienced undergrads, the computing squad is often... lost, to say it nicely. I've read more papers on orbital dynamics, physics modelling, and control laws than I even thought I would, and I almost never understand them. After whiteboarding, asking aerospace majors, writing code, and poring over many graphs, I understand slightly. Without the theoretical background to understand on paper, we learn by trying.
The computing club's users (other teams within the club) are our greatest strength. The diversity across our teams (aero, electrical, physics, and computer engineering majors) means that someone usually knows the answer to our question. It's very common for our simple (incorrect) assumptions to be upended by someone who knows better in passing. For example, a random member who joined 3 weeks ago asking, "Well, can't you just split the attitude determination and control problems?" One of my biggest takeaways was the idea that we're not exposing our work to the rest of the team enough. If we could get more eyes (from professors, other subteams, or even CS students from outside the club) on our work, I don't doubt that we'd progress even faster.