Vitanuova for 2001 June 12 (entry 3)

< Macy's protest
Monday >

I followed a link from Sumana's diary and read most of Joel Spolsky's essay "User Interface Design for Programmers".

Many entire concepts of professional user interface designers and researchers have long irritated me, for many reasons which might be interesting to talk about. I suppose that it would be easy for me to say things at parties which would make it just as embarrassing to me for the person I'm talking to say "I'm a UI designer" as "I'm a software patent lawyer".

I enjoy the occasional excellently-designed GUI app as much as the next person, but much of the time, when I'm using proprietary software that integrates a lot of features into one UI, I feel confined. (Isn't it funny that some people claim to feel this way using command lines?)

Often, with GUI software, I feel as though I am playing a video game. (Nick, on the other hand, used the metaphor of cartoons to make fun of the strongest enthusiasts of GUIs: he said that literary culture had survived for thousands of years, and cartoons were quite worthwhile, but who could suggest that cartoons should supplant printed books in general?)

Interesting concepts: Luke 22:42, expectations, learning curves, social context. What is the purpose of computing? How does the question "What is a perfect society?" compare to "What is perfect computer program?" or "What is a perfect collection of computer software?" in various ways?

I actually think the idea of a perfect computer program is fascinating, because nowadays there is usually no lack of programmers willing to implement various ideas (for example, consider how many free versions of the vi editor exist!), but there may be a lack of ideas.

There is also the "program as device vs. program as literary work", which is coming up in court regularly now, and about which I wanted to write a long section on my home page. It seems to me that only people who see a program as a device will be willing to accept the censorship of code -- but perhaps this is the view of most computer users, and only a few programmers see software as literature. It also seems that the expectations people have for devices are quite different from their expectations of literature, and the sense of what makes a good device is different from the sense of what makes a good literary work. (Why should this be so? Is it only that devices are so regularly used for a useful purpose extrinsic to themselves?)

Also, there are two different ways "software is literature" can be interpreted: one is that software is literature when we're reading it (for example, when we read source code). Another is that software is literature when we're using it (for example, when we interact with a computer on which a particular program is running -- or, we could say, taking a different view, when we use a computer to interact with a particular program).

I actually think that distinction is interesting, too: do you say "I'm using this computer to interact with vi" or "I'm using vi to interact with this computer"? The second form is much more common, and I probably talk that way most of the time, but the first form is very exciting to me. We use computers to get in touch with programs (don't we?), in the same way that A. K. Dewdeney used computers to get in touch with the inhabitants of Flatland in his book The Planiverse.

I want to re-read the section "For Whom Does One Write?" in Jean-Paul Sartre's What Is Literature?, thinking about the question "For whom does one write computer software?". Sartre had fascinating things to say there, and I don't doubt that these could have an effect on how I think about computer programming too. Possibly I should write my own essay "For Whom Does One Write Programs?".


[Main]
Support Bloggers' Rights!
Support Bloggers' Rights!


Contact: Seth David Schoen