Beta
×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Interface Zen

CmdrTaco posted more than 14 years ago | from the stuff-to-read dept.

News 482

Tom Christiansen , perl god, writer, and the guy that once kicked me out of #Perl for asking a question about sockets has written us another excellent feature. This one talks about modern keyboards, and the problem with them. It's an entertaining piece with gratuitous Who references so it's all good by me.

The following was written by Slashdot Reader and Perl God Tom Christiansen .

He stands like a statue, becomes part of the machine
Feeling all the bumpers, always playing clean
Plays by intuition, the digit counters fall
That deaf, dumb and blind kid sure plays a mean pinball.
from Pinball Wizard, sung by Elton John in Who's "Tommy"
When was the last time you really zenned out on a pinball machine? You know what I'm talking about: that transcendent state of consciousness in which you're no longer carefully calculating what to do and when to do it. You're completely oblivious of anything in the universe except for the ricochets of that silver ball. You're so totally in the groove that those extra balls and replays just keep racking up. Spectators and would-be players come and go, but their presence barely registers in your mind. Hours later, when it's all over and you finally step away from the machine, you find that words come haltingly; you've gone a bit nonverbal. Drifting off to sleep that night, instead of getting darker when you close your eyes, the world gets brighter as hypnagogic flashes from today's games explode in your mind's eye like comets dancing with lightning.

It's a pretty neat feeling, isn't it? You were in an altered mental state--a high, if you would. And like any other high, pinball zen is a bit addicting. Not only will this high leave you a lot less poor than plenty of others would, the only physical side-effects are apt to be some sore pects the next day.

This pleasant state of mind is hardly limited to pinball. You can become one with your skis and the powder you're flying over. You can become one with your musical instrument of choice. And, if you're a hacker, you can become one with your computer.

I'm not talking about sitting for hours on end, clicking from one web page to the next as trivia trickles passively in. I'm talking about actually creating or seriously manipulating something, not just impersonating the couch potatoes down the hall in the TV room. You're in the groove; you've got all the right moves down so pat you don't even think about doing them. The world again fades away. There is the computer. There is you. There is nothing else. And this is good.

This blissful state of being one with your computer doesn't actually have much to do with your computer. Paradoxically, the computer just gets in the way, a constant reminder of irrelevant physical constraints and realities. As long as your brain needs to spend time thinking about hardware, like the keyboard or the mouse or a flickering monitor or a whining disk drive, you will be forever denied access to the altered states. That's because it's not the computer itself you're trying to become one with. It's the software world that you're trying to enter. Only when the physical world recedes from conscious awareness can enlightenment become possible.

When you're learning a new piece of music, bringing it up to performance tempo and committing it to memory, a funny thing happens. After enough practice, it feels as though your fingers themselves remember how to play the piece. You don't even watch them. They've a job to do, and once they've it, can go about that job remarkably free of direct supervision. The key to clearing the mind of the outside world so that the program becomes the dominant reality is what a musician would call "finger memory". (You might have heard athletes or dancers refer to it as muscle memory, but when we're talking about using the computer, it really is the fingers that count.)

Of course, that's not really what's going on; it only seems to be. Your fingers don't really remember. But a part of your brain that controls them does, even though "you" don't realize it. What's happened is that you've so successfully assimilated the moves needed that conscious direction is no longer required. The little lighthouse keeper behind your forehead can worry about other things, assured that your fingers will do the job you've trained them to do. Your eyes are on the screen, the program in your head, and your head is in the program. Your fingers become an unnoticed extension of your will. They're are no more a conscious concern when typing commands than are your feet when you decide to walk across the room. That's probably just as well, because if you ever thought too much about how walking is really just perpetual falling and nick-of-time rescue, you'd probably stop being able to do it as well as you can now.

It's a shame, but many people never achieve the same zenning out with a program that they may with a pinball game or a musical instrument. Still, it can and does happen, and although it's something of an uncanny thing to witness someone else doing, it's a beautiful one to experience personally. In this satori-like state of experiencing knowledge without thought, the program's commands have become so deeply etched into your wetware that low-level tasks no longer require conscious direction. Your fingers seem to remember to do on their own. Now on automatic pilot, they dance across the keyboard as quickly and as accurately as any performing pianist's fingers move, and just as automatically.

This isn't to say that the keyboard is the sole path to blindingly efficient computer use. Far from it! To be honest, the keyboard is sometimes the worst possible choice. It's entirely dependent on the task. For example, if you're playing xbill, the hacker's favorite video game, you certainly don't want to try use the keyboard instead of the mouse. It's just going to slow you down. But neither does that mean that the mouse is always the best choice for all interactions.

Here's another example. I once tried using xmame to play millipede. Using the keyboard for movement was excruciatingly painful, but the mouse wasn't all that much better. I realized that I would never become one with the millipede using either access device. But just a few feet away stood a real millipede game (yes, I actually do own one). I have no problem becoming one with that version, even though as far as the software goes, it's the same as what xmame is running. Why? Because the real game has a trackball, that's why! No longer tied to a clunky input device, I could sail along so fast that the non-rational part of my brain could take over, and like Tommy, play by intuition alone. After the first 200,000 points, you get to play with eight darting spiders simultaneously. Try it sometime. It's a real trip.

There's no question that certain tasks, the keyboard is clearly the optimally efficient input device. Consider the game of rogue or one of its more recent incarnations. You wouldn't want to use anything but a keyboard there. The command set is just too rich. Trying to play the game with a mouse and menu interface instead of a keyboard one would slow you down by at least two orders of magnitude. It would be as bad as trying to play millipede with a keyboard, if not worse. As someone who at times spent most of his non-hacking waking hours at university playing rogue, srogue, larn, moria, and nethack, you'll just have to take my word on this. I certainly became one with the game. My fingers flew across the keys; my eyes never left the screen. I never had to think about how to do what I wanted to do, because no sooner did the desire enter my head than my finger memory took care of it.

When I wasn't playing rogue at university, I was hacking on code, for which I used a popular rogue-variant called vi. Yes, I know you probably think of vi as an editor, but I've always found people more receptive when I explain that it's actually a video game that gets a job done, too. In any event, the command set and design philosophy of the two programs overlap well enough to permit cross-competence between them. And as with rogue, I could zen out on vi. I was tremendously lucky I could, too, because most of the classes in my compsci program required more than 10,000 lines of code for each course. Now, try taking two or three of those classes in one term. You had to have a powerful and super-efficient editor, and you had to let the mechanics of the editor fade into the background, or else you just didn't survive. By zenning out, you ascended to a higher plane of productivity and did things that you normally couldn't do.

It sometimes seems that as time marches on, fewer and fewer people will get the chance to experience the sublime joy of becoming one with their computer. It's as though hardware and software manufacturers were all conspiring to render this good, clean high an unattainable one. It's not illegal, at least as far as I know, but for most people, it might as well be. In pursuit of the dubious goal of producing idiot-proof, zero-learning-curve programs, even programs intended for long-term, heavy-duty use such as an editor--arguably the most important piece of software you'll use--have been turned into children's toys, effectively expert-proofed. In mindless and unexamined pursuit of false efficency, the programs' authors have sacrificed all the design attributes that let our fingers go about their proper business, got our faces up out of the mundane mechanics, and let our minds transcend the hardware and get into the program. They installed, if not outright roadblocks, then velocity regulators and gratuitous speedbumps.

How did this ever happen? Let's start with why the current crop of keyboards are suboptimal in the extreme. There's a general rule (Fitts's Law) that says that the farther away something is, the larger it needs to be for equally swift access. This is true even if you are looking at the keys (but don't do that--see below), and fatal if you aren't. Distant keys like SHIFT, ENTER, TAB, CONTROL, and the spacebar used to be larger, but they keep getting smaller as more and more vanity keys get added to your main keyboard. Look at an old Sun keyboard. Notice how SHIFT is bigger than CONTROL, and CONTROL is bigger than TAB. This size corresponds to how much relative use you make of those keys. Oh, and the CONTROL key is both large and conveniently located on a Sun keyboard. What a joy.

Now go look on the cretinous keyboard that came with some poor sot's Wintel box. The spacebar, the most important key on the whole keyboard, is but a shrivelled and shrunken vestige of its former self. The ESCAPE key has been moved to the penalty zone, the CONTROL key is both distant and small (that's two strikes), and there's a CAPSLOCK key that's just as big as the TAB key. Hello? What are these people thinking? That I want to hit CAPSLOCK as often as I do tab, and that I don't care about CONTROL or ESCAPE? This is all nuts. The proper place for a CAPSLOCK key is in a different hemisphere from you. If we ever manage find out who invented that abomination, we're all going to show up for the lynching party, but we'll have to wait our turn in a line of programmeers stretching all the way from Boston to Mountain View.

If it were only the outlandishly rococo keyboards they were shoving at us, we hackers might still have a chance to become one with our computers. After all, we could always get a real keyboard instead, one with a decent layout and sans penalty zone.

But really, this is but the least of our many problems. First of all, there's no end of brain-damnged programs these days which both expect and require you to constantly enter and exit the penalty zone. This destroys your concentration, because you can no longer get there and back again while still looking at the screen. You incur a context-switch penalty that feels like a speedbump in your typing. It slows down your hands, and it interrupts your eyes. Once that happens, your concentration takes a severe blow as you're forced to deal with mechanics, once which you cannot internalize or omit.

The next gross inconvenience is requiring chorded key combinations. Any time you have to hold two or more keys down at the same time, this becomes more difficult to finagle. Compare how difficult it is to type a CONTROL-G chorded combination with a simple, unshifted `g'. If you ever need to hit a chord with more than two keys, such as CONTROL-ALT-SHIFT-F11, you're in serious, serious trouble. This kind of thing is especially arduous on keyboards lacking duplicated left and right versions of the modifer keys. There's a very good reason we have two SHIFT keys. We should have two control keys as well, and these should be easily accessible without looking. It's a lot easier on the hand to use the right-hand SHIFT key with a letter like `e' or `g'. Why should it be any different with CONTROL, ALT, or the vanity keys?

If you're striving for efficiency, it's best to stay away from chords entirely. If you look at the way popular video games like rogue and vi work, their command structure consist mainly of single, non-chorded keystrokes, or sequences of single keystrokes. That's why those games are inherently easier on the typist than games like emacs are, where all your most valuable real estate has been thrown away, and every command is now a chord. Chorded commands are harder to type because you have to hold down the SHIFT or CONTROL key, but in a program designed for efficient use, these are relegated to rarer activities, so the impact is minimized. The easy stuff is easy, and you never have to slow down, or even look down.

