Joel on Software writes about the usefulness of the program manager.
A bit long, but worth it. Lots of good practical advice on proper design, and funny too:
Of course, when programmers are peers of the program managers, the programmers tend to have the upper hand. Here’s something that has happened several times: a programmer asks me to intervene in some debate he is having with a program manager.
“Who is going to write the code?” I asked.
“OK, who checks things into source control?”
“Me, I guess, …”
“So what’s the problem, exactly?” I asked. “You have absolute control over the state of each and every bit in the final product. What else do you need? A tiara?”
At the end, he recommends the classic book How to Win Friends and Influence People by Dale Carnegie. I had intended to read that for a while now, so this seals the deal for me.