Zen and the Art of Using a Computer
I've recently had cause to use and learn several new applications and
programming languages that I had not previously been exposed to. As is
typically the case, some of these systems "feel" right to me (Ruby,
Backpack and GMail, for example), and some just don't resonate (PHP,
STAF/STAX and urpmi, for example). I'm not trying to denigrate this
latter set -- each serves a useful purpose for thousands (in PHP's
case, millions) of people every day.
The problem here is Zen. All of my past experiences have shaped my
mind so that I think about the world in a certain way. When faced with
a new situation, my brain immediately starts matching it against these
entrenched paradigms and patterns so I can select an appropriate
response. Thus when I design/write new software, my zen dictates how I
address not only the large issues that invariably arise, but the
myriad of smaller choices as well. When it's finished, the software is
as much a reflection of me and my own thought process (my "zen") as it
is a reflection of the original requirements.
Taking the next step, I postulate that the software that feels right
to me was written by folks with a zen simliar to my own. That is,
their minds approach and solve problems similar to the way my mind
does. Stuff that rubs me the wrong way, conversely, was most likely
written by folks whose minds work very differently than mine.
While it may be true that on the Internet no one can tell you're a
 
No comments:
Post a Comment