I read this yesterday, and I can’t gush about it enough. Paul Graham has managed to perfectly nail down exactly the problem that exists between the people who create (programmers, writers, etc) and the people who manage them.
Ultimately, this illustrates the best way to be a good Project Manager. As a PM, your job is to be the conduit between the development team and the rest of the world. You meet with your team on their schedule, leaving them large chunks of time to do the creating, and you meet with the other managers on their schedule. If you have to do a meeting between the developers and the managers, you have to schedule it out a few days and either make it the first or last thing of a day (first is better, putting it at the “end of the day” can mean disaster to the developers who might be hitting a creative stride at 4 p.m. when you want to have your meeting). I hear that good book editors work the same way, checking in on the writer when its needed for progress reports but not scheduling daily meetings to try to “keep them on task”.
Sadly, most Project Managers I’ve worked with over the years end up becoming just another manager, scheduling meetings with the dev team on a manager’s schedule and getting upset that the dev team’s productivity is dropping, resulting in more meetings and less productivity.
I really hope this article gets around and people take it to heart, because it really is true, and it would really solve a lot of problems.