In Praise of Inefficient Teams
To say something is efficient is to say that it produces an output with little waste; be that time, resources or energy. What is important to remember is that whoever defines ‘efficiency’ also defines ‘waste’.
In software development, the desired output is generally high-quality software. It is easy to think of waste as time not spent directly producing that output, but this may be missing the wood for the trees. Let’s talk about German foresters.
In Germany in the 18th Century the state was looking to increase the efficiency of their forests. They developed a system of ‘scientific forestry’ which sought to maximise the output of usable timber for a given area. They cleared away shrubbery and brushwood to allow easier access to trees and over time re-planted forests with single species of trees, a monoculture, to better be able to predict their yield.
How much easier it was to manage the new, stripped-down forest. With stands of same-age trees arranged in linear alleys, clearing the underbrush, felling, extraction, and new planting became a far more routine process. Increasing order in the forest made it possible for forest workers to use written training protocols that could be widely applied. A relatively unskilled and inexperienced labor crew could adequately carry out its tasks by following a few standard rules in the new forest environment. Harvesting logs of relatively uniform width and length not only made it possible to forecast yields successfully but also to market homogeneous product units to logging contractors and timber merchants. Commercial logic and bureaucratic logic were, in this instance, synonymous; it was a system that promised to maximize the return of a single commodity over the long haul and at the same time lent itself to a centralized scheme of management.
The foresters thought that the existing structure of the forest was wasteful - it reduced the efficiency of extracting timber for a given area. The underbrush got in their way for clearing trees and having different species meant it was harder to predict yields. In the short term, optimising the structure of the forest for their purposes and clearing away the ‘waste’ allowed them to increase their efficiency. The long term, however, was a different story.
In the German case, the negative biological and ultimately commercial consequences of the stripped-down forest became painfully obvious only after the second rotation of conifers had been planted. “It took about one century for them [the negative consequences] to show up clearly. Many of the pure stands grew excellently in the first generation but already showed an amazing retrogression in the second generation.” […] Only an elaborate treatise in ecology could do justice to the subject of what went wrong, but mentioning a few of the major effects of simplification will illustrate how vital many of the factors bracketed by scientific forestry turned out to be. German forestry’s attention to formal order and ease of access for management and extraction led to the clearing of underbrush, deadfalls, and snags (standing dead trees), greatly reducing the diversity of insect, mammal, and bird populations so essential to soil-building processes.The absence of litter and woody biomass on the new forest floor is now seen as a major factor leading to thinner and less nutritious soils. Same-age, same-species forests not only created a far less diverse habitat but were also more vulnerable to massive storm-felling. The very uniformity of species and age among, say, Norway spruce also provided a favorable habitat to all the “pests” which were specialized to that species. Populations of these pests built up to epidemic proportions, inflicting losses in yields and large outlays for fertilizers, insecticides, fungicides, or rodenticides. Apparently the first rotation of Norway spruce had grown exceptionally well in large part because it was living off (or mining) the long-accumulated soil capital of the diverse old-growth forest that it had replaced. Once that capital was depleted, the steep decline in growth rates began.
In trying to narrow-mindedly pursue efficiency the German foresters ended up treating as waste what was actually an essential part of the system. They gained speed and higher output in the short term but this cost them in the long term as the forest started to degrade.
Teams, like forests, are complex and it is hard to understand how the actions of each individual interact to produce the overall output. We should be wary of eliminating ‘waste’ too ruthlessly in the pursuit of an efficient team - things like down-time between tickets may seem ‘wasteful’, but can contribute to the overall health of the team.
This ‘wasteful’ downtime is time to learn and tinker. Time to down tools and delve into that interesting problem that they’ve been thinking about in the shower. Time to build stronger bonds in the team. Time just to breathe. I believe, in the long run, this helps teams deliver better software but in a way that is easier to measure in years rather than weeks.
The metaphorical value of this brief account of scientific production forestry is that it illustrates the dangers of dismembering an exceptionally complex and poorly understood set of relations and processes in order to isolate a single element of instrumental value.
We need to re-define efficiency by redefining what we consider waste. A team spending time to learn is not wasting time but ensuring that their skills are up to date for the next project. A team spending time joking about are not wasting time but forming stronger bonds to allow them to better support each other. This time is not waste, it is the sign of an efficient team.
Thanks to Mark Barber for reviewing an early version of this post.