When will Drupal 8 be released?
When will Drupal 8 be out? It's a question that's asked in many forms.
Sometimes it's phrased as: when will I have to upgrade from Drupal 6? Or, how long will Drupal 7 be supported?
Laura Scott and I were reviewing Dries Buytaert's 2010 State of Drupal and the estimates on when the new Drupal release candidate would be virtually frozen. The graph below is his summary graph of the trends in April 2010.
It turned out that the trends were not linear, and it was Laura who suggested that bug fixes aren't linear: they tend to be hyperbolic or (for fellow math majors) follow "power functions" that have a logarithmic aspect to them.
This got us thinking. What is the history of time between Drupal releases (TBDR)? In the slide below, Dries provided some this data in his slide from the State of Drupal at the March 2011 Drupalcon Chicago.
All that was missing were the dates, which Laura looked up from the Changelogs of each Drupal n.0 release, and from this I created the graph below, which is consistent with a power function. That is, geometric!
What this means is that the more the code, the longer it takes, and in this case (at least thus far) it is obeying a consistent pattern. Interestingly, in the period from of Drupal 4.0.0 to Drupal 4.6.0, the size of Drupal was pretty constant, especially as compared to the recent growth of Drupal core ... and the TBDR was about 6 months! What do today's longer release cycles mean for Drupal? I say this only because we are hearing that Joomla has a 6 month time horizon between releases.
If Developers were Horses...
What would it look like to have 90 developers contributing, only contributing really, really fast? Is there a marginal utility curve, like we learned in Econ 200, in there someplace? That is, at what point do you have so many people involved, that they are tripping over one another? Throwing more people at the problem does not get quicker results, and may in fact, slow things down. cf. The Mythical Man Month.
The Mythical Man Month premise is: Assigning more programmers to a project running behind schedule will make it even later.
So a question to ponder is to what extent can the growth curve in the above slide be changed?
The final slide from Dries that I think is relevant to this pattern appears below.
Most of us have heard of the "80/20 Rule." The rule is attributed to the findings of Italian economist Vilfredo Pareto. Sometimes its the 90/10 Rule or 95/5 Rule, or even 920/30 rule (see Figure 4)!
The challenge may be in making the ski-jump curved line more linear (while pinning the line on the y-axis). The more linear it becomes, the steeper the TBDR curve's slope becomes — meaning that releases can be more rapid.
In short, holding the intersection point on the left axis, as the graph becomes more linear, the faster the TBDR. The challenge we face as individuals within the community is helping in making that happen.






Comments
So when will D8 be ready? Well...
Well, it depends on where I am headed.
In the case of Drupal 8, ceteris paribus, all things being equal, given the trajectory curve, if Drupal 8 comes out in mid-2013, we can expect it to be twice the size of Drupal 7, and still stay on the curve.
If it has a smaller core, or stays about the same size, ceteris paribus, it might have a shorter release cycle.
The launch date of Drupal 8 does, in part, depend on what Drupal 8 is intended to be, size and functionality-wise.
If more resources, including human resources, are made available and/or a fundamentally new architectural approach were embraced, such as Object Oriented Programming, this could quite easily alter the existing curve.
Being a math geek, this was a fun read. I find no flaws in your logic. It is the final sentence that holds all the challenge, reality and short-comings that we have to swallow individually one by one. It's a bitter pill in the face of deadlines and personal lives.
We are witnessing a strong initiative to encourage more contributors to core. As you stated above this is problematic through diminishing returns. So don't we need an analysis of the efficiency of the 20 who do the heavy lifting? I'm all for finding new contributors but maybe (No can answer this) there is a more efficient way for the 20 to work.
I have only really re-pointed out your point. Thanks for this, it was a delicious snack. As the Drupal Ecosystem grows, we are going to need more analysis like this to help us understand what we are as a collective.
I propose we are a delicate onion with many layers of contribution and the 20 being the last most out edge layer not the center.
Thank you for the comment and good words.
As you probably recall from the Chicago Drupalcon, Dries mentioned both in the State of Drupal session and in the session for those interested in developing Drupal 8, that the role of Initiative Leaders would be key. It would not be all on one person.
I would like to make two points.
1. The span of control
2. Individual contributors as Managers
The span of control.
A group leader, even a top notch one, typically can manage from five to seven people. Inasmuch as there are only 24 hours in the day, if the leader is managing significantly more people, the amount of time drops off rapidly.
Some organizations are not "layered." A shibboleth of the late 20th century corporate CEO was, "we don't have a lot of layers of management around here," and so the leader leads by making speeches to group gatherings, not by having meaningful conversations.
The inflection point many a nascent organization is going from five, six, or seven people, all directly reporting to the founder, up to 25 to 50 people, reporting to functional managers, who then have the conversation with the founder.
Functional Managers, at least at first, are the five to seven people within the span of control who then work with their own teams, also which have five to seven people.
If you do the math, we see that with a span of control of seven, and seven layers of management after the leader, we can build an organization that approaches a million.
From what I see, Dries has addressed the span of control square-on by creating the role of Initiative Leader.
Individual contributors as Managers
Hewlett-Packard (HP) is the famous company that started in a garage in 1939 and grew to be a Dow Jones 30 firm by 1997, and they did this through cutting-edge technology.
They truly believed in hiring the brightest and the best — the top people from the top schools — and the created on of the greatest firms in memory — a good place to work which followed what we called "The HP Way."
Bill and Dave (Hewlett and Packard) found that they were growing exponentially and very quickly they moved through the layers of management as the number of people at HP grew. In other words, the spans of control were jumping as the organization moved from 50 to 350 to 2500 people.
Some of the people who came on board in the smaller, earlier, company found themselves managing their teams to the point that all they were doing was managing, and they were not doing what they loved — engineering and technology innovation. And they weren't always as good at management as they were at engineering.
Bill and Dave came up with a solution — only move people into management who wanted to manage. Reward individual contributors for their contributions, not just for management. These became the famous 67 and 68 (salary) curves.
Initiative Leaders may evolve into the folks who make sure that patches move through the system expeditiously so that any up/down on a proposed patch is conveyed to the person proposing the patch. This will increase the morale of the patch contributors in the long tail.
Impact on the logarithmic curve
In the above blog, the assumption was ceteris paribus, Latin for "all things being equal." Of course, we already know that things are changing and that Drupal 8 is being developed in a new way. I strongly suspect that the curve in Fig 3 will become steeper, meaning more will be done in a span of time, or a fixed amount of work will be done more quickly.
In my view, Initiative Leaders change the nature of the process, and almost certainly will help bring Drupal 8 out more quickly, or if not more quickly, with greater power and simplicity.
Post new comment