IP-WARS.NET - a forward command post of the IP Wars
create account| Front Page|Mission|Standard Operating Procedures|Operating Instructions(aka FAQ's)|Privacy Policy|Site Stats/Info|Admin Actions|Search
Sections:General|IP|SCO v World |Microsoft|grok*/OSRM|IPW Site Meta|Logbooks|Diaries|Legal Documents|View All Articles

Ask Ip-Wars - Project Management


General News

By system5, Section Diary
Posted on Mon Feb 21st, 2005 at 18:19:34 EST

The Colonel's diary confirmed that there are several experienced coders out in Ip-wars land. I am not a coder - went the analyst route.

After 5 years of mainframe and distributed experience, I became a project manager 2 years ago and am always interested in what I can do to be better.

So what do the members think makes a good project leader and what makes a bad?

Any horror stories - with obscured information to protect the guilty of course.

Thanks -

< Perens says a Patent Suit is in the Works (198 comments) | Mea Culpa (103 comments) >
Display: Sort:
Ask Ip-Wars - Project Management | 11 comments (11 topical, 0 editorial, 3 hidden)
Re: Ask Ip-Wars - Project Management (4.80 / 10) (#5)
by codswallet on Wed Feb 23rd, 2005 at 03:32:29 EST
(User Info)
A lot depends on the style you're comfortable. You can't just imitate someone else, if you're not comfortable in the role. That said:

Read some good books. The Psychology of Computer Programming and the Mythical Man Month are classics.

Learn something about UML and specification based design and also agile programming. They both have something to contribute and you have to strike a balance. If you try to specify everything up front, the design will be obsolete shortly after you start coding. If you jump right in and code, you'll have a mess you'll never be able to fix.

Be prepared to throw away code. There is no marxist theory of value in programming. Code is not worth the amount of labor that went into it. That's a sunk cost. If it's no good, then it's worthless. "But we put too much work into it to throw it out is never a valid reason by itself". This logic has destroyed many projects. If you're going to use agile programming techniques, you must be willing to sacrifice code. They won't work if you aren't.

"There's never time to do it right. There's always time to do it over." This is the place you don't want to be. This is also where management will try to push you. Don't agree to the impossible in order to preserve the peace and hope to make up time in the last half of the project. That NEVER happens. The first 90% of the project takes 90% of the time and the last 10% takes the other 90%.

Get your concessions up front. You have the most leverage with management at the start of the project. From then on the pressure will be on you to make givebacks. Hardly ever will you be granted more resources unless things are so hopeless that it's too late for them to do any good.

Never agree to a schedule where everything is assumed to go perfectly. If you see a perfect CPM schedule where all resources are 100% utilized, you can be sure it's unworkable. The reason is simple. The less slack there is in a schedule the more sensitive it is to small perturbations. You don't want the schedule that gets the project done the fastest. You want the fastest schedule that has a good probability of getting the project done. Somebody will get sick, quit, have a baby, get promoted, be urgently needed on another project. If that loss would create a disaster, you don't have a robust schedule. This is hard to sell to management, so you have to lie, and hide slack in the schedule. A good boss (who once had your job, after all) knows this and will wink at it.

Never pressure your programmers to reduce their estimates of how long something will take. They may just agree to do it, and then you'll be sorry. If you don't trust their estimates, you don't trust them. If you don't trust them why are they working for you? It's ok to try to redo the design to reduce the amount of work and shorten tasks, but why force people to lie to you? You could just lie to yourself and save the bother. Likewise don't let your boss lean on your staff to cut estimates. It's your job to take the heat and protect them. If you can't, you should quit before the inevitable project disaster drags you down with it.

Design for test. The QA and documentation is at least half the project and then there's years of support. You need to design features into the code that make this process easy. Try to find some good books about this (I don't know of any, but I haven't looked for a few years). Some of the basics are:

  1. Fault simulation. You need to be able to inject errors into the system to see that they're handled correctly. Some errors don't occur often enough or conveniently enough to just wait.

  2. result simulation. If something happens after a long sequence of screen I/O don't make some QA person spend weeks typing the same stuff into the system to make it happen. The system should be able to pretend. Screen capture is necessary sometimes, but it's a crude and inflexible approach. Try to work at a higher level.

  3. Systems should be able to dump their state in some meaningful way. It's tedious to poke through this kind of information, but sometimes it's the only way to find anything. This goes triple for client server and networked systems. You have to be able to tell whether the problem is in the client or the server. This is absolutely necessary. See tagging data in 4.

  4. In an event based system, tag your data and consider tools to organize the traces. You have to be able to match everything up so it makes sense.

  5. If you are using a language that supports aspect based programming, use the feature. It makes writing debug code much easier.

Last, remember that designing away code is better than writing it. The code you never wrote is the only code in the system that by definition meets all its specifications, is bug-free, infinitely efficient and costs nothing to QA or support. No other code can make that claim.

As far as personal style goes, playing slightly stupid is very effective with the young arrogant types you get a lot of in programming, if you can carry the role. They'll tell you a lot more if they think they're smarter than you. The older more experienced staff catch on pretty quick, but they usually just smile and play along with it. Really good female managers sometimes use this style. The 25 year old hot shot talking down to the 45 year old manager with 25 years experience never seems to wonder how the manager could be stupid and still be where she is. They don't have to overplay it, because the hotshots snatch the bait right up. The manager will say. "Could you explain that again, I'm not sure I understood that last bit" - translation "I think your blowing smoke, how would you like a little more rope". It's great fun to watch. Harder for men to do though.

Technical skill isn't everything. You need a lead programmer who gets along with everybody, is a calming influence and never criticizes one team member to another. Someone who is always willing to discuss ideas on the merits, even if they are his. If you don't have such a person, you're going to have to do that job, and you probably don't have time to.

  • Re: Ask Ip-Wars - Project Management by ColonelZen, 02/23/2005 09:31:02 EST (4.00 / 4)
    • Re: Ask Ip-Wars - Project Management by codswallet, 02/24/2005 00:48:53 EST (4.00 / 5)
Re: Ask Ip-Wars - Project Management (4.16 / 6) (#2)
by ColonelZen (tzellers lieth within pobox of thy kingdom com) on Tue Feb 22nd, 2005 at 00:19:46 EST
(User Info)
I've always worked in small shops, and since the end of my SysProg "apprenticeship" never more than two steps from the CIO for the site, and since then pretty much wholly responsible for my own baliwick so my experience may be atypical.

The best of my managers were always people who came up from the trenches.  Not necessarily the same trench, but who had worked at a low level and knew the kinds of tradeoffs and decisions that a programmer or sysadmin/sysprog has to make on a day to day basis.

Mutual trust is probably the best predictor has to how well the techie/manager relationship will work. The best managers would tell me the details of what they needed and ask for my help in wording and describing demonstrable milestones on my projects and developing realistic timetables.  Bad managers would write their own descriptions of "milestones" without asking input (or asking then ignoring it) and often in words that were purely subjective.

Oddly, at two of the best managers I've ever had were women.  Women are rarely great or deep programmers (I've met a couple, but they are rare!) but these women had worked in various other aspects of IT and worked their way up and really understood.  There seems to be something about certain kinds of women who understand practicality and at the same time can handle/deflect/diffuse political issues.

Beyond that, if you and your manager trust each other he/she will turn you loose to do your duties with minimal interference while holding the umbrella to keep the crap from up the hill from rolling down on you.

-- TWZ

  • Re: Ask Ip-Wars - Project Management by mck9, 02/22/2005 23:51:42 EST (4.00 / 7)
    • Re: Ask Ip-Wars - Project Management by codswallet, 02/23/2005 00:12:39 EST (3.83 / 6)
Re: Ask Ip-Wars - Project Management (3.83 / 6) (#1)
by stewart on Mon Feb 21st, 2005 at 19:09:46 EST
(User Info)
I work in IT in the aerospace industry. I see a lot of project management issues come up. Not in the IT arena but in the general working/design. The answer is delegate. beyond that make sure you know who you deligated it to. Sit on them for dates and you won't go much wrong. Build a team and make sure you are on top of it. Make others work for you and you will have no probs.

Bye bye spambot (none / 0) (#11)
by Potential Recruit on Tue Nov 28th, 2006 at 12:38:11 EST
This used to be a spambot post that is flooding the site. Due to volume, I had to resort to this while I work to block access by these bots. My apologies - thanks for your patience.

Jeff

Ask Ip-Wars - Project Management | 11 comments (11 topical, 0 editorial, 3 hidden)
Display: Sort:

Links

Firefox 2

Use OpenOffice.org

Add to Technorati Favorites

Join EFF Today

ToTehMoon web site button

~ Merkey v The Internet et al Docs
~ Yahoeuvre
~ tuxrocks.com (SCO cases legal docs)
~ scofacts.org
~ eagle.petrofsky.org
~ Zen's Den
~ Yahoo SCOX Message Board
~ Lamlaw
~ Microsoft Watch
~ Groklaw
~ Korgwal - a Groklaw mirror
~ nosoftwarepatents.com
~ Flame Warriors
~ SCOXE Wars
~ Get your Merkey Number here!
~ Digital Law Online

Recent Comments

Breaking News and External Article Comments
General News – General Articles
by ColonelZen, January 5
60 comments
» SCO Lifeboat List from Stats_for_all – AncientBrit, May 6
» Not a single comment on the Novell... – sphealey, Jul 22
» Re: Not a single comment on the Novell... – AncientBrit, Aug 8

Eagle Loses Appeals
General News – General Articles
by JCausey, December 15
1 comment
» Re: Eagle Loses Appeals – br3n, Jan 7

The Chinese Room Revisited, Thoughts on...
General News – Diary
by ColonelZen, November 24
1 comment
» Re: The Chinese Room Revisited,... – ColonelZen, Nov 24

How to Transition a Windows Shop to Linux
General News – General Articles
by JCausey, November 21
3 comments
» Re: How to Transition a Windows Shop to... – ColonelZen, Nov 22
» Re: How to Transition a Windows Shop to... – JCausey, Nov 23
» Re: How to Transition a Windows Shop to... – ColonelZen, Nov 23

Advocacy
General News – Diary
by br3n, October 29
3 comments
» Re: Advocacy – br3n, Nov 2
» Re: Advocacy – ColonelZen, Nov 2
» Re: Advocacy – br3n, Nov 4

Very Bad News for Darl and Ralph
SCO v The World – Diary
by ColonelZen, October 13
7 comments
» Re: OT advocacy – br3n, Oct 26
» Re: OT advocacy – JCausey, Oct 28
» Re: OT advocacy – br3n, Oct 29

Some SCOX Financial Analysis
SCO v The World – SCO Related Articles
by JCausey, September 21
13 comments
» Re: Some SCOX Financial Analysis – br3n, Oct 3
» Re: Some SCOX Financial Analysis – ColonelZen, Oct 3
» Re: Some SCOX Financial Analysis – br3n, Oct 6

Open Source in Education - Opening Doors
General News – General Articles
by JCausey, September 28
1 comment
» Re: Open Source in Education - Opening... – br3n, Sep 29

An IPOWER ful experience
General News – Diary
by ColonelZen, September 25
6 comments
» IPOWER SysAdmin Doesn't Do Weekends!! – ColonelZen, Sep 29
» Re: An IPOWER ful experience – ColonelZen, Sep 29
» Re: An IPOWER ful experience – ColonelZen, Sep 29

Learning C#
Microsoft – Diary
by ColonelZen, September 23
1 comment
» Re: Learning C# – ColonelZen, Sep 23

Comment search...

Recent Diaries

SCO has a Potential and Credible BILLION Dollar Liability
by ColonelZen - March 15

The Chinese Room Revisited, Thoughts on Consciousness
by ColonelZen - November 24
1 comment


Advocacy
by br3n - October 29
3 comments


An IPOWER ful experience
by ColonelZen - September 25
6 comments


Learning C#
by ColonelZen - September 23
1 comment


Getting ruby DBI for Mysql and Postgresql working on FC 6
by ColonelZen - March 7

Declaration of Linus Torvalds
by nedu - February 13
1 comment


Declaration of M. Douglas McIlroy
by nedu - February 12
6 comments


Declaration of Ulrich Drepper
by nedu - February 11
1 comment


Declaration of K. Y. Srinivasan
by nedu - February 11


More Diaries...

Login

Make a new account

Username:
Password:

Older Stories

Monday May 28th
Why SCO Does Not Own the Unix Copyrights
   (0 comments)

Thursday April 5th
It Can Really Happen - Eagle Broadband Delisting from AMEX
   (5 comments)

Monday March 12th
OpenOffice.org Sends Open Letter to Dell
   (0 comments)

Tuesday March 6th
Preliminary Order in Prohibition
   (2 comments)

Monday January 15th
[Linux-ia64] optimizing __copy_user
   (12 comments)

Older Stories...

Related Links

~ system5's Diary

SourceForge Logo Powered by Scoop

All trademarks and copyrights on this page are owned by their respective companies or owners.
Comments, articles and logbooks are owned by the Poster. By posting on the ip-wars.net web site, all posters grant a license to ip-wars.net to publish the content and release it pursuant to the Creative Commons License that covers the rest of the site. For more details, please check out the Standard Operating Procedures. Also, please read the Privacy Policy for the site. Finally, DO NOT send e-mail to the site owner (Jeff Causey) unless you have read and agree to the terms regarding e-mail included in the Standard Operating Procedures.
Everything else © 2004, 2005, 2006, 2007 ip-wars.net and Jeffrey G. Causey and is licensed under a
Creative Commons License
This work is licensed under a Creative Commons License.