The Humane Environment
rael9real writes "Jeff Raskin, developer of the MacOS and author of The Humane Interface [ed.: which was reviewed last year], has been hard at work with several others coding The Humane Environment. They have a developers edition out for Christmas. It runs on Mac OS 9/X. Reading the manual, it is basically a text editor/Python IDE, but it does seem to incorporate some neat ideas in the field. I can't wait to get home and try it out!"
VI is most assuredly not humane. :wq! Who wants to do that??
Look at the friggin' picture on his page! He's a BORG fer chrissakes!
Political language
Is it infected with the decimal radix?
What's THE?
:-)
THE Humane Environment!
But what's THE?
- rouftop
QAExpress: Solid bug tracking for you. Graphs and reports for your PHB.
Important observation: You cannot make an interface better without making it different (that's obvious).
Herein lies the problem: an interface that requires relearning can, at least in a sense, be said to be flawed. Time that has to be spent up front learning a new interface is widely perceived as wasted time. In order to be accepted, interfaces generally have to be incremental improvements on an existing paradigm. Radically new interfaces, no matter how much they improve on existing UIs, are almost certainly doomed to failure.
There are obvious exceptions. GUIS were such an improvement over CLIs (at least for the masses) that they were readily accepted. I guess the same could really be said for the ascendancy of the CLI over batch jobs.
Maybe a direct neural interface...
Roving Web-Teleoperated Robot
YATE (Yet Another Text Editor)
Well, despite what the website says, it's only booting up under the Classic environment for me. So I guess Carbon implementation isn't finished yet. Ah well.
And the real problem with that is that the windowing interface has not had even minor changes in almost 20 years. Windows 3x was basically the same as what we have now (as far as GUIs).
The only incremental innovation in the last 20 years was a "start button/quickbar".
That's it. That's the one great accomplishment in 20 years.
This is part of Raskin's interface project, but the main push is for a consumer ZUI.
I'm a visual being - what does it look like? Some screenshots with a bit of explanation would be nice. If I had a mac, I'd download and look for myself, but since I don't...
Assorted stuff I do sometimes: Lemuria.org
LEAPing sounds like a reimplementation of Emacs' interactive search, only more confusing.
To anyone who has this running (IE, actually owns an old mac): Is it just an editor? Can you post a screenshot?
Bug List A list of bugs in THE that need to be fixed. When all astrixed items are completed we will make our first release.
External Technical Spec Before going on to the design of the visually-oriented zooming portion of The Humane Environment (THE), it seems wise to specify the low-level interactions that take place within the document-centric portion. Also, this portion allows interaction by the visually impaired. We specify first that software necessary to demonstrate LEAP and some of the selection and command interface techniques and other benefits described in "The Humane Interface" [Raskin, 2000]. THE is intended to run on at least Windows, Linux, and Mac platforms. This specification describes the first portions to be implemented and gives some indications for future directions.
Joining the THE Team This is an unusual open-source project in that we are exploring a user interface and programming environment that is quite different than current practice. This document explains where to begin to become a contributer.
Manual The user manual, written for developers of the Humane Environment
Mission Statement To make computer technology available to a wider audience than has been possible by radically and rationally improving its usability.
Using CVS and Sourceforge.net This guide should get you a copy of the Humane Environment in its development incarnation. It is not quite ready for general user application. When it is, we will set up a simple, straightforward download.
Peace Out
Don't think that a small group of dedicated individuals can't change the world. it's the only thing that ever has.
I admire what this guy is doing (I have his book, in fact) but if one of the project goals is to aid the visually-impaired, he should probably extend that to include his website. By this I mean a CSS-based rather than table-oriented layout, not embedding tags inside table cells, and so on. These things make a web site more accessible to all. Now, off to download the project.
I would like to see a screenshot of why this interface is so different, but there doesn't seem to be one on the website. I also wish there were a PC version, or at least some sore of interactive demo.
It makes me wonder.... Is this the same guy who thought all files should be arranged by association, instead of in a tree structure? That would just make things SLOPPY. I sure hope this Humane interface doesn't promote sloppiness!
After having browsed through the manual, I can say that I've seen Ideas like this before that I use every day: It's called VIM.
I'd be lazy too if I was president for life. I can't wait until the real man in charge, Dickie, gets his war on in 2008, then we can take the battle to Eurasia and kick those motherfuckers all over.
go war
I'm reading the THE cvs instructions.
:pserver:user@server:path co :pserver:user@server:path checkout module
It's about seven pages of instructions - how to get enough tools, set enough settings and click enough icons and buttons and fields to get a mac to "cvs co" the source.
Strangely enough, I consider the two lines of CLI required much more humane.
cvs -d
cvs -d
If this group is trying to make python programming easier, bless them and godspeed, but I'll stick to emacs, which only had one day of learning curve, not endless years of clickity-click curve.
His name is spelled "Jef Raskin", one "f" - and yes that is ironically an unintuitive, constantly botched way to spell the name...
I hate Grammar Nazi's
We're going to war with Mexico too? Yeah, baby! I'm gonna get me one of those senoritas as a house pet.
a steering wheel and gas pedal installed on my motorcycle.
Having to learn a new interface was just wasted time.
Next I'm going to have them installed on my VCR so I can set the clock without having to learn another interface. If we'd just standardize on a one interface for everything than life would be a lot easier, everyone would know how to work everything and we wouldn't have to waste time learning new shit all the time.
As a matter of fact I'm still kinda pissed at all that time I spent learning how to read ( and as you can tell I've simply refused to learn how to spell). We should be able to do it by direct neural interface.
With a steering wheel and gas pedal.
KFG
GETTING STARTED WITH A NEW DOCUMENT IN THIS EARLY VERSION
When you double click on the Humane Editor icon to launch it...
Already returning to your roots, I see.
Maybe after it's out of alpha it might be worth something... but not yet (wouldn't run correctly under OS X Classic for me)
"I would say that 99 per cent of what my father has written about his own life is false." - L. Ron Hubbard Jr.
Great! This is more like it!
A place to drop off your un-wanted and abused engineers! (Just put them in the cage, and don't forget to donate some money to feed them... while they await adoption)
And I was so psyched when I found out they were making it open source... unfortunately it's only for MacOS and CodeWarrior at that. Any questions I had about which files to compile into what projects were unanswered and I gave up a long time ago.
Seems to me that's a cheap and unslashdottable way to get a homepage!
Yeah, Stile was arguably "cool", back when he was posting some kind of fucked-up blog. Now that his site is nothing more than an extended banner ad for various pay-for porn sites, the pitiful remains of his "coolness" pale in comparison to The Hun.
Any sufficiently well-organized community is indistinguishable from Government.
Im gonna buy me a big plot of land on Bali once we napalm those savage towel-headed gooks off of it.
Long live Bush and his global campaign of Christian Freedom!
The case for using an IDE when you're doing C, C++, Java, C#, etc. has already been made.
.NET, but haven't gotten much use out of either.)
But why use an IDE for something like Python or Perl, when there is no manual compile-link-execute cycle? Is tab-completion of methods that compelling? What are people's experiences with this?
(I use emacs to code Python on Linux, and Textpad to do it on Windows. I also own copies of Komodo and ActiveState's Visual Python for Visual Studio
Joe
http://www.joegrossberg.com
But, since Jef is a bright guy, I'm going to wait and see where he's going with this. The THE editor is just a single example of what's in his head. I think it's a mistake to generalize from this example to the entire THE system.
Also, perhaps what's going on is that a fellow who spent his life thinking about how ordinary people use computers has simply found a systematic explanation for why vi is still so popular (although I'm an Emacs user myself).
The vi command set was designed to minimize the number of characters sent and recieved by the relatively slow terminals used at the time. Perhaps it also encapsulates a 'minimum effort/maximum result' way of thinking. In which case, it's no surprise that Jef would rediscover it.
Skim thru the manual a little bit, and next time someone bitches about vi being difficult show them this.
Oye, veigh.
Have you read the moderator guidelines? Well, have you, PUNK? (and I want a Karma: Gnarly option)
I think the word you're looking for is...
I think the word you're looking for is....
Let's discuss some examples. One of Raskin's ideas is that we use the same core set of elementary operations for many purposes (one might say across applications). Such operations include: selection, indication, activation, moving, and copying. If we use the same small set of operations across applications, we can learn a keyboard shortcut or have special purpose keys for each, rather than look them up via menu selection using a pointing device. Why do we have all these special-purpose menu items peppering the top of our displays? Raskin argues that they are unnecessary. In a mistaken attempt to provide us with lots of functionality (feature bloat), designers have cobbled together the elementary operations as menu items. But if the elementary operations are well learned, then a rapid series of command keystrokes will be faster than the menu look up and selection.
Revolutionary, right?
Right off the bat, I think of both Windows and Mac (not a GUI linux user) and how they already have much of this built in. On windows, ctrl-x,c,v cut copy and paste respectively. The equivalent in mac os, I believe, is command-x,c,v. Now there are many more like this such as ctrl-a for selecting all items. And the shortcuts work in Word, Explorer, EditPlus, Photoshop, etc. As long as the developer(s) of the application follow the standard, they are available. So that is where this argument is moot. Its not a new idea but one that has been implemented sporadically across applications.
Also, many would agree that the concept of keyboard shortcuts is only awakened in the advanced user. A person that is new to the computer is going to rely almost exlusively on the mouse. Point 'n Click, right? Creating a standard set of keyboard shortcuts (even when there already is an unwritten standard) will not help the beginning computer user.
I don't know, I'm still going to read the book though.
1;
recursion
\Re*cur"sion\ (-sh?n), n.
See recursion.
I am not a number! I am a man! And don't you
Is called nano
Installation for mandrake users
$ su -c "rpm -e vim && urpmi nano" && nano
Lightweight xNIX-like OS for Macs over here: http://www.yellowdoglinux.com/. Moof!
"But you've already got a DVD. It lasts forever....In the digital world, we don't need back-ups..."
-- Jack Valenti
If we want to start being humane to our development environments, I can think of a few that need to be put out of their misery.
Oh, and will you look at that - an ad for Visual Studio at the top of this article! How ironic.
(Spudley Strikes Again!)
I henceforth demand that TECO rename itself The Inhumane Enivornment
Join me or die, can you do any less?
RASKIN is a fool. He actively FOUGHT the mouse at apple and got into arguments over it.
Its all in the oldest books on the Macintosh origin.
The Lisa was running in Sept 1982 and had a mouse, but the astounding lower cost Macintosh shipped at the end of 1983... also with a mouse in the box.
But RASKIN hated the mouse so much that after he quit apple soon after, he bragged that his next project to work on was a word processor machine with no mouse, not even an option, and no GUI to support one ever!
Raskin is a fraud and a liar who is trying to rewrite history and pretend that he supported GUIs and mice... in fact he was strongly against the mouse and was a typical anti-GUI bigot.
Sure, his signature is embedded in the case of the amazing mac, along with countless other cool dudes, and I am not saying Raskin was not skilled.... I am saying he was anti progress and anti-GUI.
He was collosally wrong and the only mac engineer to be anti-macintosh.
Technically the public could not officially buy a mac until the beginning of january 1984, but television commercials were shown in 1983 (to allow Cleo awards), and I and many others used them in late 1983.
But with cool name and TM, and we all know buzzwords make software better. Imagine it, "Licensed LEAP(TM) technology!" :)
Dear Jef:
/.
You have just re-invented vi -- perhaps vim! Except that your approach takes more keystrokes, and isn't quite as fast.
Shift-space: The shift and space are NOT next to each other on most keyboards, but are on others. Also, the Shift space sequence tends to be a TWO hand operation (I've asked people to try it -- for righties, its left pinky shift, right thumb space -- if they were touch typists; there are other variants).
Now, the ESC key is nasty in vi -- generally, uppermost left key, but it also creeps on the keyboard. I have to think about mapping it somewhere else! Still -- LEAP in vi is:
/ return
with, of course, an added leading ESC if I were typing. Back leaps use ? instead of
Repeat the leap? / return. Repeat an editing operation? . return. Etc.
No menus, no GUI, no muss, no fuss.
Graft on your extensions into VI or EMACS please. [ps. I can't use EMACS - it makes my hands hurt. Really.]. Good old home row visual editing. Stick some smarts in there, and shoot for the stars.
But... this isn't new. Not even that interesting. I expected more, Jef.
Ratboy
Just another "Cubible(sic) Joe" 2 17 3061
I have to agree. Stile has been going downhill for a long time now. His rants are just excuses to post links to pay sites.
I think the word you're looking for is.....
Perhaps it escaped your attention that the motorcycle user interface is modeled closely after the horse user interface?
At the time, the car was the disruptive interface change.
Just because it works, doesn't mean it isn't broken.
Hello this is some text.
This is another paragraph!
I didn't mean to type that!
LEAP FORWARD
After a quick read through the manual I'm left unconvinced - it really only addresses text editing, and to me it doesn't sound easier even for that. I'm pretty good with a mouse - the only thing I want is for keyboard makers to put the numeric keypad and other junk on the left so the mouse is closer to my right hand.
Don't get me wrong - I'm perfectly willing to relearn my work habits for the sake of efficiency (see my sig), but so far this guy hasn't convinced me he's onto anything revolutionary.
Read my keyboard review.
Those who do not understand EMACS are doomed to re-invent it, poorly.
Microsoft is to software what Budweiser is to beer.
Haha! Read the post then score it "funny" please. kthxbye
Those things will wreak havoc on your system, chewing through electrical wires, not to mention they crap everywhere.
I'll tell ya a Jef Raskin story.
Sometime in the 1980's - West Coast Computer Faire...
Jef is on a panel, and the talk is about UI, or the
future of computing, or some such.
Jef states that he doesn't see the need for User Groups.
He doesn't like the idea that people that own computers
get together to help each other out.
He said "You don't see Washing Machine User Groups". He may have mentioned the toaster as well.
To this day, I felt he misses a fundamental point:
You don't do your taxes on a washing machine.
You don't write books with your toaster.
A lot of what we do with computers (some of us,
anyways...) is inherently cerebral, and social.
OF COURSE we are going to get together to
talk about them, in person or online.
You can dumb down a UI as much as you want,
hide as many details as possible, in an attempt
to spoon feed the masses of the Blinking Twelve.
But the fact remains: if there's some thinking
involved with the task at hand, users will want to
get together to share experiences.
So Jef, take back the example about the Washing Machine
Yet another text editor. It's not like there aren't 40028829 of them already. Give me a fucking break. This doesn't deserve to be posted on the front page anymore than an article that discussed the size of cowboy neals cock.
In python it's nice because of the forced syntax, IDE's can remove some of the fuss for you by auto indenting etc.
My perl scripts are always so short that it's faster and easier to just start up vi in a working terminal than to load any IDE.
Why use Textpad on Winblows and Emacs on Linux?
You can use Emacs under Winblows, too.
I use XEmacs on both Linux and Winblows.
Simpy
To me this old man appears to be a lunatic, wacko crackpot like RMS. I heard he was against computer related user groups in general.
People who don't have the ability to learn VIM find themselves using Emacs.
>> ...build on small things that already exist right now. Maybe change some major things, but keep the tried and true methods.
This is one big reason why the software industry is so innately conservative, all the media hype about the pace of change notwithstanding.
Developers, especially open source developers who are free of the need to sell familiar products into an established pool of customers, ought to avoid underestimating the abilities of users to comprehend and absorb change. After all, somone had to be the first to try one of those "tried and true methods".
-- Slashdot: When Public Access TV Says "No"
There are a couple of things that could be handy with a python IDE. Visual class browsers come to mind as something I have use for on bigger projects. I use a Tk based class browser I cobbled together for myself, but I gather many py ide's have this feature.
The other would be a Tkinter visual interface builder. I don't think that any of the current IDE's have this, and THAT would get me to start using them. I can code Tkinter manually, but for rapid small prototyping, I could find this feature strong. The swing interface builder is one of the things I really used the most in JBuilder when I did a lot of Java codiing.
And if they want me to get really excited, adding a WxWindows interface builder on top of that.
And, heck, while we are at it, throw in some automated packaging tools. Not that it is very hard to package stuff for Python, but it I can see where it would save me some time over doing it manually.
7. What we cannot speak about we must pass over in silence.
Bastage
FYI, you can use C-[ (Control-Open Bracket) instead of the Escape key. I find this infinitely easier, especially on a Sun keyboard (with Ctrl to the left of the 'a').
Google is an interface that seems to imply files and data are arranged via association; that's how Google collects and maintains ranks, isn't it?
GPL Deconstructed
... that some of his keystroke series in THE are significantly more awkward on a dvorak keyboard... ... which *is* significantly faster, trust me, if you have the time to learn it... ... which is about what he claims that THE is...
I think I'll just stick with my odd blend of CLI and GUI (called MacOS X) and my dvorak keyboard. At least I can customize the bindings in emacs.
( \begin{rant}[parenthetical]
Why doesn't everyone use these? At least the dvorak keyboard? If computers came with them instead of QWERTY at least as a standard option, kids would be able to learn to type this way and wouldn't even have to relearn. Seems like it would offer a greater improvement in speed than THE could.
\end{rant} )
I hereby place the above post in the public domain.
Directory tree view of all the files in the project adjacent to the editor window and CVS integration are two big selling points for an IDE over a regular text editor.
Also, I often have a Makefile with Python projects to automate installation and testing. eg. for a CGI project I use a Makefile to put the Python code into cgi-bin and the HTML into the document root directory of my web server.
I'm talking about projects with often > 100 source files that are not manageable using VIM, which I use for everything else because I can't seem to remember all the Emacs key bindings.
Anyway, it's nice to be able to click the 'Build' button in my IDE (Project Builder) and have everything installed in the right place and ready to go.
To hell with this what we really need is emacs on the OS/X and emacs with python! I mean emacs works great for C/c++ lisp and even scheme, but for python it sucks. Now Im not much of a python man most of what Ive been doing recently is in lisp and scheme but python support for emacs is lacking.
He's not saying vi is not modal, he's just pointing out that it (and Emacs) have had functionality very similar very similar to this "LEAP" except with easier ways of accessing them (I don't care what anyone says, Shift-{space '>} is harder than ESC / > return i or C-s >).
A Minesweeper clone that doesn't suck
This whole thing sounds familiar somehow. Oh! I know! The Lucid Emacs fork!
Is it cumbersome? Is it counterintuitive? Is it everything the voices in his head always dreamed about?
Emacs minus the legacy software and the enthusiastic user base. Free software fills yet another need. Yawn.
Correct me if I'm wrong, but there is already a consistent convention for most useful operations on most modern operating systems and across applicarions. For example, in all versions of windows and 99.99999% of windows apps you can do the following:
Ctrl-A selects all
Ctrl-Z undo last operation
Ctrl-X cut
Ctrl-C copy
Ctrl-V paste
And of course there are the OS-specific ones, like in windows you can do:
Windows-R to get a command line
Windows-E to open the windows explorer
So, what am I missing here? I don't see anything revoutionary or different about "THE". And I still think that for 99% of users the mouse is a better alternative than keyboard shortcuts.
Okay, so he had one hit with the Mac GUI. But this thing (as many others have mentioned) has already been done in stuff like EMACS and VI*.
I recall seeing Jef on TechTV talking about how the computer should be intuative and non modal, so that it knew (for example) that when you started typeing something like "2 * 5 = 10" that instead of putting the numbers in the text window, it would pop up a window with the mathmatical answer, since you obviously wanted to perform a calculation and you would not have to go off and start some calculator application to get your answer.
MY question is "What makes that the obvious context"? What about a teacher typing out a math test? You would somehow have to tell the GUI to turn off the auto context switching while you typed out the formule for the test. This in the end seems even more obtuse a mechnism than the relatively common sense method of context/application switching we perform now.
After all, you don't (generally) just randomly change topics in a converstation and expect your listeners to keep up. You provide transitions (context switching) when your topic will change, otherwise you'd sound like a babling phycopath. Ex: So Bob, how are the kids? What's the torque limit on the master link of the drive chain on a 1978 Suziki GS 750S? 1250 x 52 = www.mcparts.com Wow, pretty soon they'll be starting shool.
That doesn't happen in real life, and I don't see why (from what I've read and heard) anyone would expect (or even want) their computer to attempt to interpret that stream and do things with it. That may have been a chat room conversation, a search engine query, salary calculation for a new job, a URL to a web page to browse, and more of the chat room. In that, and the infinite number of other examples, what are the chances that the OS/GUI will correctly guess what context you are intending.
For my time, I much prefer knowing what context my GUI is in, and knowing that it will not switch unless I do something to directly change it. Any automatic method will undoutedly lead to more errors, lot work and time.
Article X: The powers not delegated... by the Constitution...are reserved...to the people
For those who's commenting that LEAP is copy of what's available in vi or EMACS (poor or not), it's actually a left over from a Canon Cat computer that Raskin designed post Macintosh. That particular computer actually came with two LEAP keys under space bar. With common keyboards not having such specialized keys, Raskin's having to result in using key combinations that many are used to from vi and EMACS. You can see the keyboard layout here and then learn more about them by clicking on the keys. Raskin included some explaination of Cat in The Humane Interface.
I'd say virtual terminals are a major innovation. 20 years ago your physical screen was all the real estate you had to use. Right now OSX and Windows don't ship with virtual terminal setups by default but they both support them and almost all the Unix window managers have the support built in.
And you do have user's groups for more complex things like golf clubs and tennis rackets (though they aren't called user's groups).
speaking of VS.NET, I got it so as to be able to get the plug in for it, but I also do C++ code...man what a Pain in the ass it is to code in that Bloated POS. why don't they just have a basic workspace option for C++ and the ability to be promted to create an active project at compile time?
.NET frame work and then if I want to, go on to make C# apps and crap.
no, I don't want to make managed code, I just want to write a frigen program that does not rely on the
and the UI BLOWS. I am glad I still have VS 6.
I am the Alpha and the Omega-3
I must say, Jef Raskin is pretty puch the idiot of the 21st century. He hasn't stopped crying since Jobs got rid of his OS9 interface. A couple of things to note: THE software does *NOT* run in OSX. It only runs in OS9/Classic. Raskin hates OSX SOOOO MUCH that he wants to create this useless software to run in a dying OS just because he likes 9 better than X. And talk about user interface--it has 48-pixel icons. WOOO!
The entire site is about Jef, not THE software. It talks about what Jef thinks make some really cool esoteric software. And if the user interface is good enough, we should all spend WEEKS adjusting our computing habbits to how he wants us to use the computer. (this is all summarizing the main link in the article).
It's just amazing that Jef is the only one he thinks is qualified to determine EVERYONE's computer interface needs. Thanks Jef, no thanks. I saw the light the first time I used enlightenment. Any OS that can let the user decide every aspect of the interface--easily switching from enlightenment to KDE to gnome to anything--is FAR better than being told you know too much about computers and "you are in a worse position for learning it than a novice who has only to acquire new habits and has nothing to unlearn!" *I* decide.
---gralem
IBM will soon join HP(Compaq) in selling Linux pre-loaded PCs in India. ...
For details, read the story on ZDNetIndia IBM mulls Linux for its PCs
Bill Gates needs a change of career or perhaps needs to move to India and become a monk
Just a general "hear, hear" in response to your comment about the Dvorak layout. A while ago there was a link on /. to a man who had developed a superior keyboard layout using a genetic algorithm and it turned out, after much optimization, exactly like Dvorak, save two keys that were switched with one another. I've been using Dvorak for years; took me about a week to learn, and while it's great for speed, it's far better for comfort IMHO. It's worthwhile for anyone who types more than 50 words a day. Note that it's optimized for English; however, I've found it to be much better than Dvorak in the few European foreign languages I've used so far (Spanish and French).
Wrists killing you? Not in 2 weeks. Learn Dvorak.
It's not the editing, it's the debugging that makes the difference with IDEs. Generally speaking I find it much quicker and easier to inspect my objects with mouse clicks rather than by typing commands or using print statements. (Though I will resort to the latter methods in some situations.)
I've been writing software for most of my life, so I've logged a lot of hours typing on a keyboard. The observation I've made is that my hands are a lot more comfortable if I only have to push one key at a time and if I move my hands (not just my fingers) a lot.
:-)
Jef is advocating the use of shift-space to enter a special mode, then entering commands while still holding the shift key. All this is designed to keep the hands on home row. This seems awfully uncomfortable.
Not long ago the "happy hacker" keyboard came out. My boss got one. At that time I realized I may be one of the few geeks who prefers the ten cursor keys over vi/emacs key sequences. Am I alone?
You say how Raskin is simply stating the obvious, yet still miss at least half of his point.
He's not /just/ saying you should have standard cut, copy, paste in all apps, what he is saying is that you should ONLY have cut, copy, and paste in apps unless you have a really good reason not to. In other words, resist the temptation to add hundreds of features for operations which can be done with a few basic building blocks.
At least that's what I got out of it.
Oh, and I'll tell you that at least on the Mac, keyboard shortcuts seem to make sense. Cmd-X,C,V (cut copy paste) A (select all) Z (undo) Q (Quit application W (close window). Q and W are very helpful. Putting cut copy and paste as shortcut keys is a good idea. They are all lined up on the keyboard, command is easy enough to thumb while hitting one of them (unlike that abomination that is the PC control key.. ack).
FYI, Jef Raskin is not the "developer of the MacOS," or anything close to it. The only correct statement, carefully phrased so as to connote the most prestige, is the one that he always uses in biographical paragraphs, which usually says something to the effect that he was the creator of the Macintosh project. It is true that he started a project named Macintosh while at Apple, but the goal of this project was to create a very simple "information appliance," much like the Cannon Cat later became. At some point, Steve Jobs took over the project and changed it completely; the end result was what we now know as the first Macintosh computer.
As for my credentials in saying this, I was a senior editor at BYTE magazine during this time period and was told these facts by someone on the original Macintosh team. I later worked at Apple for ten years and never heard anyone there associate Raskin's name with the Macintosh computer.
Here is my rant (diatribe?) about the subject.
An interface should be designed around the task. The nature of the task will dictate the various priorities inherent in a good interface for that particular task.
Interfaces do not replace education or training for the most part. Maybe some 'new user' features can help get one started, or perhaps remember what is almost forgotten, but that is it. Any continuing reliance on these features will cripple the interface for those who simply want to complete the task, and know how.
Most of the opinion I read has a lot to do with specific interface attributes and how well they address a particular task. Maybe the information content is good, or it does not take many keystrokes compared to another interface, or perhaps it might be easier to use or more intuitive than another interface.
The big question is about the value the interface brings in terms of workflow. Is there real value? Are choices clearly presented? Do those choices make sense? Is there any busy work? eg. "Operation successful, press ok to continue..."
Each of us have developed our own interface needs that are a direct function of the work we do. Since we are more different than we realize, a good interface will allow for this. A great one will encourage this while continuing to perform its basic function which is again, performing the task at hand in the most effective manner.
Because of these things, ease of use has little to do with the quality of the interface. In fact, ease of use will often simply mean not powerful or maybe limiting to those who clearly understand the task at hand and are simply interested in performing it.
This is not about the fewest mouse clicks or the least button presses or any other simple metric. It is about understanding the nature of the task being designed for and presenting viable choices to those performing the task in a way that adds value to the execution of the task.
That's really it. Everything else is just fluff once you get past new user issues.
Coupla examples:
The seemingly simple task of editing text.
I have used vi, emacs (a little), joe, edlin, notepad, textpad, nedit and many others on different platforms. Each of these applications have their own different interface. Does that mean we simply don't yet know how to best edit text, or is it that we know all about editing text, but prefer to do it in specific ways depending on the overall goal of the text editing session.
I suspect the former will never happen and the latter does because...
On slow text only connections, vi is fantastic. You can clearly delinate between command and data. Given latency issues and large text datasets, this seperation allows one to make best use of the connection they have. You can do powerful things with a few keystrokes. To someone on a lan who does not understand vi very well at all, this is cryptic for no reason. For someone on a slow connecion it is golden --and worth learning if you value your time.
Casual writing is best done in something like Open Office, or something similar. This type of interface scales to a degree also. Want to step up from a simple essay? There are features present that do not get in the way until you start looking for them. Got a slow connection? Forget it.
I happen to enjoy editing code in nedit or text pad. I am also not an expert coder. If that changes for me, I understand I will likely outgrow these two because they do not address more advanced coding tasks as well as some other programs do.
Since the various tasks surrounding the editing of text are very different, the best interfaces are going to be different even though all we are really doing is editing text.
This means there is never ever going to be the one best text editor. (Sorry vi -vs- emacs folks!)
What does this mean for those of us who want to edit some text?
It means that people who are serious about editing text are best served by learning about the different interfaces and how they relate to the task at hand if they want to make the best use of their time.
Casual text editor or writer? Great! Get one of the bloated hold your hand programs and make good use of it. That is what it is there for.
What does this mean for those who produce text editing tools?
It means there is a clear tradeoff between the number of tasks you address well and the value your interface provides to those who are interested in performing those tasks. Try and do too much? You get Word, or Open Office. Do too little and you get Notepad or Joe. Nail one task perfectly and you get Textpad or vi or emacs.
This also means that in order to create a good interface for a given task, you better damn well understand that particular task inside and out. If you don't, then you cannot add any value and your interface will suffer like it or not.
Are any of these editors really better than the others?
It depends on the nature of the task you use them for. The only one out of the bunch I could never understand is edlin. It does not do anything well at all. Mistake, glad to be rid of it. The other ones though all have their merits depending on what one is doing --more importantly why.
Dumbing down a program to attract new users because it is easier to use is simply trading one thing for another. In the end, what could make your program great is lost.
This is just as bad as an interface that assumes too much because it makes those that use it work harder than the need to in order to get the task done. Spartan is ok --given the task at hand would benefit from that.
People who design interfaces need to pay particular attention to their users and the nature of the task they are performing. It is about focus. Too narrow or too broad, or just right for what people really are going to be doing.
Anything else is a waste of time.
Blogging because I can...
Raskin's critique of scrollbars for navigation makes some good points, but that was before mousewheel scrolling.
think it is time to get away from the notion of the user interface with no learning curve.
4 7
Well said. You know, for years now, we have been able to feel this affect on the members of our society that arent like us. We can feel the impatience of our busy soccer mom's who have no time but to drive their kids....to soccer, or talk on the phone to the other soccer moms. We all hate that companies market to impatience.
Now an example, Mp3.com, i like its free music, yet I've notice over my 3 years of using it, that every year or so, it changes its interface. This is too fool the dumbasses that mp3.com is working hard at its service. But its purely a graphical change, and in actuality, you have to relearn how to use it and look at it.
So we see here that the dumbasses at mp3.com's marketing scheme are marketing toward that impatient crowd of people that need to feel like their hand is being held, yet its interesting how at the same time, this has an anti effect, namely confusion.
Anyway, I believe that the solution is conservatism to all of this FUCKING HEADACHE of marketronism. But the funny thing is that american society is all but conservative. We're all about moving around....our techies are all about diversity...because we CAN make viral copies of software according to a copyleft, we WILL.
Because gentoo CAN exist on its own, instead of taking advantage of debian's system of developers and simply building on top of this... (eg, theres NOTHING stopping them from simply writing a pythonized version of apt that gets source (apt-get source)....
Anyway, this semi rant began because i was reminded of an article on version fatigue:
http://slashdot.org/article.pl?sid=02/06/20/12232
And I think that is also on the same lines as this and touches some different angles.
-- -- --
Help my mini cause: My journal
The trick is a user interface which grows in power as you learn how to use it, that is the real challenge
Never have I seen an interface for which this was more true than that of HyperCard.
The early car interface was modeled on the bicycle interface, which, golly gee, ended up being the model for the motorcycle interface. Who woulda thunk it?
The bicycle interface, by the way, was modeled on the *boat* interface, not the horse.
KFG
The frequency at which different keys are hit depends on the language that you write in. Dvorak is not optimal for everything (e.g. frequencies of characters in Finnish is significantly different from English.). Then again most CLI interfaces are more or less based on English and the necessary non-alphabetic keys (./* etc.) have been picked for convenience on a US QWERTY keyboard. This can also be a bit of a pain, since for instance in commonly used Scandinavian QWERTYs you get from the same key; > with shift.
Female Prison Rape in NY
Maybe, just maybe, s/he prefers using Textpad to Emacs. I realise this is close to heresy but Emacs sucks ass.
THE has been for many years standing for The Hessling Editor, a POSIX clone of IBM XEdit, including Rexx scriptability.
Leandro Guimarães Faria Corcete DUTRA
DA, DBA, SysAdmin, Data Modeller
GNU Project, Debian GNU/Lin
You should look at glade + pygtk + python (note there is no need for gnome stuff if not required).
An example is always best. FSlint is a project
constructed in glade, liblade, python 1.5 and gtk 1.2:.
pixelbeat
Excellent point. We all see how well automatic context switching works for Microsoft products ("You appear to be writing a letter, would you like help?" "No, when I want help I'll ask for it!").
A Humane Interface is not one that requires you to keep dozens of commands in your head, it is one that allows direct manipulation of everything using controls with intuitively divined operation. If your interface isn't as easy to figure out as a hammer, keep working at it!
Haha no. I like them both.
:)
The thing is, when using Windows I'm used to a particular set of keybindings (CTRL-V is paste, CTRL-Z is undo) across programs.
When I'm using Linux, I'm used to a different set of keybindings (CTRL-Y is paste, CTRL-_ is undo).
The point is, I don't want to *think* about what commands I'm typing; I just want it to come naturally. And I think mixing and matching the two concepts will create problems.
I already get enough annoyances from the fact CTRL-D adds a bookmark in Mozilla, instead of deleting a character.
Joe
http://www.joegrossberg.com
Contrary to the standard U.S. layout, on German, French, Spanish, Italian, Arabic and probably a couple dozen other keyboards, < and > are on the same key. Which means, since you have to hold down Shift to enter their "Humane Quasimode", you cannot leap backwards.
I'm using Dvorak right now. It took a week to learn, a month to be comfortable with and another month - including many hours of use of a typing-tutor program - before I approached my QWERTY speed. And now that I've been using Dvorak for several months both at home and at work, I'm about ready to switch back.
Why? First off, I never saw any speed improvement at all. It subjectively feels a little better when I force myself to touch-type, but I'm still slower than I was before I made the switch. Secondly, there are occasions when I need to use a QWERTY keyboard. For instance, there are PDA keyboards that only come with that layout. Or internet kiosks when I travel. Thirdly, over the years I've learned many functional shortcuts based on the QWERTY layout that don't transfer well to Dvorak. Command-V to paste. Navigation using vi/vim keys. That sort of thing.
So it was an interesting experiment, but I'm not convinced that Dvorak is worth the effort and I expect I will switch back to QWERTY in the near future.
I play Nerd-Folk!
It depends how much you type, and on what you type. I write papers more than I program; it's probably not much faster for programming. If you can already type 100 WPM and you're not a secretary, increasing your typing speed isn't important and to learn any new layout up to that speed would take far to much work to be worth it.
I thought that the change in command keys was a minor annoyance; I got used to changed commands quickly and remapped nav keys. And I don't use vim, mostly just stick with Mac text editors. As for speed, when I switched I could only type maybe 40 or 50 WPM anyway, so it didn't take all that much work to get faster than that. My papers in school were sufficient for this purpose. IM has also helped a lot.
The biggest change I've noticed is that it is less tiring to type quickly, because I don't have to move my hands as much, and many of the finger movements are much more natural (that, and I use a split keyboard, which lets me use a much more comforable posture). For example, nt and th (or nth) can be typed by rolling the right hand along the board. The force with which your hand has to strike the keys, however, is unchanged, so changing to Dvorak doesn't help all that much to prevent typing injuries.
I hereby place the above post in the public domain.
"THE" stands for "The Humane Environment", a better and truly pleasant way for us to interact with a wide range of technology; from computers and PDAs to cell phones and other information appliances. The term "appliance" applies to all of these devices, from games to supercomputers.
THE is a nucleus to which commands are added. The commands are what you use to do tasks from checking email to rendering video frames. Superficially, this sounds like an operating system to which applications are added, but it is fundamentally different, especially from a human-centered point of view.
By adding individual commands rather than whole applications, which sometimes have hundreds or thousands of commands, you can install only what you need and understand. Companies that now make applications will also be able to sell commands or command sets using the same underlying engines that they currently offer. Because all commands are invoked in the same way (a property of the nucleus) there is a lot less for you to learn when you purchase new software. Commands never become invisibly hidden deep in a menu structure, and can be invoked at any time, just as in command-line systems -- but you never get locked into modes as in vi or emacs.
For complex tasks, complex software is often required. THE is not a "dumbed-down" system. If hundreds of commands are required for a specialized task, vendors will be able to provide that level of functionality. THE can handle any task that computers or information appliances can do at present. There is no loss of power or generality with THE compared to conventional systems; the only loss is in unnecessary complexity, size, cost, wasted time, frustration, and training -- just the things you want to lose.
These improvements are all made possible because in the two decades since the graphic user interface (GUI) was introduced there has been a great increase in our understanding of how people interact with technology. It would be wonderful if we could just tuck in a few loose ends and change a handful of details of present systems to have them work properly. Unfortunately, we have learned that the GUI concept has fundamental flaws that cannot be corrected by small changes. These flaws have to do with incompatibilities between the designs of both GUIs and command-line interfaces and the way our brains are wired. As we cannot change the way our minds work, we must change the interface design.
It was a careful and detailed study of ergonomics and cognitive psychology that led to the humane environment. The research background for THE, based on empirical studies by many scientists, is presented in Jef Raskin's book, "The Humane Interface".
THE's approach starts by streamlining the most common forms of interaction: use of the mouse and the creation and editing of text. These are tasks that you perform thousands of times; time and effort saved here benefits everything you do.
Because being able to work with text is so fundamental, and because most software is written with text, we have started by adding a set of word processing and programming commands to THE. Also, we have not yet released the specifications for the graphics elements of THE. This has led to some people thinking that THE is intended only as a hyper-efficient editor. Its scope is much wider.
--Aza Raskin (A THE Developer)
"ZZ" is faster than either of those methods.
Those who sacrifice security to condemn liberty deserve to repeat history or something. - Benjamin Santayana
you wanna know helmlouth try being a hermo