Friday, March 03, 2000
A Separation of User Interface and Processing
I've been reading several articles about GUIs (notably the new one for MacOS-X) and it seems like there is a simple solution to the complexity plaguing them—complexity of features. Windows has both menus and toolbars, with each application having a custom menu and/or toolbar.
Now, since most modern GUIs are message (or event) driven, it would seem a much better idea to construct an application as a client/server model—the GUI being the client sending messages of what needs to be done to the application, or server.
Just document the messages and parameters required by the server and you can customize the GUI to send those messages. So one user can have a window full of those cryptic hieroglyphic iconic toolbars, another can have a traditional pull-down menu, a third can bind weird keyboard macros and a fourth can have a mixture.
This would also make applications scriptable. Imagine you could do the following with Photoshop:
directory = SELECTFILE(); FOREACH file IN directory { send photoshop 'OPEN file' 'BRIGHTEN' 'SAVE YES' 'CLOSE' } send photoshop 'QUIT'
on a directory with 100 photos. Or even bind this sequence to a cryptic hieroglyphic toolbar image and add it to the current toolbar.
This is significant, but I don't know why …
You don't have to imagine. Just read Bellamy's Looking Backward, which was written in 1887 and describes the world of the year 2000.
–From Slashdot comentary about Bruce Sterling's predictions of the future.
I took too long in getting back to this. While I would probably want to dig up Bellamy's Looking Backward I don't recall why I find it significant, other than noting just how off it is.
I never noticed this before …
I just now noticed that the paper napkins I bought are decorated with icons of crayons, lipstick containers or bullets. I can't tell which though. I suspect crayons or lipstick because some of them give the impression of drawing another icon nearby.
PHP Woes
Mark and I tried to get PHP installed on the main webserver. Or rather, I was doing it while Mark looked on.
Snag one—when following the PHP instructions to install mod_php3
I found that it excluded the module I wrote,
mod_litbok. That's
when Mark took over and spent the next hour trying to get both PHP and my
module compiled into the same webserver.
I remarked that had I been the only one doing it, I wouldn't even give PHP a consideration after 20 minutes—complexity for complexity's sake and the poor quality of the install documentation and all that.
But Mark, who thrives on solving problems that shouldn't exist in the first place due to poorly written software, got both modules installed. We copied the (now huge) executable to the webserver.
My module didn't work properly. Mark was upset that I put the old executable up. I consider my webserver a production server and until I find the problem, I'm not going to have a half-working module.