Consider how much easier it is to type a `/' to start a search than it is to start a search instead of a ALT-S, or horrors, pulling down a menu. There's no reason that a slash can't mean a search in context where it makes sense. This wouldn't mean that if you were typing in a path name in some text box that a search window would pop up. You simply make it context sensitive. Humans, you know, are really very good at context. Check out this sentence: "Can you please can the can-can while I'm in the can, man?" No problem. You see, our brains don't work off of a context-free grammar, and there's no reason that commands, keystroke or otherwise, should. In fact, because our brains do not work off of a context-free grammar, making our command set context free would be running against our inner natures. It's just not how we think.

Besides the useless vanity keys stealing invaluable real estate from the main keyboard, we are saddled with an ever-growing number of extra keys in the penalty zone, such as function keys, INSERT and its friends, arrow keys, and relics out of the shrouded mists of antiquity such as SysRQ and Scroll Lock. I'm sure there will be more in a year or two.

Can you imagine how painful it would be if you were typing in some code or a letter, and every time you wanted to go to the next line, you had to use ENTER key way over on the numeric keypad? That would be nuts, wouldn't it? So can anyone tell me why programs expect you to switch back and forth between the real keyboard and the penalty zone? Apparently nobody ever told them that the closer something is, the easier it is. According to Fitt's Law, something right underneath you is infinitely large, and, consequently, the most readily accessible. Proximity combined with non-chorded keystroke commands is why the rogue-style movement ("hjkl") is easier on the hand than emacs-style movement (CONTROL-B, CONTROL-N, CONTROL-P, CONTROL-F), and both of these are easier by far than using arrow keys over there in the penalty zone.

The much vaunted arrow keys, ostensibly easier to use for cursor motion, are in fact tremendously harder to use. First of all, if you're mixing commands over in the penalty zone with other commands which are on the keyboard, you're never going to achieve keyboard satori. You've got too much back-and-forth going on to find your grove. Your eyes act as a bridge linking two virtual worlds, one inside your head and the other inside your computer's memory. With arrow movements, they have to desert their post as vicar and go slumming in the real world for a while to play tour guide long enough to get you there and back again.

The second reason the arrow keys are inherently evil is that they are set in an arrangement designed by a masochist, probably the same nimrod who stuck us with the CAPSLOCK key. Even if all you were doing was keeping one hand poised above the arrow keys and never switching keyboard domains, you still would be slowed unacceptably. That's because the up arrow and the down arrow are directly aligned vertically. Your hand despises this, which is why the rest of the main keyboard has no such configuration on it anywhere. To see what I mean, try using the `j' and `k' keys in rapid succession, back and forth as though you were executing a trill. It's quite easy to go up three, down one, up two, etc. But now try playing your trill on the up and down arrows. Whoops! You have to turn your hand completely sideways, or use the same finger to do both jobs. Either way you play it, you lose.

Does the visible label on the arrow keys truly offset the gross inefficiencies of being placed in the penalty zone and being stacked vertically? After all, the argument runs, someone who doesn't know the key command to move around can just use those. In the shallow and ephemeral world of zero-learning-curve and one-shot programs, this might have a scant of iota of reason behind it. But really, for just how long do you expect your users to remain ignorant? Once they learn what the motion key is, they're not going to forget it from one moment to the next. If you assume that users cannot or will not learn, you thereby guarantee this very outcome. That hardly seems either fair or productive.

The third reason that arrow keys are inherently evil is that they support navigation based characters alone. You'll never move on to higher abstractions, like words, sentences, or paragraphs, or in the programming world, to tokens, expressions, statements, blocks, or functions. By relying upon arrow use alone for movement and discouraging other kinds of information chunking, you lock your poor users into a tedious monotony and forever bar them from making the jump to light speed.

