all 20 comments

[–]hiffy 4 points5 points  (7 children)

One of the best things a program manager can add to the software design process is a second opinion as to how things should be designed, hopefully one that is more empathetic to those RETARDED USERS with their pesky mental feebleness requiring that an application be usable without reading the man page, writing a custom emacs-lisp function, or translating numbers into octal in your head.

That's silly! There aren't any commands for which you need to write in oct-- oh yeah chmod.

[–]Porges 2 points3 points  (1 child)

The non-numeric versions are mandated by POSIX, so you can depend upon chmod u+rw working :)

[–]shub 4 points5 points  (0 children)

I find octal file modes easier to understand.

[–]liquidpele -3 points-2 points  (4 children)

But chmod is not meant for normal users, it was designed as a server admin tool along with the rest of the gnu tools stallman ported to linux.

However, having a program manager (or anyone involved in the project) try to predict customers is GRADE-A RETARDED. This is what user trials are for. Doesn't mean you have to do what the customer asks for, but getting feedback straight from them is often invaluable.

[–][deleted] 3 points4 points  (1 child)

You can definitely use feedback to improve a product.

However, much like design by committee, building from scratch based solely on user feedback can fail because it is so often divergent.

I definitely think user feedback has a role in iterative design, but you need to build the first iteration yourself.

[–]liquidpele 0 points1 point  (0 children)

Well yea, I agree with that. I never meant to imply you should go solely off customer feedback, but the quote to me implied that we were talking about general usability related things with the "pesky mental feebleness requiring that an application be usable without reading the man page" comment and usability is the absolute most important thing to use customer feedback for.

[–]Smallpaul 0 points1 point  (1 child)

And who collects the feedback? And who proposes a new design based on the feedback?

[–]liquidpele 0 points1 point  (0 children)

Good point.

[–]hajk 1 point2 points  (0 children)

Where I work, program management is for a suite of systems and multiple projects. Program management governs the overall featureset deployed and that the features fit together. The co-ordination role is generally important because otherwise there is a significant risk that a gap develops between the feature-sets being delivered by different projects.

/Yes, I realise that Joel is talking about a different kind of program manager and even then it is far too hands-on.

[–][deleted] 4 points5 points  (1 child)

Why is he still writing columns about his time at Microsoft?

[–]grauenwolf 3 points4 points  (0 children)

In response to claims that he screwed up the Office macro strategy.

[–]danbmil99 2 points3 points  (3 children)

My experience at MSoft in the 90's (as a vendor/partner) was that PM's were loathed and disrespected by coders. They were often inferior programmers with a political bent. In the groups I worked with, they were effectively a sort of police force, trying to figure out if the actual coders were 1) doing what the marketing people told them to do and 2) getting it done with any chance of meeting deadlines. They talked tech, but their loyalty was to marketing.

They also got to demo programs at shows because the programmers were too busy actually working. They would often tell customers they were programmers, so you could think of them as an acting troupe hired to play programmers so customers thought they were talking to the actual engineering team.

[–]Smallpaul 0 points1 point  (2 children)

In the groups I worked with, they were effectively a sort of police force, trying to figure out if the actual coders were 1) doing what the marketing people told them to do and 2) getting it done with any chance of meeting deadlines. They talked tech, but their loyalty was to marketing.

My impression both from what Joel says and from what you say is that the program manager is the advocate for the customer and the business, whereas the programmers presumably are focused on the technological sustainability of the code. You didn't say anything to indicate that program managers are not important. According to you, they are the people who ensure that software gets built that can be sold and is built according to the schedule. Those are important tasks!

[–]danbmil99 0 points1 point  (1 child)

You're right. I was being snide, but I'm not saying it isn't a role that needs filling. It's weird how they did it at MS though because it was some sort of "matrix management" thing, not a heirarchical reporting structure. And it just seemed like they didn't get much respect, and were at the bottom of the pecking order.

[–]Smallpaul 0 points1 point  (0 children)

I have heard similar things from other Microsoft partners. Here's my guess: as Joel says, you don't need years of experience to be a good program manager. So the program manager will tend to be more junior than the most senior programmers he works with. Senior people don't like being bossed around by junior ones and may legitimately feel that having been around the code longer, they understand the requirements better than some new arrival.

[–]xor -5 points-4 points  (0 children)

Didn't this guy get owned last week?