[clug] July Programming SIG: the fourteen principles for new programmers

steve jenkin sjenkin at canb.auug.org.au
Wed Jul 16 05:43:48 GMT 2008


Sam Couter wrote on 16/7/08 7:34 AM:

>> Paul Wayper <paulway at mabula.net> wrote:
>> You may find it easier to not tell your
>> management about the first one in case they want to keep it.
> 
> NO!! It isn't your job to second-guess management. 


<snip>

You say:
  "I've finished the first draft/prototype, but it has to be thrown away
because of all these problems. It isn't secure, extensible, portable and
performs like a dog - and is an absolute mess so maintenance will be a
nightmare. I need xxx more weeks to properly design, implement & test
the new version, and will need someone else to review the code and
acceptance test the production version."

Management hears:
  "I've finished the program"

They then infer:
 - program is production ready
 - you're ready for another project

Real issues like maintenance, security, performance, ... don't even
occur to them. Bring them up and you won't be heard - unless you can
cite some major disaster, show that it *will* happen and they will be
personally blamed. Your only chance for sufficient resourcing is to
induce "Cover Your A***" behaviour in the manager.


This dynamic has been around since the dawn of commercial computers
(1950, the 'LEO'). It's not changed, nor do I expect it ever will.

Who posited:
	"Write one to throw away, you will anyway" (Fred Brooks?)


I know of *no* non-technical manager that understands this or would
support this view - and exceedingly few technical managers who
understand it and almost none who will go-to-bat & support their
technical staff in refusing to let unsuitable prototypes go into
production...

In a non-pressured moment, these same people might seem to understand
the principle, but when push-comes-to-shove and there are looming
deadlines and budgets overruns, "Just Do It!" reigns supreme.


There are some techniques to insulate yourself or prempt the
conversation such as a *signed* document, agreed beforehand, on what
will get done - especially that a prototype is *not* fit for production.

That's a really big stick and if you feel you need that sort of
insurance, you need to reconsider if you are working in the right
place/for the right people.


-- 
Steve Jenkin, Info Tech, Systems and Design Specialist.
0412 786 915 (+61 412 786 915)
PO Box 48, Kippax ACT 2615, AUSTRALIA

sjenkin at canb.auug.org.au http://members.tip.net.au/~sjenkin


More information about the linux mailing list