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

Re: Maxims for Programmers

by samtregar (Abbot)
on May 18, 2002 at 18:32 UTC ( [id://167541]=note: print w/replies, xml ) Need Help??


in reply to Maxims for Programmers

Good programmers don't require much project management.

I guess that depends on your definition of a good programmer, doesn't it? If your definition includes "doesn't require much management" then I guess you're right. But I've seen many programers that were doubtlessly "good" at the core tasks of programming but still needed lots of oversight to stay on task.

You will never get exact and complete requirements, and even if you did, they would change by the time the project was complete. Your only hope is to plan for changes and talk to your users.

I'd take that a step further - exact and complete requirements do not exist. Resist the urge to pretend your failures were the result of not being given them.

-sam

Replies are listed 'Best First'.
Re: Re: Maxims for Programmers
by perrin (Chancellor) on May 18, 2002 at 20:03 UTC
    That's true, I generally think of good programmers as people who are able to take the larger goals and schedules into account and manage their own time appropriately, e.g. not design a huge academically perfect solution when the project needs to be done in a couple of days and a simple approach will meet the immediate need. That proejct management one is a reaction to the idea that a not-too-bright person with no technical background and a copy of Microsoft Project is somehow needed to keep projects on track. Most of the companies I've worked for seem determined to foist one of these people on me whenever we have a project that lasts longer than 10 minutes. I always end up doing the real project management (negotiating requirements, prioritizing features with users, tailoring technical approaches to meet the expected timeline, coordinating with the other programmers) myself, because these so-called project managers are not capable of doing it.

    The thing that gets me is how they always want a big sequential list of every "task" so that they can enter it in Microsoft Project and tick things off. Lists like that create an artificial notion of accomplishment, i.e. finishing a small zero-risk task and checking it off looks more important than making progress on a large and risky task. I could go on bitching about the cult of Microsoft Project for pages, but I'm sure we've all been there.

      Whenever I hear someone using the word 'deliverable' as a noun, I reach for my gun.

      If only.

      Same goes for anyone who refers to a human being as a 'resource'.

        pdcawley++

        Same goes for anyone who refers to a human being as a 'resource'.

        Just the other week I took a day off. My boss sent an e-mail out that day referring to me in this fashion:
        The resource that performs that function is not at work today.
        Bloody charming.

        -- vek --
      I could go on bitching about the cult of Microsoft Project for pages, but I'm sure we've all been there.
      Word brother... those gantt schemas must die...
      You have moved into a dark place.
      It is pitch black. You are likely to be eaten by a grue.

        I knew that as soon as my boss asked me to install Project it was time to leave. It is kind of funny, he was actually a reall good manager for a really long time. He would give me a project, ask for my input, and then get out of the way so that I could get it done. I would occasionally have to report back how things were going so he could keep his boss happy, but nothing formal.

        Then, the Company started some sort of managers training program where they took all of our managers for one day a week for a couple of months and programmed them to play the part of textbook good manager. Pretty early on, I could see the changes. First, it was a written weekly report. Then it was keeping a ToDo list in Outlook and giving him access to it. Finally, the last straw. He asked me to prepare MS Project crap for each of the projects I was working on.

        I went on vacation, thought it over, decided that I would rather be unemployed and living somewhere nice than to be micromanaged. So, the day I got back from vacation I quit. I am moving someplace where I can worry about mountain climbing instead of whether I got all of the tasks in place on my latest Gaant chart. Maybe I will find another job with a better manager againa. Maybe I wont and will just have to work as a park ranger. Might be solar panel, 486 laptop, Programming Perl, and a 30 mile hike to the nearest road for me.

Re: Re: Maxims for Programmers
by atcroft (Abbot) on May 19, 2002 at 02:15 UTC

    Most reasonably-okay to good programmers don't require much management for the project they're working on, you're right-the management needed is more often on the order of running interference to keep small, numerous, and often unconnected (to the project in question) distractions from eating away at the programmer's time.

    As to complete and exact requirements, these are mythological creatures. In this case, the project management needed will be someone to enforce saying they had their chance to add that into the current requirements when it is said, "This is what you will need, right? You're absolutely sure?" and they say, "Yes," then try to come back a week or more later and say, "oh, by the way, we also need it to do...."

    (Well, we can hope, can't we...?)

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others surveying the Monastery: (7)
As of 2024-04-16 07:45 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found