There is so much good sense in this article, it resonates with me in a way that the “faddish” ones have not. Software development is still a craft and unlike most other crafts it’s a profound team craft, we still don’t know enough about how it really works and how it is and can be really effective. Those other team crafts have had centuries to mature while software development is really only 40 years old. Team management is perhaps the most important management skill but overlooked a lot of times for “silver bullet” solutions. I would rather get a bunch of ordinary folks to do extraordinary things than to try and herd the flock of flies that teams of “A” players are. TCO is a metric that is widely overlooked because it is really hard to do. It is the only truly effective measure of how good engineers really are becasue it measures there effectiveness over the life of the software. It’s fine to build quick & dirty solutions for urgent problems but it’s also very important to remember that they are quick & dirty and therefore have particularly short half lives but how many software develoipment managers say 3 times more expensive in half the time and you’ll have to start the rewrite 12 months in? I say it is a developing craft because if 17% of software development projects that cost more than $15m cause existential problems for the companies paying for those projects then it should be clear we’re still trying to figure this out. Congrats on a great article.