When I first came on board my current employer, apart from the great teams, great benefits, and all the other goody-goody stuff, there were a couple of things that bothered me slightly. One of those was the belief that all of the developer machines should have identical software setups, and that exploring with other software packages was fine – as long as it was on a different system, preferably on a different network. I couldn’t pick out what it was that bothered me about that, only that it did.
Throughout the past few months, a couple of other things have come up which have also tweaked me slighltly the wrong way. Again, I couldn’t put my finger on why, but they did, and I was beginning to grow resentful of hearing them.
Earlier this week, I came across a blog entry by Jim Shore where he mentioned the Satir Interaction Model, something I had heard of and looked into before. I glanced at his references before I headed to bed that night, but didn’t think that much of it.
During the night a startling realization came to me. I cringed when I heard the identical machine setup (specifically around the version of Eclipse) because it was a decision not being made by the team, but by management. In other words, the company had a problem where different teams were using different versions of Eclipse which caused some collision and conflicts because things weren’t identical. Rather than pose the problem to the team, and let them work to self-manage a solution, management dictated a solution.
I realized this bothered me because we are normally very good about letting the teams manage the problems, and some really great solutions usually come out of that when they realize it is a problem. But for some reason, in this case, that process was skipped, and that’s /really/ what was bothering me.
I just finished reading Dale Emery’s Untangling Communication article, and it hits exactly what the problem was – I took in some words, and applied a past experience I didn’t fully understand to attach an emotional feeling to them, which muddied my thoughts to not be able to see why it bothered me. But knowing now why I feel like I do, I can more easily approach a solution and look at some other options which will solve versioning problems potentially without necessarily locking us all down to have to be identical.
Your story reminded me of a blog entry by DHH on the 37 signals blog, “Don’t scar on the first cut” [1]. Often a company will over react and lockdown in an effort to prevent something that is unlikely to actually happen again.
[1] http://37signals.com/svn/archives2/dont_scar_on_the_first_cut.php