[FoRK] Re: aesthetic programming
Dave Long <
dave.long at bluewin.ch
> on >
Wed Nov 1 08:17:59 PST 2006
>> How does one teach that sense without making one's students feel bad?
> Conspicuously praise students who produce elegant code? Wax poetic
> displaying a well-written function on the projector? Give bonus points
> if someone can find a better way to write something?
> Well, you have to have motivated students to begin with...
It seems to be pretty common among writers and artists to be involved
in a "crit group" that meets to discuss reactions to and suggest
improvements on their work. I've only ever been tangentially involved
with such groups, but geeks do this informally amongst themselves as
well, and there are some aspects to a more formal structure which
may be useful:
- everybody has to read. Writing alone tends to deafen one to other
influences, be they positive or negative. Crits beat solipsism hands
- everybody has to write. Criticism by people who aren't producing
work works better in theory than in practice. Deadlines avoid
- although we learn may far better from our own mistakes, we can learn
far faster from being exposed to a wide set of other people's. This is
doubly true of "mistakes that work" -- it is broadening to discover
that things we avoid, and that still might not work in our style, can
however be very effective in another.
In contrast to the guru-shishya parampara of a linear teacher-student
relationship, the crit group is more of a peer-to-peer
:: :: ::
 if one can take pride in it, sharing one's work is human nature.
I've heard about an anti-graffiti community policing campaign that was
said to have been successful because the officers involved would notice
which kids were watching the trains, asking them "do you write?" and
"can I see your book?". Later, if they had a problem with someone
getting up a lot, they'd have a good idea from the style whose mother
to go have a word with.
 CS theory, like the show ring, may have very little use for working
programs. ("doctors are not required to suffer from the diseases which
they study") Hackers, on the other hand, strive for elegance, but
primarily in the context of running code. ("that sure is a pretty
derivation, but that code don't hunt")
More information about the FoRK