In any program designed for heavy use, the penalty zone should be not merely strenuously avoided, but completely banned. The keys there interfere with your prospects of ever becoming one with the computer. But isn't the numeric keypad in the penalty zone, and isn't it great for accountants? Don't they become one with their keypad? Well, sure they do. That's because they're staying in the same area. If all you're doing is entering numbers, then it's actually a good bit quicker to use the numeric keypad, because it fits under the hand better. The keypad also optimized for numeric data entry: see how much larger the `0' key is there, and the `+' key? If you don't know why, watch a bean counter entering numbers on it some time. Now go to your keyboard manufactures and demand the return of the your CONTROL key to it proper place and the restoration your wimpy spacebar to its proper size.

Don't expect to switch between numeric keypad and the main keyboard with anything resembling speed or accuracy. Unlike a normal clavier, where you can feel where you are in the scale because of the alternating two-three sets of raised keys, on a computer keyboard, no such sign posts exit. That means that while, the musical keyboardist can often make tremendous leaps in complete confidence without bothering to engage his eyes, the computer keyboardist cannot. Sure, you've probably got little nibs on your `F' and `J' keys, and on the `5' over on the numeric keypad, and it's a good thing that they're there, but really, they don't help that much compared with a real keyboard's cues.

The lesson is that if you're going to change domains so radically that your hand has to move somewhere else, you absolutely need to stay right where you are for a good while in order to amortize the extreme cost of movement. Otherwise the context-switch latency issues will just kill you. And this is where the true root of all keyboard evil rears its ugly head: the mouse.

The mouse is the single greatest obstacle standing in the way of becoming one with your keyboard and the dramatically higher productivity levels which that state promises. That's because, of course, it has nothing to do with your keyboard. Compared with the mouse, even a high density of chorded commands in quick succession becomes fast and easy. Chorded they may be, but at least they're still on the keyboard. The mouse might as well be in Timbuktu for how convenient it is to get your hand over to it and then safely home again.

Unlike the arrow keys, that doesn't mean the mouse is inherently wicked for all things. (Well, unless you're an RSI victim, that is, or if you'd prefer not to become one. Mice, you see, destroy your wrists, and much more quickly than keyboards.) The mouse is only evil when you have to repeatedly switch between mouse and keyboard. That's because it knocks you out of the groove just as badly as an CONTROL-ALT-SHIFT-F11 chord would. (I call that one a demented eleventh.)

Let's go back to that wonderful, angst-purging video game, xbill. You think of yourself as a Jedi sharpshooter, the last, lone defender against that creeping darkness which seeks to pollute and assimilate the free world into its hive mind. Reflexes are everything. You must walk the path of knowledge without thought, of action without contemplation. Anything less than complete dedication to your sacred duty will see another sun lost to the Evil Empire. In the back of your mind, you know that if you set down your laser rifle, you could program up a smart bomb to encase the Bills in a treacle and slow them down for a file. This you would do by taking your hand off the mouse, moving over to the keyboard, and typing the mystic words, "Department of Justice Anti-Monopoly Litigation". But in the time it would take to do that, untold numbers of worlds would be lost, assimilated into the collective. So the smart bomb of slowness remains untriggered. The price is too great to justify putting down your laser rifle.

So you see, there's certainly a place for a mouse. And contrary to popular mythology, that place is not simply any system that provides the user with something more sophisticated than a 24-by-80 character display. Mouse doesn't mean GUI, you know (nor, for that matter does GUI mean mice and menus). And a keyboard doesn't mean a CLI. A keyboard means efficient input of diverse commands covering a vast domain. A mouse means efficient selection of points and areas. Even if we temporarily tolerate the mistaken notion that CLI=text and GUI=pixels, a keyboard should not be limited to the world of command-lines and pipes, nor should a mouse limited to the world of pixels and pop-up menus. Those are not the effective criteria for the most effective use of those two input devices.

If you don't believe me, just think for a minute about gpm, the mouse package for virtual consoles on Linux operating systems. It sure is a nice program to have around, isn't it? You don't have individual pixels, but you still appreciate having a mouse for certain tasks. Now think about your favorite pixel-addressable program, like xv or eterm. They have keyboard-accessible keystroke commands as alternatives to tedious mouse hunting. Aren't you glad those are there, too?

I'll say it again for the logic-impaired: keyboards aren't just for CLIs, and mice aren't just for GUIs. There's no good reason whatsoever that even in what's commonly referred to as the GUI world, that you should eschew the keyboard. For many problem domains (xbill and its ilk notably excepted), the keyboard remains the fastest, most efficient, and most powerful input device available, and it would be the height of folly to avoid it.

Have you ever tried to play a piano using a stick that's clenched tightly between your teeth? Oh, you can do it, sort of--if you call that playing. The percentage of your brain devoted to the hand, and in particular, the support structures for the fingers, is incredibly huge compared to the amount devote to nearly any other physical activity. By avoiding the full potential of Man's wondrous capacity for prestidigitation (in the literal sense), you cut him off from one of his greatest assets, one near and dear to his neural biology--he was made for.

There's just no way you'll ever zen out on a keyboard when all you've got is a one-bit stick stuck in your mouth and your hands are tied effectively behind your back. Perhaps you prefer it this way, but you should understand the consequences of that choice. You'll never reach the point where your fingers know what to do on autopilot. You'll never get your face completely up off your desk. And you'll never savor the pleasures of having your mind firmly ensconced in the virtual reality of the program you are manipulating. The higher levels of mastery will be forever forbidden to you, and you shall dwell in the House of Clumsiness and Inefficiency all the days of your life.

Software engineers need to pay attention to both the keyboard and the mouse, irrespective of whether the program is running in a terminal or in a full-display environment. They should maximize locality of operations to faciliate eyes-free operation of the program. Above all, careful attention must be given to programs destined for heavy use so that they offer an upward path for users so that experts are not hampered by zero-learning-curve demands from non-users. Don't require infelicitous input combinations that would hamper finger memory in accomplished speed demons. Only when the speed limits are removed can a programmer hope to reach that transcendent state of zenning out.

cancel ×

482 comments

Sorry! There are no comments related to the filter you selected.

How did this ever happen? (2)

Shimmer (3036) | more than 14 years ago | (#1493688)

No fair padding your homework by repeating the same text over and over.

I count 10 occurrences of the paragraph that begins "How did this ever happen?". Methinks an editing goof has occurred.

-- Brian

Seems to repeat himself a lot (1)

georgeha (43752) | more than 14 years ago | (#1493689)

Or maybe we need better editing, instead of four (five) repeated segments?

George

I really don't believe in this whole Zen concept. (1)

slashdot-terminal (83882) | more than 14 years ago | (#1493690)

There is not logical notion that human kind has any implied fuzzy quasi-telepathic state wherin they gain "mystical" powers. I think that happiness requires a direct ability to perceive that happiness and translate it into something more comphrensible.

huh? (0)

Anonymous Coward | more than 14 years ago | (#1493691)

was it just me, or were a lot of those para's repeated constantly? kinda poetic, no doubt, but very strange.

Sun keyboards (0)

Andy (2990) | more than 14 years ago | (#1493692)

His main point seems to be that PC keyboards suck and Unix (Sun) style keyboards are great. So why is this piece so long? I take exception to his criticism of Emacs keyboard sequences. Emacs is the most magical program of all time. What else would you expect from a Perl simpleton?

... (3)

Signal 11 (7608) | more than 14 years ago | (#1493693)

He moves mythodically though the hallways, bouncing grenades off the walls an onto the hapless souls that dared to fire a rocket at him. He deftly completes a rocket jump, does a 180 spin, and unloads a rail slug into the LPB below, sending a fine red spray across the divide below. Grabbing the Quad, he procedes down the hallway - The familiar BFG10K whine is heard. Instinctively he switches to his railgun and peels off the imputent wrench before the payload can be unleashed. Showering the open cavern with rockets, he angles for the flag, grappling for the dark ceiling. Just before a pair of rockets hit him, the grapple catches hold, whisking him to safety. The flag now glows an deep red, taunting him: "You'll never get me!" it cries. Determined, he fires his last rocket at the flag defender, and the tell-tale sound of a quad-damage about to run out echos through the cavern. "Now's your chance!" He grapples for the flag, and in a crescendo of chaingun and rocket launchers firing in tandum, he grabs the flag, and pogo-sticks backwards, grabbing the med pack, and saving his curvy ass.

Several hours later, the geek quietly logs out and stands up. It is now 11:30 at night, and he has work tomorrow. It is dark... the only illumination coming from the LEDs of his four computers and 19" inch monitor. He steps back, crashing into a tower of spent mountain dew containers. He thinks to himself "Ah, the real world... I was wondering where that went", and winces as he removes the remains of a microwave pizza from his foot and trots across the room. He sinks into his bed, pulls the covers up over his head, and dreams of his job - "How much I would like to have Quad Damage to deal with customers..." .. his last parting thought before he drifts off into a world of carnage and C code.

Perhaps a refrain? (2)

slashdot-terminal (83882) | more than 14 years ago | (#1493694)

In english poetry and literature you can find something called a refrain. A literary device that is used to emphasize a point or a basic theme that is moving through the whole piece.

Good points, but... (2)

rde (17364) | more than 14 years ago | (#1493695)

Two objections:

The caps lock key is as important to AOL users as the little windows key is to all our 9x-using chums. Don't diss it.

I don't care how small the space bar gets as long as I can hit it with my right thumb. My old five-year-old dell space key is quite dirty, except for a 1-cm length that I've tapped millions of times. I've a dirty thumb, though.

Of Keyboards and Repeat (5)

lar3ry (10905) | more than 14 years ago | (#1493696)

Despite the repeated sections (Rob... PLEASE fix this!), this is pretty informative. But I still have a few nits to pick.

CAPSLOCK. Why? Well, some people don't touch type. Other people have physical deformities that makes hitting SHIFT plus another key difficult, and "accessibility" wasn't something that was thought about in previous generations of systems.

CONTROL. Yes. It should be where PC keyboards put the CAPSLOCK key, but it isn't. Same with the ESCAPE key being sent to Siberia. Frustrates the heck out of us VI users (um... EMACS users use those keys too... no flame wars please).

Those of us with X have xmodmap and xkeycaps and other utilities for redefining our keyboard layouts. I imagine that there are similar utilities for Macs and Windows... so there are people aware of the problem and who have some solutions.

Using the right input device for the right job is crucial. Otherwise we will never be able to get the non-initiated to use them.

People not "in the know" still wonder how a Palm Pilot can survive without a keyboard. The answer is really simple: the software is written such that using the stylus becomes second nature. Same as with the Millipede example... the software was written for a specific input device.

Maybe neurocomputing will allow people to get information into a computer faster than is currently possible (I doubt so, but I'm willing to be proven wrong!), but that is not available right now. Keyboards have worked for a nice long time and will probably be ubiquitous for a time being.

Remember that laptops were thought of as toys (with "chiclet keys!") originally until the TRS-80 Model 100 came out with a FULL SIZE KEYBOARD. We've progressed past that humble 8K RAM beginning, and now laptops are so common that even the people at the airport detectors barely look at them except to tell you to turn them on.
--

Related Aticle (3)

NME (36282) | more than 14 years ago | (#1493697)

To go along with this excellent essay:

an old wired [wired.com] article by Brian Eno

-nme!

This is no longer the case with me. (2)

pen (7191) | more than 14 years ago | (#1493698)

I have made the journey to my garage, and have retreived my old keyboard. Goodbye, windows keys, goodbye cheap rubber mat keys. Hello, fast typing, and non-aching fingers.

If you still have your old keyboard that you used with your XT, get it out of the garage and use it. These things are priceless. If you don't have one, it's time to check eGay and buy one. There are some suckers out there that don't know what treasure they have, and will gladly get rid of it for a few bucks.

You can drive nails into cement with this thing, and it will still work. You can spill hot coffee and sweet sticky soda on it. It will work for years after that. Don't use the wimpy $5 keyboards. They will do major damage to your fingers.

On this thing, it takes virtually no effort to press a key. Therefore, I type much faster.

Yadda yadda yadda... I've become an old fart before becoming an adult.

A few trivial comments (3)

gnarphlager (62988) | more than 14 years ago | (#1493699)

First: I'm sure there's something quite zen about reading the same paragraphs several times in a row ;-)

Second: I've found Tetris a great gateway to programming satori. I play a game or two, and my mind is buzzing, and elevated beyond the actions of the game, or the computer. I then fire up an editor, and get to work, no longer distracted by the physical actions of interfacing with the computer. Perhaps in the future I'll have trained myself to enter that state without the game, but for now, it really helps me focus. Who says video games aren't productive!

Third (and final, I swear): I don't have a problem with the "penalty zone". Perhaps it comes from growing up with pc keyboards instead of unix keyboards. I use the numeric keypad without missing a beat too. Or at least I don't THINK I miss a beat (as that I'm not too aware of typing). I agree the big caps lock and small ctrl keys are just damn stupid (but I do like the placement of ctrl . . . maybe switch tab down, and caps lock up where esc is?), but the great thing about humans is our ability to adapt and train ourselves. If you think of typing as just finger motions instead of hand motions, yeah, it's going to be awkward and slower.

Carrying the music metaphor, it's like playing a guitar solo in one hand position as opposed to moving up and down the neck. It's easy to learn to play in one position, and you can be brilliant doing nothing but that. But once you learn to move hand positions without checking yourself, you'll be a much more versitile player.

I'll shut up now.

Re:Sun keyboards (1)

slashdot-terminal (83882) | more than 14 years ago | (#1493700)

What exactly is a "unix keyboard". I used a win98 keyboard for my linux machine at home. I consider it a unix keyboard because the system runs unix.

Re:Of Keyboards and Repeat (2)

proj_2501 (78149) | more than 14 years ago | (#1493701)

For Macs it's very easy. Just use ResEdit to make a new keyboard map and select it from the Keyboards control panel. (you need the right file type code, but I don't know what it is. and since I'm sitting at something decidedly non-Mac right now, I can't check)
--
"I was a fool to think I could dream as a normal man."

Related, Repetitive Links (0)

Anonymous Coward | more than 14 years ago | (#1493702)

Related Links
Linux
Slashdot
Tom Christiansen
Pinball Wizard
Fitts's Law
real keyboard
Fitts's Law
real keyboard
Fitts's Law
real keyboard
Fitts's Law
real keyboard
Fitts's Law
real keyboard
Fitts's Law
real keyboard
Fitts's Law
real keyboard
Fitts's Law
real keyboard
Fitts's Law
real keyboard
Fitts's Law
real keyboard
Tom Christiansen
More on News
Also by CmdrTaco

Funny.

Screen, Keyboard and navigation tool. (1)

farrellj (563) | more than 14 years ago | (#1493703)

Back when I had a brief gig selling computers back in the late '80s, I used to tell people that for the most part, computers worked the same on the inside. Once you have chosen your feature set, you need to pick something that is almost, if not maybe more important...your interface to the system: The Keyboard, the Monitor, and Nav Tool (mouse, trackball, clitorus, pad, etc.). Get a keyboard that you are comfortable with, a monitor that gives good contrast and resolution, and a device that you feel confortable with.

Personally, I like both the Marble Mouse by Logitech and the IBM clitorus for nav tool, since both are handedness agnostic, and I change what han I use every couple of months.; I always remap my keyboard to put the ctl key to the left of the "a" key, and I have a nice, crisp .22 dot-pitch philips display.

BTW, I still prefer the Wordstar keyclusters for editors...I recently amazed a co-worker on how fast I could get around and edit a text file with Joe in WS emulation mode. And he has been using VI for a decade...

ttyl
Farrell

Re:... (0)

Anonymous Coward | more than 14 years ago | (#1493704)

what's your point? or are you just herding karma again?

Kicked from #Perl for asking a question? (1)

Stephen Williams (23750) | more than 14 years ago | (#1493705)

Though I've never visited said IRC channel, and am therefore unfamiliar with its general ethos and atmosphere, I have to say that being kicked for asking a question sounds rather harsh. Was it meant in jest? Is #Perl the Wrong Place for new Perl programmers to go to ask questions?

-Stephen

the ideal perl keyboard (0)

Anonymous Coward | more than 14 years ago | (#1493706)

should have 2000 keys - all of them either '$', '(' or ')'

Some Thoughts... (2)

Midnight Ryder (116189) | more than 14 years ago | (#1493707)

While he puts the smack down on apps that require frequent changes between the mouse and the keyboard, I've had a pretty good solution to that one for a while now. I broke my right hand (my mouse hand) about 3 years ago, forcing me to have it in a cast for 13 weeks cause of the stupid pins they had to put in it. Well, that forced me to learn to type one & mouse one handed. After I got my right hand back in working shape, I then had a very high one-handed typing speed, and can keep my hand on the mouse for mouse operations, with out having to switch at all. Normally this is for MMI development packages, but, also applies to some programing cases, and to some other things like AutoCAD.

Someone else mentioned that they don't belive in that 'zoned feeling'. You may not be a programmer then, or at very minimum, you've never been one of those people who's initals are at the top of the score board at the arcades. In that environment, being 'in the zone' isn't just an option, it's almost the only way to be numero uno on 'em.

I still get that feeling, however, setting and programing, and even more so, setting and playing something like Quake2 or Unreal Tournament. He makes a very good case about layout of the keyboard affecting the ability to get 'in the zone' - any first person shooter I play gets the keyboard portion of the mappings changed completely, so that I don't think about the keys anymore. I'm just at one with the game (and slaughtering people left and right.) Over all, keyboard isn't the greatest interface, but, the ability to remap applications to get that same 'effiency' I get in UT and Q2 would be awsome, and help capture that 'zoned' feeling much easier!

"Real Keyboard" looks like an original Mac ripoff (0)

Anonymous Coward | more than 14 years ago | (#1493708)

That "Real Keyboard" looks just like the keyboard on the original Mac's. Wish I had a link with a pic. At any rate, they're pretty similar. And certainly no Windows key.

Re:Of Keyboards and Repeat (1)

lar3ry (10905) | more than 14 years ago | (#1493709)

I figured there was a way. I haven't used a Mac in years (I have a Mac Plus somewhere in my garage). Thanks for the illumination.
--

Quake = Zen (1)

BaMBaM (83141) | more than 14 years ago | (#1493710)

Using keyboard and mouse, never looking at the keyboard, using almost all 104 keys (bound & aliased) Zen is acheived for me.

Dirty Thumb (3)

DonkPunch (30957) | more than 14 years ago | (#1493711)

For some reason, I heard my grandmother's voice saying, "You don't know where that thumb has been." :)

More On-Topic: There seems to be a fair amount of hatred for CapsLock. I use it quite a bit for #define constants and macros in C. Do Perl programmers not use ALL_CAPS for much?

The Right Interface for the Job (4)

jalefkowit (101585) | more than 14 years ago | (#1493712)

The problem isn't limited to input devices. This article got me thinking about something I've been wondering about for awhile -- the recent tendency to use a 'standard' interface for various tasks, rather than a purpose-built, optimal interface.

It seems like there are dozens of companies these days that want their interface design to be the One True Interface to All Things. The best example of this is Microsoft, which every couple of years makes noise about how toasters and refrigerators should be controlled with some variant of Windows. But MS isn't the only offender -- lots of Internet companies do this too, by forcing you to use an HTML front-end to their resources rather than designing software for the purpose.

Don't get me wrong, I can see the reason for this approach -- once you've learned the One True Interface, you're set, you don't have to learn anything else. The problem is that trying to force all devices to share the same interface means that some of those devices are going to feel clunky -- or, worse, be downright unusable.

Take, for example, the whole WinCE vs. PalmOS war. On its face, you'd think people would prefer WinCE devices, since they're already familiar with the Windows interface. But (based on my observations, not any hard research) it seems to me that people vastly prefer the Palm interface, which is optimized for handheld devices, rather than Windows, which really wants you to have a big, roomy display to work well. In other words, people are willing to learn a new, unfamiliar interface if doing so offers them substantive productivity benefits -- which would seem to give savvy product developers an incentive to follow Mr. Christiansen's advice to optimize the interface for the task.

This trend is only going to get worse as computing intelligence is embedded in more and more consumer devices. The temptation will be very strong for those developing software for such embedded systems to leverage interface designs they already have, rather than create from scratch. With more and more of a car, for example, being run by software, it's not hard to imagine MS someday proposing that you run your AutoPC through a modified Windows interface, even though such an interface would be totally inappropriate for the task at hand. Let's hope that more product & software designers take note of the evidence that people prefer optimized interfaces and don't automatically rule them out.


-- Jason A. Lefkowitz

Re:I really don't believe in this whole Zen concep (2)

Anonymous Coward | more than 14 years ago | (#1493713)

Who said anything about special powers? Think of zen as the focusing of mental ability. Rather than spreading our capacity over a large range of tasks, our mind becomes focused on a single task (or set of tasks), allowing for a dramatic performance increase (i.e. the mental version of distributed processing).

You have to have the right keyboard (2)

aheitner (3273) | more than 14 years ago | (#1493714)

I agree with a lot of what Tom is saying, though not with the arrow keys -- I have no problem moving my hand slightly to get to them, and I can move one word at a time with the Ctrl key.

Of course the right editor is key. I can use vi, bt not fluently. I use nEdit, which I find extremely efficient and also easy.

But all of this is minor. In the end most of typing in code would work fine in pico. The real critical path is the keyboard. Here at school they seem to buy a lot of Dells with the cheapest keybaord, Dell's horrendous "Quietkey". It's squishy, you can nver tell if you've hit a key.

Sun's Type 5 keyboards are very nice -- good feel, intelligent key location. I use Suns for this reason when I'm not using my computer.

But ah, on my computer, I have a big old IBM PS/2 keyboard. Super tactile click. Indestructible (still working perfectly since '87!). The key doesn't actually contact till exactly on the click, and the peripheral keys are nice and big. The Ctrl key is in the wrong place, but that can be remapped pretty quickly...

I've seen IBM keyboards refurbished going for $50-80, and they're worth it. I'm just glad my highschool had a pile of them on really old machines, so we could just help ourselves when they finally junked 'em.

Re:#perl (0)

Anonymous Coward | more than 14 years ago | (#1493715)

I have to say that the level of support, friendliness, helpfulness and community in the Perl "community" is really rather poor. I find the PHP crowd to be *much* more helpful.

That's not to say that I dislike Perl; it's just an observation.

Wow. I think I just had a zen moment. (3)

Pyr (18277) | more than 14 years ago | (#1493716)

early in the morning, listening to some heavy industrial, I start reading a slashdot article. I begin to slip into a transcendendal state.. and then I realize that I haven't suddenly jumped out of time.. I'm just reading the same few paragraphs over and over.

damnit.

Re:Kicked from #Perl for asking a question? (0)

Anonymous Coward | more than 14 years ago | (#1493717)

Yes #perl is the wrong place to go with any sort of question. People here are very elitist and most unhelpful. You might as well just look in the mirror and ridicule your self about what an idiot you are. It would say you some time and grief.

Oh, and asking a windows or cgi perl question, is a /ban'able offense.

"Real Keyboard" (1)

Lamont (3347) | more than 14 years ago | (#1493718)

Interesting article. I agree that the state of keyboards today is just pitiful, but that "Happy Hacking" keyboard IMHO is an ergonomic nightmare.

I also agree that the mouse is a bigger cause of RSI than the keyboard...I see people all day long mashing their wrist down into a wrist pad while working with the mouse...not good. Of course, keyboard or mouse, if you don't have proper posture or an correctly configured workstation, you are going to have problems....

Re:... (0)

Anonymous Coward | more than 14 years ago | (#1493719)

Of course that's what posting to slashdot is all about. You just post things (even items that you don't believe in it) and you get karama points. If you post enough you get an automatic level of 2. That makes any negative moderation difficult (but not impossible). You can then get more and more responses because you are seen more than likely on more default threasholds then before. It's selfperpetuating

keyboards (1)

Phule77 (70674) | more than 14 years ago | (#1493720)

I got to the point fairly quickly via bbs multitasking where my automatic typing was fairly quick (though often terminally dyslexic), but I've found that I tend to avoid using the arrow keys, penalty box, etc. as much as possible, much as that hampers my work, simply because it's such a PITA to bother with, distracting me from the work at hand.
On the other hand, in the realm of control and alt keys that are too small and inconveniently located, I do wish there were some easier way to do curly braces and such so that I wouldn't wear out my pinky holding down the shift key while tagging, but that seems a terminal fate of the current keyboard. Help?
Vi was interesting, in the few unix enabled jobs I've been in, but not being from a programming background ("you need to swim, so we're dropping you into the Unix Ocean, tell us next week if you drown.."), but the learning curve on that sort of thing, when done on one's own, seem rather steepish. But I can dream...
I myself attain zen via keyboard more often when I'm in the midst of a discussion or story (being a bit of a writer) and my brain takes off and my fingers desperately attempt to keep up with my current passionate discourse. But it's appreciable just the same, you look up suddenly at the clock and the time has vanished, but the movement of temporal dislocation was more than worthwhile, you feel inside. Or at least, I do.
Nice article, thanks for the thoughts.

Todd

About mouse usage with keyboard (4)

kooma (92065) | more than 14 years ago | (#1493721)

Just the other day I witnessed someone who used his mouse with his foot. He had both of his hands at the keyboard and (quite effectively) moved in the X-environment with his foot...

He said it took approx. 2 weeks to master the Art, but it was worth it. The advantages were about the same as what was mentioned in the article as drawbacks with the mouse. The advantages were:

One doesn't have to take eyes off the screen while mouse is required,

One doesn't have to move the hand away from the keyboard when mouse is required,

No one at the workplace wants to borrow his mouse.

I ain't gonna try it (since I like to keep my feet in my shoes while at work), but at least some hardcore zen-wannabe could try this one for kicks. :)

-kooma

Why I hate Mac keyboards (2)

igjeff (15314) | more than 14 years ago | (#1493722)

"Sure, you've probably got little nibs on your `F' and `J' keys"

