Keyboard Layouts for the 21st Century? 1044
jules asks: "Trying to do some programming on an iBook the other day brought to my attention the fact that despite the constant improvements to the design of computer hardware and software, the keyboards we use are still a throwback to the early 1980s. I mean - my Mac doesn't have room for page up/down or home/end keys, but it devotes a whole key to a sort of double-S shape that I will never press. And my PC keyboards all waste plastic on a backwards-apostrophe key and a scroll-lock (+ LED!), while functions that you use all the time, such as switching between windows, cut/copy/paste, back/forwards, undo/redo etc, all have to double-up with other keys.. Have any organizations actually tried to re-invent the keyboard recently? (..not counting the manufacturers who stick a few 'multimedia' keys along the top for consumer PCs). Would this be doomed to failure because of the tens of thousands of legacy apps that expect things to be the way they are? What sort of keys would you include in your fantasy keyboard layout?" It's not just the keys on your keyboard that are important, it's also how you arrange them. What kind of keyboard arrangements might we see in the future?
New Microsoft Keyboards (Score:2, Insightful)
We don't need new keyboards... we need a Win32 vi! (Score:2, Insightful)
I mean come on! Changing the keyboards now would be like changing all the highways in america from the width they are now to half as wide to accomidate smaller, faster (albeit narrower) cars!
But in all seriousness, everything I need to do in programming and even quite a lot of word processing (I was using vi for corporate memos until about 1999 when I was forced to use a Word compatible program) I can do without my fingers leaving their home positions on the keyboards. We don't need better keyboards -- or better mice for that matter. What we really need are better applications that either dynamically adapt to the condition at the time, or take better advantage of the hardware that we've got.
TeX (Score:5, Insightful)
But how will we use TeX without it??!
---
As far as things go, I'm sure the average user has more use for a multimedia-specifc keys or internet-specific keys (quick access to their CD/MP3 player, or Internet Explorer) than do programmers.
When is the last time you saw your mother, et al, use the curley bracket "{". What about the pipe "|". Or the carat "^".
I know I could not live without them, but most people could easily give them up.
Have any of you programmers actually used Dvorak or Maltron keyboards. I have. I can still type on either one, but programming on one sucks! The curly bracket is one of my most used keys and it's totally not in the right place for *me*. Anything optimized for writing english text is going to be horrible for any other symbol system.
Maybe we will get custom keyboards for different sections of the population before too long.
Seperate keys? (Score:4, Insightful)
Re:really (Score:2, Insightful)
Re:Sys Req (Score:1, Insightful)
Key Changes Across OS (Score:3, Insightful)
However, this gave me an idea. Some of us need a tilde key, some of us don't. Some of us need scroll lock, some of us don't. So why not just use the same keys that are already set up in a near-perfect fashion for other things? Personally, I've never had any use for the Numpad (it's faster for me to use the numbers above the letters), so I have Internet Explorer, AIM, Winamp, etc. set as Windows hotkeys on Numpad 1, 2, 3, etc. But what about Scroll Lock? Do Linux, Windows, or any specific programs for them let you set something permanently on or off by having Scroll Lock set on or off? And what about setting keys like the tilde key to other things within the OS besides hotkeys, such as resetting it to Ctrl + C for Copy, Ctrl + V for Paste, or setting it to whatever combination of keys Undo or other specific commands is set to in programs like Photoshop? I haven't used Windows XP or Linux yet, so I'm not really sure if either of them has this capability built-in.
Re:The keyboard itself is obsolete (Score:2, Insightful)
Think about it, if you want to enter text what's the next logical step? Gesture based systems? Not really, it won't let you easily enter mass amounts of random text.
Voice rec? Even if it were perfect, it would require massive changes to places like where I work. As any any cubical farm other voices are distracting from what I'm doing.
Besides the fact that Voice Rec would really suck for entering code.
The keyboard is the most accurate, quickest device that we have for entering text into a computer. Until something comes along that is better, we will continue to use it.
Story troll? (Score:3, Insightful)
This reads like a troll. For instance:
If you're using a Mac without using the command key, you're really not using the Mac. Unless you're running PPC Linux?
Ok, you're apparently not running Linux, or you're a Unix programmer who doesn't know how to use backquotes for command substitution in shell programming. Using familiar keys, try entering "man sh ".
Yup, they double up with other keys - through the use of that command metakey you've never hit. If you have a way around this that doesn't involve doubling the size of the keyboard, please share. Try this, just for me - press the little funky "double-S" key (the technical term, btw, is "whee whee propeller!") and hold it, then press shift and hold it, then press the key with a slash and a question mark on it (phew!). Now read all about keyboard shortcuts.
There are umpteen things wrong with modern keyboards, though - you just mention none of them. In all seriousness, have you considered the possibility that you're just an idiot?
This topic is based on self-centered assumptions (Score:5, Insightful)
It seems the whole post and the idea of redesigning a keyboard (at least in this context) means, "redesigning the keyboard the way I need it to work for me."
Maybe this hits me more than others because I'm a writer first, and a programmer second (I'm only programming while I need to, to develop the software for my company so I can make enough money to get back to writing full time). However, I find a bothersome trend with many developers to assume that "what I need is what we all need."
I don't know how it works on a Mac, but I would think under OSX, if one does not like the way a keyboard is mapped, one can simply change the key map.
I know for me, as a writer, the keyboard works fine, and I'd rather not see it changed (much), because I'd rather not have to learn a new layout.
But for me to assume that since the current keyboard works well for me, so it should not be changed, would be as absurd as the original topic, which assumes that most people need keys to switch between windows more than they need other keys.
(Yes -- I know. I'll be modded to troll immediately because I dared to say the slightest negative thing about a programmer or developer!)
Re:Multilingual keyboards. (Score:2, Insightful)
Re: Separate keys (Score:5, Insightful)
While I agree with your basic premise, the particular example you use causes me to vomit. That is one thing wrong with Windows, and PC keyboards - they're short one meta key. Just having Alt means the control key has to be overloaded for, well, control functions. You'd think that would make sense, but since control characters were enshrined in ASCII they lost their "meta" status, and lot of people need to type them into terminal windows (while also requiring quick key, non-strain-inducing shortcuts for copy and paste). That overloading of the control key is one of my pet peeves about Windows. Half of my use of the Mac is as a terminal to Unix command lines, whether local or remote.
Please consider joining SPOB, the Society for the Preservation Of Buckybits.
Moving beyond ASCII (Score:3, Insightful)
But, if we're going to stick to a solid mechanical design:
First of all, I would set an emphasis away from lazy ASCII-ism. I want to be able to type En and Em Dashes, as well has hyphens and minuses--not this silly "hyphen-minus". I could have this right now by killing macron, tilde, acute, and fixing the hyphen-minus as a hyphen. I'd kill backslash too.
Meta keys are nice, but need to be redesigned. All "edit" functions should fall under an "edit" meta, instead of "control". "Shift" has always bothered me for some reason, but I can't suggest a change in behavior beyond what I describe below.
Capslock is obviously the first against the wall when the revolution comes. I like CTRL in that position, a lot. I'd put my magical "Edit" meta right there.
Let's rename "Alt" to "System". Function keys are poo-like. I suggest we have the whole keyboard available for "Function", with the number row providing "F1-F12". Now, we can hold "System" and "Edit" and have "System Edit" keys. Isn't that neat!
Of course, all this could get confusing. So, my Keyboard Of The Future(TM) will have little displays on all the keys, showing their current function in BIG letters. No silly upper-lower-inthegroove-inblue print on the keys. Hold "Edit", and the Edit functions will be displayed instead of the typographical functions.
I'd like to note that Apple has taken some of these steps. You can get Em and En dashes with some keyboard combos with the hyphen key. It helps ever so much that MacOS X is totally Unicode. Juxtaposed with x86, Apple is a little bit more consistent with their Option/Apple/Control mechanism, but they still get things confused.
Really, I think my Dream Keyboard(TM) would be based on the FingerWorks keyboard, only combined with a display. Remember that magnetic paper slashdot covered endlessly? Seems like a perfect application right here.
Re:Maybe in the US... (Score:4, Insightful)
Re:Moving beyond ASCII (Score:3, Insightful)
The future keyboard should be dynamic (Score:2, Insightful)
What if you don't use a mouse at all? (Score:2, Insightful)
In windows it is supposed to be the equivalent of pressing the right mouse button. Why have a key for that? What a stupid concept... you already have your hand on the mouse so use it.
What about those who because of a physical disability cannot use a mouse or trackball and instead navigate Windows with a keyboard? What about those whose pointing device has only one button? (No redundant Mac jokes please; some early Windows laptops were like this.)
Re:This first post brought to you buy (Score:1, Insightful)
Re:"Backwards Apostrophe"? (Score:3, Insightful)
Of course these days there is not much call for a scroll lock key. If you have reams of output there are much better ways of presenting it in a windows based GUI system. The only use for a scroll lock key is when you are using a console mode program, or rather would be if the #$(#$* thing worked.
Same thing with PrtSc, which does absolutely bugger all on my machines.
OK you can remap the keys to do something else, but it would be nice to have some more useful functions:
Disable Javascript It would be really nice to be able to toggle javascript on and off so that you could browse sites with horrible popup excrecessences or other J-script abuses with javascript turned off and only turn it on when you wanted it
Boss key bring up excell spreadsheet etc.
This would cause INSANITY. (Score:3, Insightful)
I do agree with you that internationalization would benefit tremendously from such a keyboard -- but chances are, if you are an X language speaker, you'll be in an X language speaking area with appropriately fitted computers. Very few international cybercafes as far as I'm aware.
User interface hardware needs to be designed such that it is the same today as it was the day before. Users have a hard enough time with crappy software constantly shifting beneath their feet.
I use backwards apostrophe all the time! (Score:4, Insightful)
What are you? Some kind of clueless newbie?
I use the "backwards apostrophe" all the time. For example, I want to edit my "startx" script. I type:
$ vi `which startx`
and it brings it up in my favorite editor. I suggest the poster should learn the benefits of the backwards apostrophe before dissing it.
I haven't used a sun keyboard in years... (Score:3, Insightful)
And I can't imagine using emacs with the control key so far from the home finger positions. If I had live with control down there, I might even convert to vi.
Re:Voice commands (Score:4, Insightful)
Logistical and programming issues aside, speech uses a different portion of the brain than typing. When you're typing, you aren't using all your mental capacities, so you have time/ability to think of other things as you do your work, instead of devoting all of it to speaking. Also, you can't speak discreetly... If I were, say, browsing porn I couldn't just sit there at work and say "Web google.com. quote free lesbian redhead porn endquote search". I can type it without anyone hearing it though.
Not to mention that I can type much faster than I can speak.
One handed typist : Not joking (Score:2, Insightful)
The totally disgusting keyboard that I'm using now indicates that I hit every key except the function keys, backquote/tilde, scroll lock and pause, often enough to keep them legible.
As to extra functionality, my mouse has five buttons, one is copy, the other is paste.
Re:I'm glad everyone knows how to use their ` key (Score:3, Insightful)
If you don't know the ins and outs of the keyboard you're using, who are you to criticise either the layout or the characters included?
"It would make more sense to have special programmer's keypads,"
Oh yeah, right. Thanks for the discrimination, but no thanks. I expect a keyboard to be able to generate everything in the ASCII charset with minimal fuss, I don't need some marketroid hippie like you to come along and tell me *I*'m the weirdo.