In my increasingly, ehh… ‘insane’ ? form of web surfing. I found this essay by Eric S. Raymond.
For one reason or another, I’ve been using TWO web browsers at one time lately. Flock for websites poorly styled, Google Chrome for as much else as possible ^_^. Multiple windows, several tabs on each, in both browsers hahaha !!! This has yet to slow down the rate at which I surf the web, instead I think I’m getting faster :
I found the article rather interesting. For me, I generally prefer editing configuration files. Because if they are actually well documented, I can usually find my way along faster. Most programs that I have used, usually do a poor job of documenting what various options do… The idea of using a GUI Wizard for setting up and configuring stuff is old as dirt, but so often done half-assed. I’ve seen many programs present Wizards, some do it very well, some do it to a point–that I’d rather do it the ‘hard way’, because it is easier!
The style of user interface I enjoy, is basically that offered by programs in /usr/bin. It’s often simple to use (if you actually document it) and it’s fairly easy to code. When I try to do a GUI, I usually try to create something that is simple to figure out, but still something that I *will* use. I typically will use what ever input method is closet at hand, if my hands are on the keyboard, I use it—one reason that I love vi! While if my hands on the mouse, I’ll probably click my way about: unless it takes more then a moment.
GUI’s all to often make simple tasks easy and complex tasks impossible.
A command line interface, you generally need to know how to use. It pays to at least ask for -h,–help, /? help, depending on what system your using. Most programs are fairly obvious in their behavior without arguments. And good programs that I’ve seen, try to make them intruitive to figure out. A GUI program by comparison, if you need to go much further then a tooltip for something that is almost obvious, but explicit. Then I think there is a problem. I generally pick up and use graphical programs without needing to read documentation, because using a spreadsheet is easy but the meanings of whats fed into them are not always so simple.
If I had to go through the same thing to setup a printer, I would probably say fuck it, and go do it in a way that actually deserves my attention, LPD lol. Although, I do admit: Windows does do printing well in my opinion, as long as you do not have to deal with print “jobs”, then it sucks.
If the designers were half-smart about UI issues (like, say, Windows programmers) they’d probe the local network neighborhood and omit the impossible entries[1]. If they were really smart (like, say, Mac programmers) they’d leave the impossible choices in but gray them out[2], signifying that if your system were configured a bit differently you really could print on a Windows machine, assuming you were unfortunate enough to own one.
The difference between doing the job, doing the job well enough[1], and going that extra mile to make it better![2]. Designing a good UI is much harder then a lot of other things, but when it does happen in a good way—it’s worth it.
I remember not to long ago, I replace my *nix based PDF/PS reader. I dropped KPDF along with most other KDE apps in my change over to blackbox. Gnomes Evince was one that had been on my list for awhile and the new Okular from KDE4 was not ready yet, so I tried Evince. The program turned out to be incredibly simple, so simple that there are no (real) settings to change. The only real configuration option is how you want to layout / size a page, namely fit to page, blah blah.
At first I found this quite disconcerting, but Evince has since become my idea of the worlds best PDF/PS reader. Evince is light, it’s fast (unlike Adobe or KDE’s offers), all of the important stuff is in quick reach, and all of the unimportant stuff is no where to be found. Like at long last, a PDF reader that just cuts the bullcrap and lets me read files gracefully…. without arguing with the PDF reader !