Beefy Boxes and Bandwidth Generously Provided by pair Networks
Welcome to the Monastery

comment on

( #3333=superdoc: print w/replies, xml ) Need Help??
I've been collecting books on business written by former members of the military ... My interest is more than acquisitive though: I've fantasized about writing my own, but applying it to programming.

While I find the author's style of presentation monumentally annoying you may find ARM/CL of mild interest (a sketch of a software development methodology with what sounds like military inspiration.)

For now though, my half-baked ideas:

Some random comments on the half-baked ideas ;-)

Bypass points of resistance

Not quite sure I understand what you're getting at here. Would this be an instance of what you're talking about?


I was once worked on a project that was hitting severe problems because the customer's project goals and the DBA's working practices were badly matched.

Basically the customer was asking us to develop something quickly to deal with a short term problem. The DBAs wanted everything to integrate seamlessly with the existing company wide Oracle infrastructure. We (the developers) were stuck in the middle trying to explain to the DBA why the customer's project was different, and explain to the customer why we couldn't do something one way because of the existing company database.

This lead to everybody shouting at us, and little progress.

The solution: redefine the DBA group as part of the customer group. They were both dealing with business-level decisions after all. They could batter each other to death sorting out their business level priorities and then speak with one voice to the development team.


Have an SOP

The dark side of an SOP is when the situation changes and the previous standard procedure becomes counter productive. Spotting when this happens can be hard. Good advice on how to deal with this would be a useful thing.

Lead, follow, or get out of the way

Is this this another way of looking at the demarcation of roles?

For example one of the things I like about agile methods like XP and Scrum is the clear demarcation between Customer and Developer. The Customer owns all business level decisions. The Developer owns all code level decisions. Of course both parties talk to each other, but the Developer doesn't lead the business, and the Customer does not lead the coding.

Act, Don't think

Is this another way of saying that feedback is often more efficient than advanced planning?

You never get good intel

Amen. Embrace change and all that. I cannot recall a single project that I've worked on where the requirements haven't changed, often radically, during the project's lifetime. Development methods that pretend otherwise are doomed to failure.

Sometimes life sucks... ...and you still have to do the job

Do you? Would surrender sometimes be the right action?

I re-read Yourdon's Death March a few months back. After working on a couple of nasty projects fairly recently even more of its content sunk home the second time around.

I've walked away from one or two projects because they were badly thought out, badly run and doomed to failure. Nothing I could do or say would change the situation since nobody was prepared to listen. Staying and pretending otherwise would have been dishonest and a pointless sacrifice.

Another point is that if life sucks then it's probably worth while taking some time to figure out why it sucks, and hopefully prevent it sucking next time :-)

Learn other jobs

The more people know the better. As well as making communication easier it makes the team more flexible.

Train as you fight

Possible examples...

The Creed of the Non-commissioned officer

I have to admit that I'm having problems seeing how the metaphor applies here. Maybe that I misunderstand what NCOs really do, but I don't see that role in the projects that I've worked on.

Unless someone is shooting at you...

Indeed. I still find it odd the number of people I've come across who have sacrificed their personal lives, their relationships or their health to what is, after all, just a computer program.

In reply to Re: Programming is combat by adrianh
in thread Programming is combat by brian_d_foy

Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post; it's "PerlMonks-approved HTML":

  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.
  • Log In?

    What's my password?
    Create A New User
    and the web crawler heard nothing...

    How do I use this? | Other CB clients
    Other Users?
    Others lurking in the Monastery: (10)
    As of 2021-04-19 10:39 GMT
    Find Nodes?
      Voting Booth?

      No recent polls found