http://www.perlmonks.org?node_id=372807


in reply to Programming is combat

If "Programming is Combat " , then I must ask the question..."Who or what is the enemy?"

Is it "unruly entropy-laden electrons", disruptions in the "stream of correct information", or greedy bosses trying to squeeze productivity out of you?

We (especially in the US) are being overwhelmed with the "military mentality", but is it reality?

It seems ( to me anyways) that reality is learning to live "in harmony" with the earth and the cosmos; and the "real battle" is within ourselves as we resist the "natural harmony" of things.

Or maybe its like Pogo said "We have met the enemy, and he is us".

So how about looking at programming as "making love".....we learn tricks to bring the code to "electronic orgasm" ( i.e. It RUNS :-) )


I'm not really a human, but I play one on earth. flash japh

Replies are listed 'Best First'.
Re^2: Programming is combat
by brian_d_foy (Abbot) on Jul 08, 2004 at 17:11 UTC
    It's not so much that there is an enemy, but that we can deal with life in the same way in different situations. Different environments emphasize different facets of a solution and add perspective.

    I can't carry any metaphor too far because ultimately one thing is not the other, so they are different. The trick is to find the areas where one can beneffit from knowledge of the other without experiencing it.

    --
    brian d foy <bdfoy@cpan.org>
Re^2: Programming is combat
by Anonymous Monk on Jul 08, 2004 at 20:23 UTC
    Pogo - put out or get out :D
Re^2: Programming is combat
by radiantmatrix (Parson) on Dec 15, 2004 at 15:53 UTC

    I wholehartedly agree. If "Programming is Combat", then I would define programming as "something which, while sometimes necessary, is best avoided". I just don't see the average coder envisioning themselves as being thrust into the middle of a violent coding session.

    The Military way of thinking is far too inflexible: as my Army father used to say, "there's a right way, a wrong way, and the Army way". It seems to run counter to TMTOWTDI, and indeed to every notion of great programming that I'm aware of. The whole of training and management in the Army is to keep people alive -- and that means that they must trust their commanders and be willing to blindly follow orders (it will probably save their lives).

    While I agree with some of the "lead, follow, or get out of the way" mentaility, I have to say that it goes much too far to be effective with a team of independant, highly-intelligent people. Lead, yes. Be willing to follow a leader, yes. Control the desire (in yourself or in others) to stagnate a project because someone "wants their own way". All of that can be accomplished through judicious use of democratic principles. Yes, strong leadership is required to ensure that everyone abides by the decisions of the group, but a leader who will simply quash dissent is a poor leader. Unfortunately, the military method of leadership often results in quashing dissent; quite possibly because the people who are implementing it haven't had the extensive officer's training that balances the "strict leader" theory.

    Rather that saying "programming is like X", how about "programming is programming". Metaphor and analogy are useful, up to a point, but letting a thing be what it is usually ends up being a better long-term strategy. That's a core principle of Taoism at work for you there -- we can learn about the Tao through metaphor and analogy, but "the Tao that can be named is not the true Tao". Likewise, we can learn the art of programming by comparing it to life, or military service, or the manufacture of hot-air balloons; yet, "the art that can be named is not the true art" -- all the metaphor in the world will not produce a better programmer than someone who just "gets it". And, that is achieved like it is in any other art -- practice, experience, shared knowledge, and practice.

    radiantmatrix
    require General::Disclaimer;
    s//2fde04abe76c036c9074586c1/; while(m/(.)/g){print substr(' ,JPacehklnorstu',hex($1),1)}