September 93 - Prographing
Prographing
Laughing Water
What would happen if Apple's Human Interface Guidelines were applied to
programming environments? I want to explore that fantasy world and in so doing
consider Prograph 2.5 from TGS Systems as a plausible answer to my question, since
it is the most Mac-like full-blown programming system I have encountered. To
confine myself to the space of an article, I will target my fantasies toward Pro-graph's
most progressive features, and I will not attempt to duplicate the fine review articles
written by John Baxter in the March and May 1992 issues of Frameworks.
The Belly of the Beast
I'm sure some of you think there are good reasons why the Macintosh revolution should
never reach the rest of us, the programmers. We preserve the myth that either we or
our users must suffer, and that we are the martyred heroes. In fact, the original
Human Interface Guidelines (p. 4) themselves state: "Most programmers have no
trouble working with a command-line interface that requires memorization and
Boolean logic. The average user is not a programmer.
But let's face it, programmers are users. We are also human. (Are you still with me?)
If the principles of good interface de-sign give users the power to be their best,
shouldn't they em-power programmers as well? Or is the Macintosh interface only for
wimps after all? I, for one, do have trouble with a command-line interface that
requires memorization. And that's not the only thing wrong with today's programming
systems.
Let's wallow in self-pity for a while. Most of our coding time is wasted on tasks the
computer could do better or eliminate entirely. These include managing header files
(or any files), correcting spelling and punctuation, guessing screen coordinates,
memorizing resource ID numbers, writing debugging routines and tracking down
memory leaks, not to mention waiting minutes at a time for compilers and linkers to
catch up with us. To make our work "easier" we use a half-dozen or more programs or
tools that sometimes have no discernible consistency to them. What we see-esoteric
commands-may be nothing like what we get-a friendly and powerful Mac program. For
the most part, we don't directly manipulate familiar objects and get immediate