He explains, from a software development point of view how a (software development) company must be run to get things done, the underlying infrastructure eliminating overhead and letting the programmers just do their job (the main task of the company) without anything else distracting them from doing their programming.
I think his points are extremely valid, and even more so, that they can be applied to more than just software development companies. Joel himself makes some great other examples :
Nobody expects Dolly Parton to know how to plug in a microphone. There’s an incredible infrastructure of managers, musicians, recording technicians, record companies, roadies, hairdressers, and publicists behind her who exist to create the abstraction that when she sings, that’s all it takes for millions of people to hear her song. All the support staff and management that make Dolly Parton possible can do their jobs best by providing the most perfect abstraction: the most perfect illusion that Dolly sings for us. It is her song. When you’re listening to her on your iPod, there’s a huge infrastructure that makes that possible, but the very best thing that infrastructure can do is disappear completely. Provide a leakproof abstraction that Dolly Parton is singing, privately, to us.
I think that the same can be said for project management – as a project manager, you have to provide a leakproof abstraction to your team members so that can get on with their project work.
You making the hard decisions or those nitty-gritty follow-ups that no one else wants to make is one part of the job. It’s not about the power of the position, it’s about how you can serve your team members best. They have the detailed view, you have the global view, and you both work together to get the project finished.
Making sure that there are no stumble blocks on the road ahead of them that can distract them is for me an important part of being a project leader.