Tom seems to diss those little nibs as largely insignificant...and in the realm of the types of movements he's talking about...they largely are...but I tell you...this is the single biggest thing that I hate about typical Mac's...they have the nibs on "d" and "k". I know it sounds insignificant, but I always end up typing like, "O ;Qua wms i[ ru[omf ;olw" (translation: "I always end up typing like")

Jeff

This is a minimalist article (4)

Ted V (67691) | more than 14 years ago | (#1493723)

This article.
This article is.
This article is minimalist.
This article is very minimalist
The minimalist article is.
The minimalist article is repetitive.
The minimalist article is not repetitive.
The minimalist article appears repetitive.
The minimalist article topics appear repetitive
The minimalist article topics repetitively appear.
The minimalist article topics repetitively change.
Topics repetitively change minimaly.
Topics change minimaly.

Now look at that text and compare it to Tom's article. He says the same thing over and over-- ALMOST. This is the zen of writing. At the end, he's brought up a totally different point than what he started with, except for one common theme. In my example, the theme is "minimal". In his article, the theme is "Zen".

Here's a brief summary for those who don't want to read the article.

Starting idea: Zen interfacing is good.
Ending idea: Bad use of input devices stops Zen.

Hope this helps.

-Ted

Thanks, those are holy words (1)

jw3 (99683) | more than 14 years ago | (#1493724)

You speak out of my heart! I'm not a hacker, and I'll never be, but I type quite fast and I do type a lot. And every time I get a new keyboard I turn into an old grump: whoa, the keyboards these days are worse and worse, in my days we had real keyboards... I got constantly annoyed by some poor inventions claiming to be 'a revolution' - I suppose that means 'bloody', 'pointless', 'cruel', 'eating own children' and so on. Look at this damned new Macintosh keyboard (no, I'm not a Macintosh users, but there are mostly Macs in our lab - I use them as a terminal): not only they changed this little spot which tells your fingers whether they are in the right place (it was on "d" and "k", now it's "g" and "h"), but they also removed the keypad (did you ever have to type in a hundred or so numbers by hand?), removed the delete key and run over the keyboard with a sledgehammer - at least that is my impression (and don't forget the colors like from a Velasquez's nightmare).

I got a new NT box serving only as a control unit to some sophisticated biological device. Not only is the keyboard cruelly castrated by Dell (halved "Enter" key, so I constantly push "backspace"), but the UI is more then s*wed, its badly sc*wed. You have to use mouse, even though most of your actions is typing data into a spreadsheet - sorry, to go from one cell to another you have move you mouse, push one of that buttons, then a pop-up menu comes, then you have to click with the mouse pointer in the only input field (otherwise press tab three times), and type in the data. I mean, OK, I am stupid, I am a biologist, but what do they take me for? A four year old AOL user?

Regards,

January

Give me control (2)

Goner (5704) | more than 14 years ago | (#1493725)

Here is my /etc/X11/xinit/Xmodmap to get control instead of caps lock

!
! Swap Caps_Lock and Control_L
!
clear Lock
remove Control = Control_L
!remove Lock = Caps_Lock
keycode 0x1A = e E currency
keycode 0x36 = c C cent
keycode 66 = Control_L
keycode 37 = Control_L
keycode 115 = Caps_Lock
add Lock = Caps_Lock
add Control = Control_L
keycode 0x40 = Alt_L Meta_L
keycode 0x71 = Alt_R Meta_R

Also, changing the keyboard map to emacs2 fits with this. The above changes the dreaded window$ key to caps lock... Far enough out of the hemisphere?

-Rich

Re:I really don't believe in this whole Zen concep (1)

slashdot-terminal (83882) | more than 14 years ago | (#1493726)

Who said anything about special powers? Think of zen as the focusing of mental ability. Rather than spreading our capacity over a large range of tasks, our mind becomes focused on a single task (or set of tasks), allowing for a dramatic performance increase (i.e. the mental version of distributed processing).

Ok but why is this suddently so special to people? Because of it's literary merit?

P.S. Why does good ol Taco have such "fond" memories of this man. Seems quite trivial.

GUIs are killing good CLI and keyboard shortcuts (3)

klund (53347) | more than 14 years ago | (#1493727)

I have Quickcam connected to a machine running Windows that updates a picture on my web site. Which sucks, because it's the only machine I own that doesn't recover gracefully from a reboot. For some reason, there is no way to put the little Quickcam applet into the Startup Folder so that it starts up in Autocapture mode. Everytime the machine reboots, I have to go up to the keyboard and type "Alt-F, down, down, return, return" to get it to start taking pictures. I have sent Connectix technical support a few emails about this, and here is the (rather curt) reply that I finally received:

> Is there a way to put the quickpict applet in the startup folder
> so that it starts up automatically in the autocapture mode?

Unfortunately, not at the moment. Thanks.

The menu in the Color QC applet claims that spacebar is the keyboard short cut for "start capturing", but that doesn't even work.

You know, this touches on one of my pet peeves. Say what you want about graphical user interfaces making computers "easier to use", sometimes they make computers less useful. This is a perfect example. Here's a perfectly good program, that these guys spent time on, but they were so wrapped up writing a GUI for Windows that they forgot to make any command line options available. Give me a break! This autocapture function was written for a web server (obviously), yet it explicitly requires user intervention at startup. How smart is that? Shouldn't servers be able to reboot in the background without user intervention?

A friend of mine works for a company that recently bought a specialized piece of scientific software for $50,000. It has a beautiful graphical user interface, but no batch mode. So if they had some 10,000 data files that they wanted to run through it (and they do), they'd have to paid somebody to sit there for a month clicking with the mouse. They're sending it back. Like I said, easier to use, but less useful.

Re:... (0)

Anonymous Coward | more than 14 years ago | (#1493728)

oh, so this is some kind of mud for snotty geeks? i like it. can i be an elf wizard???

Re:Score : 0 (Redundant) (0)

Anonymous Coward | more than 14 years ago | (#1493729)

jeep, how can your post be redundant if it's the first one?

Re:I really don't believe in this whole Zen concep (1)

rasilon (18267) | more than 14 years ago | (#1493730)

You will, practice and give it time. I've fired up a new disk, closed my eyes for a moment to think about disk layout and opened them to find I've logged in as root and started fdisk on the appropriate device. Similarly with many other things outside of computers. You have got to be comfortable with yourself and what you are doing.

This is subjective (0)

Anonymous Coward | more than 14 years ago | (#1493731)

By repeatedly mentioning "Fitt's Law", this article comes off sounding like some sort of scientific study. Its not. The choice of keyboards is totally subjective. I started out using a Commodore 64, then an Amiga, then UNIX-ish keyboards (and used them for many years) particularly the Sun keyboard Tom is so fond of, and then finally PC keyboards. I hated the Sun keyboard. I still hate the Sun keyboard. I use a standard issue (non-natural) PC-style keyboard. The alt/ctrl/windows (yes Windows key!! punk!) keys are all the same size and hardly bigger than the letter keys. I love the keyboard I currently use, and am perfectly able to "zen out" with it.

Of course, I tend to use more modern software than 'vi', such as Windows based software, and UNIX software that is GTK or QT based. I don't use the control key all that much, and I almost never use the alt key. I think Tom's preferences (and they are just that, preferences) are colored by the rather oldish software he uses, which was designed to be efficient on what people were using at the time. I don't fault him for using oldish software, if that's what works for him, but I'd ask him to please refrain from making sweeping generalizations and calling them fact, based on his own preferences.

Re:I really don't believe in this whole Zen concep (2)

zuvembi (30889) | more than 14 years ago | (#1493732)

Nobody said anything about mystical powers, it has more to do with focusing your whole being on the task at hand. The way tchrist describes it as being where thought and action are one is very good IMNSHO. I believe in it for the same reason I believe in gravity, because I've experienced it. I've experienced it on 4 different occasions, in three different circumstances.

1. twice while programming
2. once while just lying in the sunlight relaxing
3. once while kneeing my friend in the groin - very long story (sorry ken)

And while it was happening, I was indeed in 'another place', and it felt damn good. A place where motion, thought, & deed were all the same. Though of course after I was finished with #3 there were some problems to deal with :)

CapsLock vs. Ctrl. Round 1. FIGHT! (1)

Keith Russell (4440) | more than 14 years ago | (#1493733)

Actually, the great CapsLock/Ctrl switch came about because touch typists, trained on typewriters, were accustomed to Shift Lock being above the left Shift key. (You do remember typewriters, don't you? :-) ) When placed in front of old-school XT keyboards, they kept hitting Ctrl, expecting CapsLock, and getting something other than what they expected. Their finger memory was already burned-in. I guess they just shouted louder than the hackers.

What I'd like to know is this: What poorly-trained chimpanzee decided that the F-Keys belonged across the top of the keyboard?

I miss my old Gateway AnyKey keyboard. No Winkeys, F-Keys down the left and across the top (independently reprogrammable, no less), and an arrow key cluster that would not satisfy Tom, but was absolutely awesome for games. Alas, a poorly placed pop bottle brought it to an untimely end. If I could go back in time, I'd tell myself, "No, fool! Don't put that bottle of Sprite there while playing Jedi Knight!"

Keith Russell
OS != Religion

Is this following on from the poll? (1)

anthonyclark (17109) | more than 14 years ago | (#1493734)

from My comment [slashdot.org] from the last poll.

What I want in a keyboard:

  • Ergo/split design.
  • All the programming symbols on their own keys ($#|{}[]()<>?@)
  • Silent, soft but clicky keys. I hate noisy typists!
  • A whole bunch of keys with durable 32x32 LED panels on them, programmable to display different symbols. (so I can reprogram the windows key to be a penguin without buying a new keyboard) (or so I could program a key to do C-c C-f for open or C-c < for docbook)
  • Lasts a lifetime
  • Function keys below the space bar
  • Large keys so I don't miss
  • On-board memory for keymappings and symbols (see above)
  • Statistically designed using only programmers as the sample. This should give a keyboard with all those funny symbols in nice convenient places.


AFAIK the dvorak keyboards were designed statistically with the most frequently used keys closer to the fingers.
why not do this now, using programmers as the sample?
It could run a bit like the SETI programme, with users installing a little daemon that just records how many of each key was pressed and then sends that back to a central server...
There should be no security risk as all that would be sent would be statistics, not something like the output from "script"...

Or maybe I need to think this through more

That Zen zone... (2)

kzinti (9651) | more than 14 years ago | (#1493735)

Excellent article, though it's a bit repetitive, though it's a bit repetitive, though it's a bit repetitive, though it's a bit repetitive.

Personally, I don't think the keyboard matters as much as the working environment, and how well it and the programmer are attuned to each other. This is probably why people are so religiously bound to their choices of development tools, in particular their editors. People who can find that zone do so because they work well with their tools, because they know the tools well enough that the tools themselves fade into the background, and the code and programmer come to the fore. Having a bad keyboard will certainly get in the way of this experience, but having to use bad tools will get in the way more.

For the programmer to be able to adapt to the tool can be as effective as the tool being able to adapt to the programmer. This is why people are able to reach the zone with editors like vi that aren't as programmable and as extensible as editors like emacs. That's not a judgment of either editor, just an observation that the highly touted customizibility of emacs doesn't necessarily help its users reach the zone, nor does the lack of a built-in programming language prevent vi users from reaching the zone. It simply means that the choice of editor as a matter of taste.

It probably also means that programmers who use detestable IDEs such as Visual C++ can probably also reach the zone.

--JT

datahand keyboard (1)

tomson (100060) | more than 14 years ago | (#1493736)

Does anyone here have any experience with the datahand [datahand.com] keyboards?

Zen C++ (1)

Foxxz (106642) | more than 14 years ago | (#1493737)

wow.. have you ever been in a state like that when programming. writing code in new terretory, at least for yourself and making a program so huge and complex you cant take your mind off it and you want to tell everyone. it is a wonderful thing. but alas, i have strayed and i need to re-init myself back into the c++ code again before i can experience another zen.

-foxxz

Stuck in Paste (1)

DiveShark (23414) | more than 14 years ago | (#1493738)

Just curious, did he have anything worth saying
after he he paste 42 times?

Nothing like providing evidence to prove
ones thesis, eh?

Long live Nascom II (0)

Anonymous Coward | more than 14 years ago | (#1493739)

My Nascom II keyboard (Nascom was one of those solder it yourself together Z80 stuff. After writing an appropriate BIOS for it including terminal emulator and diskette drivers, I could even run CP/M on it) was one of the best I ever used. The keys were springed and had a hard limit (the steel plate on which they were mounted) when banging them down. There were no mechanical contacts, they worked with magnetic Hall effect. Indestructible. The keyboard had no penalty zone whatsoever. The 4 Cursor keys were arranged in the best manner I have ever encountered: left and right from the (sumptious) space bar, in order: You could access them without the leave/return effect, they were in just one row, you could easily use both hands for navigating all across without ever contorting your fingers or pulling them off the keyboard. Left and right cursor movement were pretty mnemonic, up and down you soon learnt. I had several games using those keys, and you could pretty much zen in on them without twisting or hurting fingers and getting RSI (of course, you usually used the thumbs on the space bar for shooting).

Well put (1)

panda (10044) | more than 14 years ago | (#1493740)

Apart from the redundant section in the middle, this was very well put. As someone who has been typing on all sorts of keyboards (including manual typewrites) for years, I can agree almost completely. When I'm typing, I DO NOT want to touch the mouse or move my fingers off of the center keys, even when I'm entering mostly numbers, I don't reach for the numeric keypad.

I find myself enjoying "ergonomic" keyboards very much.

The QOTD that appeared at the bottom of the screen while I was reading this article was quite appropriate: "Philosophy: A route of many roads leading from nowhere to nothing. -- Ambrose Bierce."

I have to say that the whole zen thing is a bit overblown. I do agree that you enter a sort of state of mind where you are unaware of what else is going on around you. If that is what you're calling Zen, then so be it. I don't think that there is anything truly mystical about it. It's just a state of hyperconcentration.

Man, this Dell keyboard is bugging me. I miss my Adesso (which is at home)!

Long live Nascom II (correction) (0)

Anonymous Coward | more than 14 years ago | (#1493741)

My Nascom II keyboard (Nascom was one of those solder it yourself together Z80 stuff. After writing an appropriate BIOS for it including terminal emulator and diskette drivers, I could even run CP/M on it) was one of the best I ever used. The keys were springed and had a hard limit (the steel plate on which they were mounted) when banging them down. There were no mechanical contacts, they worked with magnetic Hall effect. Indestructible. The keyboard had no penalty zone whatsoever. The 4 Cursor keys were arranged in the best manner I have ever encountered: left and
right from the (sumptious) space bar, in order:



You could access them without the leave/return effect, they were in just one row, you could easily use both hands for navigating all across without ever contorting your fingers or pulling them off the keyboard. Left and right cursor
movement were pretty mnemonic, up and down you soon learnt. I had several games using those keys, and you could pretty much zen in on them without twisting or hurting fingers and getting RSI (of course, you usually used the thumbs on the space bar for shooting).

Here's another example... (1)

klund (53347) | more than 14 years ago | (#1493742)

My office uses accounting software in Windows that requires entering many numbers from paper (invoices, purchase orders, etc) into a dialog full of entry fields. The staff has gotten pretty adept at entering the numbers quickly using the numeric keypad, but in order to move to the next entry field, they have to either reach across the keyboard and hit the tab key, or they have to fiddle with the mouse and click on the next field.

Needless to say, after an hour of this, their hand, wrist, ... hell, their whole arm gets sore. It seems that a very elegant solution to this problem would be to make one of the keys on the numeric keypad (like enter or "+") a tab button.

I tried finding a software solution, but none that I have found work, not even the Kernal Toys package. The weird thing is that while pressing tab moves you to the next field, hitting Ctrl-I or Alt-009 won't. Windows 95 grabs the keyboard scan code for the tab key before it's decoded into ASCII.

Finally, I found ZDKeyMap (whoever said nothing useful every came out of Ziff Davis?). I use it to redefine one of the unused numeric keypad keys (the "plus" key) to be a tab button. Now we can enter a whole dialog full of entry fields without moving an arm. So far, it works in all the software that we use, and we're feeling better.

is my ibook's casing an important interface? (1)

betamax_ (106116) | more than 14 years ago | (#1493743)

Before I had my Bar Mitzvah I was required to attend Hebrew School every Wednesday. At the beginning of it we would have a service, reciting all the normal prayers. When it came time to prepare for my Bar Mitzvah it was like I already new all the prayers and suprisingly, could recite them from memory. I can't understand Hebrew and I only know a small amount of it's grammar, but it was like I was wired for the prayers. I didn't have to think about them. This is exactly like how we speak english or move our body. It is very hard to induce, although I suppose it helped that I was that young. It still required a lot of repitition. And yet it is all really so simple. In pinball, all you really have to do is hit the flipper when the ball come towards the hole. Yet no one can keep it up for ever. There seems to be something impeding our minds from performing such a basic task. Some people area able to get around this. That is where tha high comes from. I have always wondered why it feel so good to ski. It is because I am exercising my ability to eliminate all human blocks and become one with the task at hand. This is what the best of us do with programming. They reach a point where they are thinking and dreaming in programming languages. This is what the perl movement is really about. Larry has talked a lot about perl as being a language that is meant to adapt to the programmer and allow him to manipulate it. What a great peice of writin.

Re:Perhaps a refrain? (3)

DoomHaven (70347) | more than 14 years ago | (#1493744)

If so, he should "refrain" from doing it, because I lost interest after the 3 iteration.

Re:A few trivial comments (1)

Zerth (26112) | more than 14 years ago | (#1493745)

>First: I'm sure there's something quite zen about reading the same paragraphs several times in a row ;-)

I don't know if it's good or bad, but I didn't notice till after the second repetition.

> Second: I've found Tetris a great gateway to programming satori. I play a game or two, and my mind is
> buzzing, and elevated beyond the actions of the game, or the computer. I then fire up an editor, and get
> to work, no longer distracted by the physical actions of interfacing with the computer. Perhaps in the
> future I'll have trained myself to enter that state without the game, but for now, it really helps me focus.

I used to use Tie Fighter to get psyched like that. Really, anything can get one going like that if it has something repetitive in it. While gaming is definitively a prefered way to go, sometimes just typing sequences that come easily to hand but don't make much sense (reatingscolerium, rtiongert, stuff like that) work just as well, but don't have the nice sound effects to go with it. Sort of like the computer equivalent of chanting. Both make your brain go numb:}

arrow keys (2)

Hard_Code (49548) | more than 14 years ago | (#1493746)

I'd have to argue that the arrow keys are useful, and not that awfully arranged. With chords like shift and control the arrow keys can easily be used to navigate tokens. I am ALWAYS using CTRL-ARROW to move around the tokens when I'm programming. Since programming languages are nicely broken up into words I can easily traverse a block, select a parameter list etc. With SHIFT-CTRL-ARROW it is easy to select multiple tokens.

On the other hand when I use vi, I am ALWAYS traveling to ESC-land to reset the context. Most of the editing functions I do can be contained within one "context", so breaking them out so as to have overlapping contexts puts a burden on my by having to unnecessarily go out and find ESC to switch contexts. This context switching is awful and I can't really get in the "zone" in vi. Perhaps if ESC was closer and I actually took time to memorize all the meanings of all the keys in all the contexts I could do things faster.

I use jEdit (http://www.gjt.org/~sp/jedit.html), and find the conventional use of the arrow keys and SHIFT and CTRL chords very convenient and inuitive. I /can/ switch to and use the arrow keys without looking down. In fact it is /convenient/ that "up" is directly above the "down" arrow because I use my index finder on left, my ring finger on right, and my middle finger hovers between up and down. It is very easy to push either up or down with my middle finger. Sure it may not be easy to "trill" the up and down with one finger, but what chords do you know of that contain both the up and down arrow keys?

It's still VI vs. EMACS (2)

Ricdude (4163) | more than 14 years ago | (#1493747)

An argument by any other name...

Personally, I believe the benefits of a one key search function are offset heavily by the penalty of having to hit the escape key before searching. The mode changes in vi are tricky to get used to, even for someone like me, who's been through ed, edlin, countless embedded IDE editors, vi, joe, jed, pico, emacs, and epsilon. Most of the time, you are either inserting or deleting text. Anything else takes extra keystrokes to change modes, or chorded keystrokes, regardless of which editor you use. BTW, Tom was complaining about being unable to do scanning by word with the exiled arrow keys: most sane editors (since wp4.0) have word scanning wired to control+arrow keys. Also, the "trill" of the jkjkjkjkjkj in vi is mostly wasted effort, imho. Why on earth would you need to keep going back and forth between two lines, without doing anything to them? If you feel the need for useless exercise, trill the left and right arrows.

VI bigotry aside, I believe there were several valid points about the non-ergonomic design of modern keyboards.

One's editor of choice is largely a matter of what makes sense to your fingers. I've personally settled on xemacs, and am quite capable of programming "in the zone" with it, but whatever works for you, eh? It's just a tool. Does it make that much of a difference whether you use Black&Decker or a Makita power drill to build that dog house? Probably not.


WordStar (1)

Anonymous Coward | more than 14 years ago | (#1493748)

Great piece. I agree entirely with Tom's views on keyboards. But I'd like to add that the Zen of writing on a computer was realized by only one word processor -- WordStar! The WordStar "diamond" arranged the cursor control commands spacially; and once your fingers knew them, they knew them forever, and you could experience the oneness with the computer that Tom describes so well. If you have a DOS partition, go forth on the net and find VDE, a WordStar-inspired text editor (written in Assembler for speed!). It's a joy to use. The closest Linux equivalents are joe (as jstar) and jed (in WordStar mode). They're good editors and have a better feature set than VDE. But nothing beats VDE in the Zen department... Damn, I wish there were a Linux version.

Kinesis Ergonomic Keyboards (1)

whig (6869) | more than 14 years ago | (#1493749)

Some very interesting keyboard designs here: http://www.dmb-ergonomics.com/ [dmb-ergonomics.com]

Blah Blah Blah (1)

Kool Moe (43724) | more than 14 years ago | (#1493750)

I didn't find that article very interesting at all. Neat ideas, but (even without the repeated areas) I think he could have made his point in 4 or 5 paragraphs. It was just a lot of rambling, IMO. This guy doesn't have a journalist background, does he? My prof would have ripped such a paper to shreds.
To actually comment on the meat of the article, I kinda like my Win keyboard. It took a while to relearn when I made the unfortunate move from the Mac to the PC for work, but not too long.
I agree the Caps Lock key could be totally relocated- swapped with the ESC key sounds good to me!
The only problem I have with the Windows key is hitting it once in a while while playing Quake, which minimizes the game and shows the desktop. NOT a good thing! Ack! Alt-Tab! Alt-Tab!
But I guess I could always bind it to something else (can you bind the Windows key in the Q2 config?).
I'm used to my PC keyboard, and work with it fine. I could remap using programs, but then any other computer I work on, I'd stumble. Nah. Of all the evils PC's have brought us, I havenno problem with the keyboard. I'm just waiting for solid speech rec- and no, I won't be implanting any freakin devices into my head so I don't have to move my hands!

Remember your history (1)

MissinLnk (104421) | more than 14 years ago | (#1493751)

If you compare your current keyboard to the keyboard of some old typewriters, you'll notice a lot a similarities. The Caps Lock is where it is because that's where it used to be on typewriters. The reason most keyboards are the way they are is because they are layed out just like the typewriters. It was left this way to make it easier for everyone that had learned to type on a typewriter first...why change what works?

I have to agree...somewhat. (1)

ZarKov (99672) | more than 14 years ago | (#1493752)

Here I am, the tcsh user that hates CGI.pm, and I'm about to agree with Tom Christianson. I never thought I'd see this happen.
I agree that the vast majority of keyboards these days suck. And those of us with jobs where our bosses don't know the slightest bit about what we do are stuck with those wretched keyboards. I'm surprised Tom didn't make mention of the keyboards you practically have to punch to type a letter. Sheesh, that spells carpal tunnel after five minutes.

But now, alas, I have to take exception to the comments on emacs. As any emacs user knows, you can define your own macros to do whatever you want. This means that everybody can have exactly the functions they need easiest to access. It's time vi died already.

Something very wrong on slashdot today (1)

shomon2 (71232) | more than 14 years ago | (#1493753)

About 3 stories for half the day with no comments to their name... Strange, even for us UK people, who have to wait until 2 for the USA to wake up...

Then this story with the middle bit repeated about 5 times... Then I reload and it's gone! I hope the problem gets sorted, looks like an ugly bug!

Anyway, I think the fitt's law stuff is good if applied as one more generic rule, but it doesn't convince me the way it's put in the fitt's law link. Design concepts are sometimes so so prone to waffle, that I really need good proof before I believe that keeping the size equal is the solution to all design ills.

Answering all the questions with the same answer ldos not give sufficent credit to all the other aspects of design, like clutter and metaphor, or how intuitive it all is.

But it's good for /. people to hear about this stuff from a respectable source like this, because good design (versus complicated configurability) is what all the various software writers need to create a good desktop for the masses.

Re:I really don't believe in this whole Zen concep (3)

CaseyB (1105) | more than 14 years ago | (#1493754)

There is not logical notion that human kind has any implied fuzzy quasi-telepathic state wherin they gain "mystical" powers.

It's not mystical at all. It has nothing to do with telepathy. But I can tell you that the brain seems to enter a very different state when it is focusing on certain tasks. It happens to me often when I code and when I play videogames.

IANANeurologist, but I would guess that 'zenning' is the process of shutting down portions of the hundreds of inputs that the brain manages from moment to moment. You're allocating mental resources to the problem at hand, rather than wasting them on trivia like maintaining an awareness of your environment, checking for bodily requirements like food, water, or sleep, or even keeping your eyeballs moist. It stands to reason that ignoring these distractions will allow the brain to run at a faster, more productive pace.

Re:Of Keyboards and Repeat (2)

revnight (8980) | more than 14 years ago | (#1493755)

What I find ironic about the Caps Lock rant is that the focus of the article seems to be about the evils of chording, particularly when the keyboard he espouses uses the 'caps lock' idea for the function keys. ;)

Mind you, I think the caps lock is in a pretty lousy place, but "a lynching party"?? C'mon...



Re:Sun keyboards (1)

aheitner (3273) | more than 14 years ago | (#1493756)

Various workstations have interesting keyboards.

Suns come with Sun keyboards. The current ones are Types 5 and 6. They are very nice. They have many many keys. They have a blank mystery key. The have a Stop key. They have Ctrl keys in the right place. Old Type 4's are pretty usable, but they don't hold up all that well (I've got a lot of dead ones and a few working ones).

IBMs (RS/6ks) used to come with blessed IBM PS/2 keyboards. When our RS/6k died at my HS, the keyboard was still going strong. I use only IBM PS/2 keyboards on my PCs.

HP PA-RISCs come with fairly standard HP keyboards off the PCs, AFAICT. No special keys.

SGIs come with middling keyboards in funky colors of recycled-looking plastic. Grey and blue and crazy and all.

Never actually seen a DEC Alpha keyboard. Old DECStations came with kinda squishy keyboards.

My SPARC laptop has a standard Lexmark laptop keyboard, it's ok. Needs more Stop and mystery keys :)

Re:Something very wrong on slashdot today (1)

TPx (64118) | more than 14 years ago | (#1493757)

I am sorry, but Tom just throw his respectability out of the window.

What an idiot.

Zoning out for fun, and proffit (2)

reaper (10065) | more than 14 years ago | (#1493758)

Best user interface for zoning out I've seen so far is the old ViewLogix ECAD system. 1 letter commands, and mouse for connecting the parts. As a test, I decided to CAD the PC-XT, and it took 30 minutes. 30 minutes to CAD out a PC motherboard.

But, alas, they made the windows version. They got rid of middle mouse button support after a while. Then the command keys became chord combinations. All bad. I just couldn't get into it.

Many programs have this whole "mouse for drawing, and keyboard for entering command" thing going, but I just haven't found too many that do it well. AutoCAD, for instance... not being extremely familiar with it, but I just couldn't get into the whole picking from the palette thing, or type in the primitive you were trying to draw, and then moving hands to the keybaord to punch in parameters... there must be a better way...

And as for arrow keys, I'm going to have to disagree here... there is nothing intuative, or good about using 'hjkl' for movement. Except that your terminal software doesn't need to send extended control characters to make it work (very useful when using the M$ telnet abortion. VT100 emulation, and sends ANSI ID, what?!?).

And as a finaly note, I do agree with most of what the author is saying, but the big thing missing here is choice. I normally work a bunch of differnt editors, and I choose them based on suitability to task. XEMACS has it hands down when coding (for me). Syntax highlighting, auto tabbing, parenthases matching, and numerous other nifties make my life easier, and make the code roll out faster. This is because it takes care of crap that I don't want to deal with.

When editing text files, and long config files, and most other things.... vi rules. it has a faster search system (fewer keystrokes to get it to give you the love you need), and is so much faster to load. Doesn't use up megs of swap, either.

Summary: Utiliy, familiarity, and suitability should choose your editor, and input device. There is no absolute on any.

copy & paste with keyboard (1)

J-freak (90875) | more than 14 years ago | (#1493759)

I still hope that there will be a standard chord for copy & paste in every linux application. at the moment I have to learn for every application new chords :-/ anybody knows if there is something in development?

I would also like to see more standard accelerator keys (like in m$ windows) (f.e. alt+f for the file menu)

-- www.game-over.ch [game-over.ch] - Jesus rules!

I think many responses have missed the point (0)

Anonymous Coward | more than 14 years ago | (#1493760)

In reading this article, I wondered why it was so long and repetitious. Out of curiousity, I read it under lynx (originally I used netscape). It's still long and repetitious, but not nearly as annoying. . .coincidence. . .I don't think so.

As I write this, I'm reminded of two postings
I saw in the thread "How to Write Unmaintainable Code." One of the posters complained about lisp and received a response like (para.) the following:

Lisp can be written to be very maintainable. It can be harder to read because the code is so dense. . .bottom line: the paragraph was poorly formatted and therefore was difficult to read and comprehend.

The response (I don't know if it was from the same poster) just broke the previous response into paragraphs. As a result, it was much more readable.

I don't know if it was intentional or not, but if you've ever read a substantial amount of lisp code, you'd understand the irony/beauty found in the posts.

Re:"Real Keyboard" looks like an original Mac kbd (2)

Erich (151) | more than 14 years ago | (#1493761)

Nope.

The origional mac keyboard didn't even have an escape key. The control key was also in the wrong place (it was in the lower left hand corner). The Happy Hacking keyboard is really nice compared to lots of PC keyboards, but I still like the Sun 5 unix kbd better...

Re:Sun keyboards (1)

Ramses0 (63476) | more than 14 years ago | (#1493762)

A "unix keyboard" just feels different. A lot of times teh control and alt keys will be in different locations, the slash "\" is moved to a different place, a lot of times the INS-HOME-DEL block is moved to a different place (and possibly the layout has changed). Even the function keys normally fall in a 2-wide block to the left.

All from memory, and I haven't used much unix keyboards before. Contrast with the "windows keyboard" picture posted not long ago... a small bar with only the CTL-ALT-DEL buttons. ;^)=

--Robert (rames@utdallas.edu)

Too bad (1)

Kaa (21510) | more than 14 years ago | (#1493763)

There is not logical notion that human kind has any implied fuzzy quasi-telepathic state wherin they gain "mystical" powers.

Nobody is saying anything about mystical powers. This is one of the so-called altered states of consciousness, specifically one in which you can achieve and maintain high concentration for a long period of time. It is often called 'flow'. The existence of such a state is widely recognized and documented. For example, being able to go into 'flow' is one of the characteristics of a world-class athlete in individual-competiton sports (martial arts, tennis, etc.)

Kaa

Not everyone lives in USA, not everyone is a coder (1)

ViGe (49356) | more than 14 years ago | (#1493764)

First of all I'd like to point out that our current keyboards are designed for people who really write a lot, typists. Not for coders. People who have to write lot's of text with their keyboard. They don't want to become one with the computer, they want to get the text written.

and there's a CAPSLOCK key that's just as big as the TAB key. Hello? What are these people thinking? That I want to hit CAPSLOCK as often as I do tab, and that I don't care about CONTROL or ESCAPE?

Yes. That's exactly what they are thinking. On my keyboard, which I like really much (many people would call it love, I have used it for 12 years now and I'm going to use it as long as it lasts) the Caps Lock key is a bit bigger than the TAB key. I probably do hit the tab key more often than the Caps Lock key, since it's used for all those file name completions etc., but e.g. my girlfriend, who's not a hacker, but still does work a lot with computers, she writes mostly all kind of documents etc., she uses the Caps Lock key much more often than the tab key. She can write a 10 pages long document and hit the tab key let's say 5 times, and hit the Caps Lock key for 40 times. (Remember, you should use Caps Lock if you're going to write more than 3 letters in capitals).
The other thing I'd like to point out is that not every lives in USA or has the kind of keyboard the author has:

If you ever need to hit a chord with more than two keys, such as CONTROL-ALT-SHIFT-F11, you're in serious, serious trouble.

No I'm not. On my keyboard the Control key is located on the bottom left (and on the bottom right as well) corner. The Alt key is right beside it. The shift key is right above the Control key. So I can press them simultaneusly with one hand. Even with one finger. Pressin F11 with the other hand should not be mission impossible for anyone.

Consider how much easier it is to type a `/' to start a search than it is to start a search instead of a ALT-S, or horrors, pulling down a menu

No it's not. On my keyboard, which is has those Finnish keys where the USA -style keyboard have ;: and - where the USA -style has / (if I remember correctly), pressing / is not just one key. I have to press shift-7. Much harder than pressing ALT and S, which are quite near each other. Of course I could press / in the numeric keypad, but that would require moving my right hand, therefore I prefer pressing shift-7.
Ok, enough rant for now.. Just wanted to remind that there are other kind of keyboards than yours, and that the keyboards are not designed for coders but for typists.
--

Study human factors before commenting please (3)

bluGill (862) | more than 14 years ago | (#1493765)

I spent some time studing human factors in college. Human factors in breifly design of interfaces to be useful. All GUIs should be built from human factors, but obviously few are.

This zen is a common misconception in human factors. Bruce Togniziky (the Guy Apple had doing most of their mac design) put expirenced uses in front of a comptuer, and had them select text with the keyboard, and then do the same thing again with the mouse. The users reported the keyboard was faster, but his stop watch reported the mouse was faster! (This was for a very specific example, and he admits it doesn't generalise. This however changed my thinking, I no longer hate the mouse, I use it when it is faster, and keyboard when that is faster)

We know how long it takes someone to move to the mouse make a selection and move back. We also know how long it takes someone to type a few keys to invoke a command. We know how to design user interfaces so they are useful. Few people apply this.

Human factors is NOT about getting rid of the keyboard or all those shortcuts. That is a misconception, human factors requires shortcuts! Human factors doesn't require zoning on the interface because the user zoned into typing is wasting time when moving to the mouse (which brakes concentration unless you do it all the time) is faster.

If you want to write comments like this, PLEASE PLEASE PLEASE read Donald Norman's Design of Everyday Things. This is a wonderful easy to read book that defines the field of human factors and could change your way of thinking.

Re:This is no longer the case with me. (1)

yAm (15181) | more than 14 years ago | (#1493766)

Now, I don't use the old XT keyboard or vi enough to warrant finding one, I have to agree with the idea of using the old keyboards. I have a brand spankin' new workstation at work with a keyboard off of a 8 year old Northgate (remember those?). The Omnikey. Weighs about 5 pounds and can take a direct hit from a 20mm shell...

Clicks like hell and has the tactile feedback that I really like, plus with all the noise, it drives my co-workers nuts!

I hate new keyboards. Feel like I'm typing on overcooked pasta. Feh.

Re:Some Thoughts... (1)

Rhys (96510) | more than 14 years ago | (#1493767)

I'd actually found a particularly good way to get the zoned feeling was good old X-Wing by Lucasarts. Get in an A-wing, turn off the guns, turn off the shields, and attempt to fly through the course (can be simulated with a defender in TIE as well).

Note however, crashing tends to drag you out of the zone, so make sure to avoid it. ;)

Re:... (1)

sien (35268) | more than 14 years ago | (#1493768)

This is exactly what I was thinking when I read ( or skim-read, it's way too long, does this guy want to be Jon Katz or something ? ).

I work in a VR Haptics company, and it would be great to come up with something as good as the interface of a keyboard and mouse for Quake. Interestingly, this seems to be close to using a chord board and a mouse, which is what a lot of animators and designers use. Somehow we have to get back to just needing two hands, instead of three.....

Disagree (some) about Arrow Keys (1)

Ramses0 (63476) | more than 14 years ago | (#1493769)

I have to disagree somewhat regarding the removal of arrow keys from the "modern keyboard"

The arrow keys give a wonderful point of control when the user is unsure of the machine's current context. A good example is switching desktops under windowmaker ... CTL-ALT-Left, CTL-ALT-Right ... not a "nice" combination by any stretch, but it always works, and doesn't depend on what software is running at the moment.

Simply because those keys (along with escape, page up, etc.) don't have any other possible meanings, it makes them useful for those context free moments.

Keyboard-specific apps (2)

EisPick (29965) | more than 14 years ago | (#1493770)

I've long held that AT-style keyboards killed WordPerfect.

Good ol' WP 4.2 for DOS was easy to use once you trained your brain to feel the necessary key combinations. When asked what the keystroke for Print, or Search & Replace or Reveal Codes were, I typically didn't know the names of the keys, but I knew their feel with my left hand.

I say my left hand, because my old XT-style keyboard arrayed its function keys on the far left of the keyboard.

Cursor keys were easy to navigate without looking, because the only cursor keys available were on the un-NumLocked numeric keypad, where they are much more usefully arranged than in today's dedicated cursor keypad area. My right index finder still does the HomeHomeLeft dance in its sleep.

Then new & improved keyboards arrived with function keys arrayed across the top, so that for most WP commands, two hands and a glance down were now required. Being able to keep NumLock on and have separate keypads for cursors and numbers was a nice enhancement, but why completely rearrange the relationship between the cursor keys and Home, End, etc? Good luck executing a HomeHomeLeft without looking down.

As the new keyboards arrived (with top fuction keys, new cursor keypad, and migrated Ctrl key), two things happened to WP for DOS users.

  • First, the learning curve retrain our brains to feel the new locations of WP functions was nearly as great as the learning curve for a while new app.
  • Second, once new locations were learned, the ability to type without glancing down was seriously compromised.

Given these constraints, is it surprising that many chose to learn a new app -- MSWord -- rather than relearn the old app? I think not.

Even now, if it weren't for e-mail and browsers, I'd be happy with my only computer being a Compaq 386LTE laptop w/ 1 MB of RAM, 20 MB disk space, DOS 3.3 and WP 4.2. I'd get a lot more work done more efficiently, which is supposed to be the whole point of computer enhancements, isn't it?

VI advocacy, bah. (1)

YellowBook (58311) | more than 14 years ago | (#1493771)

Most of this doesn't have anything to do with keyboards at all, but is just vi (vs. Emacs) advocacy. Bah. When I edit a file, I want an editor. Not a viitor, not an emacsitor, but an editor. Ed is the standard text editor.

Enough of that. The point about penalty zones on keyboards is relevant though. It's worth noting that Emacs was designed in an era when keyboards were such that it didn't force you in and out of the penalty zones. ESC was normally where backtick (`) is on peecee keyboards. Ctrl was large and normally where Caps Lock is on peecee keyboards. Starting to get the picture?

Now take a look at the Happy Hacking keyboard. (Link is in article) ESC in backtick position? Check. Ctrl in capslock position? Check. The only problem I see with the Happy Hacking keyboard is that it doesn't have sufficient bucky bits. I need at least control, alt, meta, super, and hyper. I have long fingers and I'm a touch typist, so most cases of going into the penalty zone are no penalty for me. Function keys are the exception, but I rarely use function keys for anything.

Long-time emacs users have no trouble attaining the Zen of programming (or whatever -- I mostly write academic papers in Emacs with AUC-TeX mode) in Emacs. I find many of vi's features are optimal for quick edits to config files (home-row cursor movement, D, cw, etc), but it's line-oriented nature and aversion to filling and indenting makes it most pessimal for writing text or long stretches of code. As far as keyboard optimality and editors goes, it's probably much more important what your fingers get used to than what the actual keys used are.


--
The scalloped tatters of the King in Yellow must cover
Yhtill forever. (R. W. Chambers, the King in Yellow)

SysRQ? (1)

Medieval (41719) | more than 14 years ago | (#1493772)

Besides the useless vanity keys stealing invaluable real estate from the main keyboard, we are saddled with an ever-growing number of extra keys in the penalty zone, such as function keys, INSERT and its friends, arrow keys, and relics out of the shrouded mists of antiquity such as SysRQ and Scroll Lock.

Then how would we drop into 'safe mode' in Linux? :)

Kernel hackers will know what I'm talking about.

Having several 'modes' slows you down (2)

Ed Avis (5917) | more than 14 years ago | (#1493773)

So pressing a single key ('j', for example) in an editor is faster than a chorded combination like, oh, I don't know, CTRL-n? Not necessarily. How should you distinguish between 'j' to perform the special action, and 'j' to insert that letter?

If you introduce the concept of different modes, you need to switch between modes, and that has to require an extra keypress. In vi you must press ESC once before moving, and once after - that's three keystrokes instead of one. Those extra ESCs are a constant whether you move by one character or fifty, so it's arguable that for large movements the two-modes version is indeed better. But if you just want to move down a line, it's a lot more hassle.

It's an old story... (2)

Seth Scali (18018) | more than 14 years ago | (#1493774)

But whatever it that helps a person achieve Zen is soon changed. Tom's example is that of the keyboard on computers.

For another example, look at cars. I learned to drive with a Geo Metro. Part of the interface is sound-- the engine is screaming; shift gears. The engine is rumbling and sputtering; shift gears. The radio? That's way down by the ashtray, where I will only reach it when I make a conscious effort to do so.

Today I drove a Mercury Villager-- automatic, naturally. Now I have a penalty zone-- the time just before the transmission shifts up a notch. It pulls me out, it shakes me. Not only that, but when I look down at the steering wheel, I see buttons for tuning the radio! The old buttons (right behind where the stick should be!) are still there, but now I have radio buttons. It's idiot-proof.

For another example, look at the portable phone I bought the other day. There are 12 speed-dial buttons (memory buttons, the manual calls 'em). They are placed more prominently than the actual numeric pad! I know that a lot of people don't attain Zen when dialing phone numbers, but it's been known to happen on occasion. But anybody wishing to Zen out as he dials Fiji will now be stuck trying to avoid the memory keys.

It's history, folks. It's the natural progression of things. Something is good. Hackers "Zen out". Suits see that hackers are more productive, decide that good thing should be made available to all. Suits change good thing and destroy Zen. Hackers move on.

Such is life. We shall soon move on, I suppose. Zen will be found somewhere, and hackers will follow. It's our drug of choice, and junkies don't do too well without it.

excellent points that can be taken much farther (1)

s!mon (15429) | more than 14 years ago | (#1493775)

Okay, I figured this would be a couple paragraphs, but Tom keeps going on and on. But he does do a good job of pointing out yes PC keyboards do suck. I'm on a sun keyboard right now, and its much easier. Same with Mac keyboards, thats because there aren't 200 different vendors making the keyboards. But it is still important for there to be some quality control.

But I think Tom could have taken his article a bit farther. I do read up a lot on design, particularly human interaction with web design and such....and the stuff isn't obvious. Software has the same pitfalls as hardware. Creating an intuitive interface is very challenging. I expect in the coming years to see "interface experts" for software more common. Certainly they aren't needed as much as a software engineer, but there is more need for somebody with knowledge on creating an intuitive interface to help software engineers. Software engineers generally think in terms of function, not usability. There needs to be more thought in terms of usability and consistency to improve software quality.

okay, thats enough from me.


simon
"she gets what she wants and walks away.
and she doesn't give a fuck what you might say"

A few random points.. (2)

Awel (28821) | more than 14 years ago | (#1493776)

Keyboard preference is often a historical thing. I always use ` instead of ' for my apostrophes. This is because once upon a time I typed on an Amiga keyboard, which only had the one, which was in the position that ` is on PC keyboards. I also took quite a while to adjust to the repositioning of the capslock and ctrl keys too.

As to `the penalty zone`, I can actually see good ergonomic reasons for keeping it, mainly related to those people (the majority) who do not touch-type. By removing the less-commonly-used keys from the main array, it reduces confusion on the part of the hunt-n-pecker, who knows they don`t have to consider these keys as they search for the one they want. As for the arrow keys - well, it may be difficult for extended use, but you can`t say that the placement of the up key above the down key isn`t intuitive!

Please remember that most people these days can`t touch-type, and would be at a disadvantage on the sort of keyboard proposed here. And since the market depends on what `most people` want, it`s the non-touchtypers who have - and should have - most say in the design of our keyboards.

Shilling for PFU? (1)

Bander (2001) | more than 14 years ago | (#1493777)

Almost everything that Tom rants about in this article is taken care of by the folks at PFU America [pfuca.com] , makers of the Happy Hacker keyboard. Though he doesn't mention it or them by name, his article is like a manifesto for the HH kbd.

I hope I get one or two of the keyboards for the holidays, they look excellent.

I do not actually believe, nor do I endorse the supposition, that Tom is in the pay of the PFU people. I just think it's interesting that there is a company that seems to be on the same Zen wave that he is on.

Bander

Re:I really don't believe in this whole Zen concep (2)

dingbat_hp (98241) | more than 14 years ago | (#1493778)

There is not logical notion that human kind has any implied fuzzy quasi-telepathic state wherin they gain "mystical" powers.

There certainly is, although there's nothing "mystical" about it.

Some tasks are executed rarely, and are complex. Higher, conscious, parts of the mind are involved in performing them so it's a conscious mental effort. Other tasks (walking, running, playing soccer (for some of us)) OTOH, have become so ingrained that they really are almost automatic. A good interface gets far enough out of the way so that you can begin to learn this autonomic (?) response. Once you've acquired that (it takes both a good interface, and practice) then you'll see a vastly improved performance, even with far less effort.

I'm both an (occasional, and dismal) Zen practioner and a skier. I empathise completely with what Tom was talking about in that fine piece.

There's never a neurologist around when you need one...

Re:Quake = Zen (2)

Enoch Root (57473) | more than 14 years ago | (#1493779)

It's a sad fact when the Occident is determined to reduce Zen to a simple game of Quake. For the record, 'forgetting' your keys and going on automatic pilot mode is as Zen as driving your car. Ever notice how drivers just forget about the controls and just 'become' the car?

It's just a matter of repeating something often enough that you jumpwire your brain, and don't need to think about every command anymore. The same goes on in walking.

If that were Zen, then Zen would be another word for 'automatism'.

moria zen (0)

Anonymous Coward | more than 14 years ago | (#1493780)

This guy's right about Moria. As I began to read the article, the first thing that came to mind were my hours completely in tune with the game. Then he began to write about it. Everybody go out and put some good hours into a rogue variant, it'll be worth your time.

Re:About mouse usage with keyboard (1)

IHateEverybody (75727) | more than 14 years ago | (#1493781)


Just the other day I witnessed someone who used his mouse with his foot. He had both of his hands at the keyboard and (quite effectively) moved in the X-environment with his foot...

That just about proves it; Dilbert was right. Computing and evolution have conspired to make monkeys the superior race. In the future all the high paying jobs will be staffed by super-intelligent monkeys who can manipulate the mouse with their tails while keeping both hands on the keyboard. Humans will be kept in zoos, reduced to flinging feces at their monkey overlords.

Re:Screen, Keyboard and navigation tool. (1)

Glytch (4881) | more than 14 years ago | (#1493782)

>BTW, I still prefer the Wordstar keyclusters for
>editors...I recently amazed a co-worker on how
>fast I could get around and edit a text file
>with Joe in WS emulation mode. And he has >been using VI for a decade...

Yeah, joe's a great editor. I love it's small size and customizability. I tried both Emacs and vi, but found vi to be too counter-intuitive (I grew up on MS-DOS. Don't blame me.) and Emacs to be far too bloated. Other people are perfectly welcome to enjoy these two editors, but please don't ram either of them down my throat. Give me a small, fast, customizable and modeless editor like joe anyday.

Sorry, RMS, but I really don't want to have to learn Lisp just to customize my editor.

Zenning and the flow (1)

Kaa (21510) | more than 14 years ago | (#1493783)

For people interested in what TC calls "zenning" and what is usually called "the flow" check out the work of a guy with the improbable name of Csikszentmihalyi (search on Google) who is usually credited with first researching the concept. One place to start is www.flownetwork.com.

Kaa

Keyboards (1)

Captain Zion (33522) | more than 14 years ago | (#1493784)

The best keyboard I've ever used is the keyboard of the green terminal that comes with series 800 HP9000. The ESC key is in the place of Caps Lock in a PC keyboard, it's just great for vi(1). Very good mechanical action too, almost as good as a Sun keyboard.

My dream keyboard is a PFU-like compact keyboard with Sun action, HP layout and a Toshiba Accupoint device. Oh well, just a plain PFU would be far better than the keyboard I'm currently using, but they're kind of expensive. -- I wonder if cheaper Asian clones are available.

Re:Good points, but... (0)

Anonymous Coward | more than 14 years ago | (#1493785)

Get over the Caps Lock key... It has no practical useage. If you base its existance soley on AOL (which shouldn't exist), it has no place on my keyboard.

BRIEF!!!!! (0)

Anonymous Coward | more than 14 years ago | (#1493786)

Has everyone forgot the power of BRIEF! The Ultimate programmers editor! I don't care if I had to visit the "penatly zone" every time I wanted to cut, copy or paste, it's so damned fast compared to any other system that I don't think I could live without it. Page Up, Page Down, Home, End....these are my home keys. The happy hacking keyboard is an abomination. It lacks all these things in an easily accesible manor.

PC style control key must DIE (0)

Anonymous Coward | more than 14 years ago | (#1493787)

Tom is absolutely right about the control key. The Unix/Sun layout with the control key is much better suited to doing work (even though I probably use it for typing ctrl-C 95% of the time).

On a related note, my keyboard is a Northgate OmniKey Ultra that I found in a pile of surplus equipment last year. I highly recommend it if you are lucky enough to find one. 129 keys, 2 sets of F-keys, real clicking microswitches on every key, and of course control is in the right place :)
Best of all, it weighs about 10 pounds so it's hard to knock over or lose...
Load More Comments
Slashdot Login

Need an Account?

Forgot your password?

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>