[all] A call for consolidation and simplification

Thierry Carrez thierry at openstack.org
Wed Mar 11 15:15:32 UTC 2020

Hi all,

I'd like to issue a call for consolidation and simplification for 
OpenStack development.

In the early years of the project, we faced a lot of challenges. We had 
to spread the development load across manageable-size groups, so we 
encouraged the creation of a lot of project teams. We wanted to capture 
all the energy that was sent towards the project, so we passed project 
structure reforms (like the big tent) that would aggressively include 
new community groups in the "official" OpenStack community. We needed to 
remove bottlenecks, so we encouraged decentralized decision making. And 
we had to answer unique challenges, so we created software to match them 
(Zuul). In summary, we had a lot of people, and not enough systems to 
organize them, so we created those.

Fast-forward to 2020, and our challenges are different. The many systems 
that we created in the early days have created silos, with very small 
groups of people working in isolation, making cross-project work more 
difficult than it should be. The many systems that we created generate a 
lot of fragmentation. Like we have too many meetings (76, in case you 
were wondering), too much energy spent running them, too much 
frustration when nobody joins. Finally, the many systems that we created 
represent a lot of complexity for newcomers to handle. We have 180 IRC 
channels, most of them ghost towns where by the time someone answers, 
the person asking the question is long gone.

So I think it's time to generally think about simplifying and 
consolidating things. It's not as easy as it sounds. Our successful 
decentralization efforts make it difficult to make the centralized 
decision to regroup. It's hard to justify time and energy spent to 
/remove/ things, especially those that we spent time creating in the 
first place. But we now have too many systems and not enough people, so 
we need to consolidate and simplify.

Back around Havana, when we had around the same number of active 
contributors as today, we used to have 36 meetings and 20 teams. Do we 
really need 180 IRC channels, 76 meetings, 63 project teams (not even 
counting SIGs)?

Yes, we all specialized over time, so it's hard to merge for example 
Oslo + Requirements, or QA + Infrastructure, or Stable + Release 
Management, or Monasca + Telemetry. We are all overextended so it's hard 
to learn new tricks or codebases. And yet, while I'm not really sure 
what the best approach is, I think it's necessary.

Comments, thoughts?

Thierry Carrez (ttx)

More information about the openstack-discuss mailing list