[plt-scheme] Re: No More Boring Code
On Tue, 7 Apr 2009 18:34:47 -0400, "Geoffrey S. Knauth"
<geoff at knauth.org> wrote:
>On Apr 7, 2009, at 11:59, John Clements wrote:
>
>> Reading and writing Java is, by and large, boring. Boring code is
>> boring to write, and genuinely difficult to read without glossing
>> over details. This is an observation made by Yaron Minsky at his
>> Cam(e)l Trading talk at CMU. This resonated strongly for me, and
>> got pretty close to the root of what I think functional languages
>> are about: providing the abstraction tools to obviate the need for
>> Boring Code.
>>
>> Hence, the Anti-Boring Code League. I plan to make T-Shirts.
>> Anyone feel like improving the logo?
>
>Sign me up. I like the idea. Here's an alternate idea for a T-
>shirt. Gather all the Java code you can find, filter and sort it to
>produce a top 20 list of the most inane things people have to put
>again and again and again in their Java code, and then produce a tag
>map. Make that the background. At the center should be something
>that visually symbolizes extreme boredom. Put the red circle with the
>line through it over that image. Put the words "ban boring code" in
>some artsy font on the slanted line. BBC!
>
>I image-googled boredom. That was not easy. I came up with:
>- http://knauth.org/random/visualizing-boredom.html
>
>I'd like to see the Cam(e)l Trading talk, if it is available.
I'm not an artist, and therefore I can only make suggestions, but how
about an idea similar to the following:
Since code tends to be boring if it both does not require any
imagination, but is too difficult to be purely mechanical, divide the
T-shirt image into two halves: a top half symbolizing boring code,
and a bottom half symbolizing abstraction tools to obviate the need
for Boring Code.
Find an example of code that is very boring when written in Java, but
can be abstracted into something very concise and interesting in PLT
Scheme.
For the top half of the background, put the boring Java code, and
color that code in a light gray color to allow superimposing. Put the
red circle with the line through it over that top half.
For the bottom half, put the interesting PLT Scheme abstraction, and
similarly color that code in the light gray color to allow
superimposing. Over that bottom half, put the chart at the following
URL, listed at Knauth's above-mentioned site, depicting the relation
between boredom and task complexity:
http://the-programmers-stone.com/wp-content/uploads/2008/05/MechBoredom.png
In Zapfino (see http://en.wikipedia.org/wiki/Zapfino) cursive font,
below the chart on the bottom half, put the phrase "Ban Boring Code!"
-- Benjamin L. Russell
--
Benjamin L. Russell / DekuDekuplex at Yahoo dot com
http://dekudekuplex.wordpress.com/
Translator/Interpreter / Mobile: +011 81 80-3603-6725
"Furuike ya, kawazu tobikomu mizu no oto."
-- Matsuo Basho^