Beefy Boxes and Bandwidth Generously Provided by pair Networks
"be consistent"
 
PerlMonks  

Re: Maxims for Programmers

by Maclir (Curate)
on May 19, 2002 at 02:35 UTC ( [id://167594]=note: print w/replies, xml ) Need Help??


in reply to Maxims for Programmers

Good programmers don't require much project management. No amount of project management will make bad programmers good.

Do you really know what project management involves? Do you think all a project manager does is use Microsoft Project to churn out fantasy gantt charts and schedule endless meetings that disrupt your real job of writing code?

I suggest the first thing for you (and all others who complain about project managers obstructing the "real work" is to read a copy of the Project Management Institute's "A Guide to the Project Management Body of Knowledge". Use Google to find the online pdf version.

Okay, do you have your copy in front of you now? Section II covers the nine project management "knowledge areas". The first stage, "Project Integration Management" covers the development of a project plan - note that a project plan is more that just a gantt chart. Some other responsibilities of the project manager are:

  • Scope Management - Defining the project scope and deliverables; dividing that into smaller, manageable components; formal acceptance of the scope and change control. Hmmm - why do some projects fail? No scope management.
  • Quality Management - regularly making sure that the deliverables will be achieved. Quality control. Les not wait until the system goes into production before we find it doesn't work, ok?
  • Risk Management - what risks are likely to impact the project, what is our response to each of these. When should be "pull the plug" if it is clear the project cannot deliver.

A good programmer knows how to best translate specifications into a working application (computer code, database structure, etc). A good analyst knows how to translate the users requirements / dreams / fancies into realistic, achieveable specifications. The project manager coordinates all of these - plus keeps management and users involved without obstructing the work of analysts, programmers and other project team members. All of these are specialised skills, and are equally critical to the success of all (non-trivial) development projects.

So, lets assume you are a good programmer, and you have been given a role as the lead programmer in a project. You still need a good project manager to perform all of the necessary project management tasks - to ensure you have specifications that are clear and realistic, to make sure that you are not distracted by non-essential changes every day or two, to make sure management and users know the project progress and status.

If you are a bad programmer, a good project manager will not make you a good programmer. A good project manager will make sure you are not a part of the project. (<monty>This is an ex-programmer. He has shuffled of this mortal coil, and joined the choir eternal.</monty>)

Replies are listed 'Best First'.
Re: Re: Maxims for Programmers
by perrin (Chancellor) on May 20, 2002 at 03:23 UTC
    It's interesting that this particular one seems to have generated the most reponse. When I wrote it, I had something pretty simple in mind. I didn't mean that projects should not be managed at all, but rather that most of the "project manager" people I've worked with are not very helpful. Nearly all of them were basically incapable of doing more than acting as glorified secretaries. They can't manage scope because they don't understand the work or the impact of changes and additions. They can't manage quality because they can only see and understand a small part of the system. (These are the people who are quick to e-mail you when an image is the wrong size, but have no idea when the entire application architecture stinks.) They can't manage risks because they don't know what's risky. They are handy for setting up meetings when the programmers and the cusotomers need to talk about these things, but that's about as far as it goes.

    There have been a few significant exceptions to this rule over the years, and my heartfelt thanks go out to those people. If only there were more.

    You brought up ideas about analysts and managers as well, but I won't get into that because I wasn't commenting on them in my statement.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://167594]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others drinking their drinks and smoking their pipes about the Monastery: (5)
As of 2024-04-25 04:57 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found