I need to revise my classics.1

Many years ago I read a book on software design, but I can't for the life of me remember the author. The person was discussing the art of creating a good design, and that the main problem was ensuring that the design doesn't "solidify" too quickly. The problem is especially prevalent when using computer-aided design programs. Once a design is set down it becomes difficult to start over (people are reluctant to trash something they've spent hours over, fiddling with arrow alignments), thus the first cut at design has an annoying tendency to be the last, even if it's sub-optimal.

He went on to discuss one of the best design sessions ever was on a beach. He and a couple of other programmers went for a walk discussing a big system they had to design. They carried no paper or pens and just talked about the problem. From time to time they would sketch a diagram in the sand to help the others understand a particular point. The sketch would last only until the next wave rolled in from the ocean and smoothed it out.

By the time they had finished they had a good grasp of the issues and tradeoffs that had to be made and so when they landed the design on paper they were pretty sure they had the best design possible.

Me: "Boss, I need to go to a deserted tropical island for a couple of weeks."
Boss: "You do?"
Me: "Yes, for the design of the new project."
Boss: "Su-u-u-u-ure..."

Oh well, bonus points if you can remember who the author is.


1. I also need to revise my Perl Monks. I posted this, then tried to spank katgirl in the CB, thus erasing this post before I got round to submitting it.


print@_{sort keys %_},$/if%_=split//,'= & *a?b:e\f/h^h!j+n,o@o;r$s-t%t#u'

In reply to Re: Strange Coding Tales (on the beach) by grinder
in thread Strange Coding Tales by mojotoad

Title:
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, details, 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, summary, 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.