Beefy Boxes and Bandwidth Generously Provided by pair Networks
DiBona Think about Loose Coupling  Comment on  For me, the
answer has to be "Correct". In the real world, we're creating
software to serve a purpose. The user needs to get a job done
and is relying on the software to do it. If they can't get their
job done, nothing else matters. That's incorrect software. If
the software is too slow for the user's needs or the interface
is so cumbersome that they can't figure out how to use
it...BZZZT. Wrong answer.  Barely correct software allows the
user to get the job done -- barely. Truly correct software
allows the user to get the job done with ease, and maybe even
pleasure!  Correct software isn't perfect or bug free, but it's
close enough. Unreleased software is useless and couldn't
possibly be less correct. The trick is judging what's "close
enough".  "Correctness" is the most important attribute for
software, but for me, "simplicity" is a very strong second. Lots
of good things fall out of simplifying sof