I often listen to the EconTalk podcast, because I have an interest in economics, and I also enjoy looking outside areas of my own expertise for ideas and thought processes that can lead to results within my area of expertise. I've been trying to think about ways to apply economic theory to software.
Let me warn you now that I don't have a conclusion or really even a hypothesis yet. Just some observations and random thoughts. So don't be disappointed when you read through all this and I don't have an answer (yet).
Recently, I've been thinking about the incentives that are involved with teams writing software, and trying to achieve the optimal outcome with a given team.
While reviewing one of my favorite episodes of EconTalk (October 27, 2008 Episode, "Munger on Middlemen", with guest Mike Munger), I was reminded of a reasearch paper entitled "The Economic Organization of a POW Camp". It's not a hypothetical paper--it's based on accounts from POWs in WW2. The episode covers it quite well, but here's a quick overview:
So what happened? Preferences, prices, and the role of the priest as a "middleman". (Side note: "middleman" is often used as a pejorative, unfairly so. Listen to the podcast episode for more on that). From the paper: "it came into existence not by conscious imitation but as a response to the immediate needs and circumstances."
If a Red Cross package contains cheese, and I don't like cheese: that cheese is essentially worthless to me. I prefer to have cigarettes. Someone in the next barracks doesn't smoke, but loves cheese. It's in our mutual best interests to trade. However, finding each other and intiating the trade is time consuming--we might not ever get to make the exchange because we don't have enough information. The priest, however, travels among the barracks, learning preferences, enabling trades, and possibly even performing exchanges and distribution. Through his knowledge of the "prices", he is able to a) help everyone else improve their goods according to their preferences, b) improve his own lot, c) direct the economy towards equilibrium by his actions.
A typical approach that many leads would take is essentially that of a dictator or a centrally-planned economy: a top-down assignment of activities that the lead thinks are allocated correctly, even though in reality he'll never have enough information to make every optimal decision. He's giving everyone a Red Cross package, but not allowing or assisting with trades.
I definitely believe a lead/manager should act like the priest instead. Let the team organize the work according to the constraints and preferences, pushing down decision making as much as possible, with the "priest" merely facilitating and making it easier to do so. This can be tough though, as it might feel like giving up control, but maybe that control is mostly an illusion.
The "priest" was only necessary because the "actors in the economy" were unable to share information and reach equilibrium on their own. Given a small enough agile team, doesn't the standup itself serve the role of the priest by facilitating those interactions?
So maybe the role of a good team lead is to do what the POW guards did, and just stay out of the priest's [standup's] way?
This is of course half tongue-in-cheek and admittedly nitpicky. I really enjoyed the post :)
Matthew D. Groves lives in Central Ohio. He works remotely, loves to code, and is a Microsoft MVP.