In such endlessly repeated scenes, it's not worth working yourself up. In
fact, it's sometimes not even worth coming up with new ways of responding. Why
bother? Often it's best to simply defer to the luminaries of history who have
commented on this topic (nobody wants to fight you when you're standing on the
shoulders of giants). For example:
"There are two methods in software design. One is to make the
program so simple, there are obviously no errors. The other is to
make it so complicated, there are no obvious errors."
-- C.A.R. Hoare, founder in the field of computer program
correctness and reliability, and laureate of computer science's
highest award (the Turing award)
"Only short programs have any hope of being correct."
-- Arthur Whitney, computer scientist & inventor of the
array-language K, which all of Wall St uses to predict markets
"The fewer moving parts, the better"
-- Every engineer of every discipline throughout time, ever
(ok, fine: every engineer whose first attempt didn't kill him)
But, you know, it's hard to get someone to change his mind, and maybe some
would find the preceding unconvincing. I mean sure, some guy who got rich
creating an array programming language and a weirdo obsessed with the
reliability of computer systems support the concept of short, clear programs.
But that's just 2 guys and the entire enterprise of human engineering
throughout time. That doesn't tell us anything. Can't we dig deeper, get to
the bottom of things? Surely there's no philosophical reason we should prefer
simplicity?
"Let thy speech be short, comprehending much in a few words."
-- The bible (Ecclesiasticus, which, ironically, the
Protestants cut out)
"It is my ambition to say in ten sentences what other men say
in whole books - what other men do not say in whole books."
-- from the other end of the spectrum, Friedrich "God is dead"
Nietzsche (demonstrating this is not a particularly localized
sentiment)
"It is with words as with sunbeams. The more they are
condensed, the deeper they burn."
-- Robert Southey, Poet Laureate of the British empire
"Brevity is the soul of wit"
-- William Shakespeare, another English guy (note, here "wit"
meant "wisdom", not "humor")
Ah, but perhaps we've strayed too far from software engineering; after all,
plays and poems are very different things from programs, aren't they? Well,
let's see if we can find a bridge from the wisdom of the Bard to modern
computer programming.
"Language is an instrument of human reason, and not merely a
medium for the expression of thought"
-- George Boole, guy who invented zeros and ones.
Not bad. The very founder of computer science talking about reasoning with
language. Still, not much in there about being concise, only expressive. Let's
see if we can do better.
"By relieving the brain of all unnecessary work, a good
notation sets it free to concentrate on more advanced problems, and in
effect increases the mental power of the race."
-- A.N. Whitehead; bah, a mathematician.
"The quantity of meaning compressed into small space by
algebraic signs, is another circumstance that facilitates the reasonings
we are accustomed to carry on by their aid."
-- Charles Babbage; that's better, the guy who built the
world's first computer.
Still though, Babbage built his computer before there was even electricity.
Can't we get a little more modern, a little more relevant to practical software
design? Ok, let's turn the clock forward, but continue with the theme of using
language to express ourselves briefly and clearly:
"Programming languages, because they were designed for the
purpose of directing computers, offer important advantages as tools
of thought. However, most programming languages are decidedly
inferior and are little used as tools of thought in ways that would
be considered significant.
[In contrast] APL is a general purpose language which
originated in an attempt to provide clear and precise expression in
writing and teaching, and which was implemented as a programming
language only after several years of use and development."
Unfortunately, I've lost the reference for this one (I know the guy has
something in common with the first person I quoted, Hoare). Maybe you could
ask your commentor friend to look it up.
-Dan
PS: The real irony is, your friend doesn't even seem to recognize the value of
/being able to quote the entire program/ he's complaining about! Try that with
Java! You're going to need a bigger comment box.
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm