There is this notion there is a "Privilege of Expertise" in the software development world. Kailash Awati posted a piece on Conflicts Over Identity. In it there is discussion about conflicts between the roles of "project management" and "software developers."
I've heard this before, I've seen it in action on our commercial side of the our business (enterprise IT), and I've listened to "thought leaders" speak about the diminishing role of project management and the increasing role of self directed teams connected to their customer.
I'd conjecture that most of the reaction on the commercial side comes from BAD MANAGEMENT. So instead of fixing the management processes, the reaction is to remove or diminish management's role.
In the domain I work, there are troubled management processes. This is always the case. But there is not discussion about replacing management with self directed teams. We have hard deadlines, we have changing requirements, we have budget variability. But so do the workers at the local asphalt paving company that work on the county roads outside our neighborhood.
In the same way our fixed launch dates, with a capped budget for development for the flight avionics software, and changing requirements does not elicit calls for reduced project management.
What's different between our mission focused development of close to a million dollars worth of software and programmers working in environments where project management is seen as undesirable?
My first thought is there is a sense of privilege that has set in. This privilege may come from the separation of roles. Technical and managerial. With this comes the notion - the forgotten notion - that writing software for money (someone else's money) is a business. The business aspects of software development have been forgotten. With this comes the "forgetfullness" of where your pay check comes from. It doesn't come from the bank, it comes from customers buying your stuff - be they internal external customers.
With the absence of the business concept it may be the sense of privilege creeps in. "I'm good, I'M very good, I'm an agilest and I don't need to have anyone telling me what to do." This is likely a stretch, but there doesn't seem to be a good explanation for this behavior.
We've all worked in poorly managed organizations. Our business depends for the most part on poorly managed organizations calling us for help. But at the core of this privileged approach is the notion that business and the management of business is what business is about. Programming is a product development activity. The products of the effort are what the business sells so they can pay the programmers.
Inverting the relationship between management and product development doesn't seem like a sustainable approach to me.
After reading the paper, I've concluded that the view of programmers on SlashDot is possibly best representative of the community of reader of SlashDot, but very narrow in the larger world of software intensive systems.
In the past I was the software development manager for a fault tolerant process control company. When we hired programmers from outside our industry we took them to a pulverized coal boiler in a refinery with our fault tolerant process control system containing 100's of 1,000's of line of code. We'd have them stand under the flame box, with air rushing by strong enough to pull up their hard hat. Then ask how "special" the role is of programmers when they speak in terms reflective in the paper.
The missing element I see in domains where privilege of expertize replaces management of that expertise is there is no overwhelming mission for the software. Development of the software has become an end unto it's self. A craft with craftsman, but a distorted craft. Programmers speaking on SlashDot appear to make themselves the end rather than the means for business success.
IN that prior company we actually took new developers under that boiler in LA (California) and explained that the software system they were going to work on controlled megawatts of thermal energy and if our fault tolerant emergency shutdown system failed to work when commanded to do so as specified, that boiler would be a smoking hole in the ground. We had them stand there for a few minutes in the roar of air and flame produced by the coal stream (now natural gas). A few decided not to take the job of "programmer."