Keyboarding

February 10, 2005

Like Scott Hanselman, I view the mouse as an optional computer accessory*. Manly coders love the smell of compilation in the morning and we know that speed = keyboard. A mouse? C'mon. That's so teenage girls can pick emoticons in AOL Instant Messenger. And for flash "developers". Us tough guy software developers know that if it doesn't have a keyboard shortcut, it's not worth doing.

I <3 you too

All kidding aside, there's a disappointing lack of keyboard choice for software developers. Here's a typical example:

mangled keyboard layout

We make heavy use of the PgUp, PgDn, Home, End, Ins, Del key cluster, and that's the one area of the keyboard that is almost always mangled beyond recognition on today's "cool" keyboards. And what marketing weasel decided it was a good idea to default map the F1-F12 keys to hip new internet functions? I cry for a world where F5 is "open email" instead of refresh/run. On some keyboards, the mangling is so profound that the arrow keys are no longer arranged in an inverted T. Sacrilege!

I'm actually doubly-screwed, because I prefer ergonomic "split" designs. Once I narrow down the list of choices to ergonomic keyboards that also have standard arrow and PgUp/PgDn layouts, I have a whopping total of maybe two keyboards to choose from. And they're both ugly taiwanese knockoffs.

Here are a few keyboards I've considered, and rejected:

Some people swear by certain "classic" soviet-era 10-pound keyboards, but for now, I'm sticking with my discontinued Microsoft Natural Keyboard Protm. No mangling, ergonomic split design, and even two built in USB ports. Which reminds me: why has USB hub functionality fallen so far out of favor on today's keyboards? It's incredibly handy for memory sticks or quickly hooking up a camera to download a quick photo or two.

I'm curious what everyone else's feelings are on this topic:

  • What keyboard areas are "sacred" to you, as a developer?
  • How important are the extra multimedia functions such as sleep, calculator, scrollwheel, volume control, etc? Do you use this stuff frequently? Rarely? Never?
  • Does it really matter if your keyboard is wireless?
  • Does an ergonomic layout help?
  • What keyboard(s) do you recommend, and why?

* Not a complete exaggeration. For example, when setting up the MAME Cocktail system, I had no mouse for a solid week, and I was surprised how little difference there is between keyboard (assuming you know all the magic hotkeys, like SHIFT+F10, and how to tab through to the desktop) and mouse usage in Windows XP. What is aggravating is running into non-Microsoft designed dialogs that have screwed up tab order, or worse yet, areas that are physically impossible to navigate to without the mouse.

Posted by Jeff Atwood
125 Comments

Hi, sir iam keyboard and

ankush on December 11, 2008 7:11 AM

iskam dago imam as ama 6te staneli vednaga
a

radoslav on December 12, 2008 3:58 AM

i dont realy care as long as i can type

sgd on December 15, 2008 1:08 AM

If You think about it theres more uses for a keyboard, I used a keyboard to control a microvave oven then I burnt myself:(

TomShloop on December 17, 2008 5:20 AM

im gonna spam you all

sgd on December 17, 2008 5:21 AM

jk

sgd on December 17, 2008 5:22 AM

* What keyboard areas are sacred to you, as a developer?
3x2 cluster + inverted T arrows : I use all of them extensively.
For exemple, one combinaison I do often is : home, shift + (down, del, ins, ins) : duplicates the current line.
Function keys are important too but less crucial.

* How important are the extra multimedia functions such as sleep, calculator, scrollwheel, volume control, etc? Do you use this stuff frequently? Rarely? Never?
Multimedia keys : never
Volume control : I would probably use it if I had it.
Scrollwheel : On the mouse, i use it very frequently. On a keyboard, probably much less. The only use I consider is scrolling through a document without moving the cursor.

* Does it really matter if your keyboard is wireless?
As a developer : no. But useful when the PC is used as a media center.

* Does an ergonomic layout help?
Not really.

* What keyboard(s) do you recommend, and why?
Standard layout, the rest is all about feeling. Try them if you can. I am personnaly quite happy with my keytronic kt2001.

GuB on December 22, 2008 7:41 AM

I have the Deck you show up top at home, and it's ALMOST perfect. Buckling springs, illuminated keyboard (great for answering oncall pages at night) and compact size. The biggest problem with it is the location of the backtick/tilde key next to the space bar. I'm a unix user and I hit tilde and backtick all the time. The other keys? I'm a unix user-- I don't care about function keys, arrow keys, the insert/pageup/down block, etc.

The Deck Legend may just be the way to go, but it's $150. Until I find that affordable, I'll stick with my old HP C4732.

Justin Dossey on February 3, 2009 3:08 AM

for some detailed analysis, see:

Review Of Microsoft Natural Multimedia Keyboard
http://xahlee.org/emacs/ms_keyboard/ms_natural_keyboard.html

A Review of The Microsoft Natural Ergonomic Keyboard 4000
http://xahlee.org/emacs/ms_keyboard/ms_natural_keyboard_4000.html

and

Computer Keyboards Gallery
http://xahlee.org/emacs/keyboards.html

Xah on February 4, 2009 1:58 AM

* What keyboard areas are sacred to you, as a developer?

1. must be split ergo. In fact, personally these days, it must be from Microsoft.
2. must have Ctrl and Alt on both sides.
3. the Ctrl/Alt on both sides must be symmetric distanced to the F and J keys.

How important are the extra multimedia functions such as sleep, calculator, scrollwheel, volume control, etc? Do you use this stuff frequently? Rarely? Never?

very important. These keys are reprogramable, and fast for launching or switching a app.

#8226; Does it really matter if your keyboard is wireless?

No.

#8226; Does an ergonomic layout help?

Yes. Now i must have it.

#8226; What keyboard(s) do you recommend, and why?

Microsoft. Have been their fan since about 2004. (used computer 8 hours a day since 1991)

Your Microsoft Natural Multimedia keyboard pictured is in fact my fav keyboard out of my 19 years of computing experience. Tie with Microsoft's 4000. See reviews here: http://xahlee.org/emacs/ms_keyboard/ms_natural_keyboard.html

Xah on February 4, 2009 2:08 AM

blahhh!

boo on February 15, 2009 5:41 AM

I have developed a system for speeding up computing that is very intuitive and easy to learn. I am now developing a keyboard to reflect the coding system. My videos on he ComputeFast web site show a speed up of about 250 to 450% over standard computing. I am looking for people to help me to further refine and develop the system.
Marty Korn
mlkorn@gmail.com

Marty Korn on March 19, 2009 7:33 AM

I hate it when the Ctrl key is f$!*ked with. I hate IBM thinkpad which has a great deal of this mess up. Fn key is the first key on the bottom left hand side. To the right of Fn key is the Ctrl key. There are programs to remap it. But none of them work well.

Praveen on April 1, 2009 12:27 PM

Phew, I'm not the only one !

I'm coming up to 43 so the old style 102 key keyboard is what I know and love, especially the IBMs. I can cope with the windows key, although I have never deliberatly pushed the 'menu' one on newer keyboards.

For me, my pet peeves are;

1. Give me a horizontal 2x3 navigation block above the inverted T arrow keys. I HATE THE DOUBLE SIZE DELETE KEY... Shift+Insert for Copy, Shift+Delete for Cut and Control+Insert for Paste are way easier for me to remember than the P, X and C ones (I don't know why, but maybe it's because I type with only one or two fingers from both hands - still get close to 50wpm though !)

2. I don't exactly object to the split keyboards, although I haven't used one much, but the curve style does my head (and fingers) in because the letter keys are different sizes.

3. The multi-media keys etc are pretty useless to me mostly although I don't exactly object to them... my main gripe is that adding them either cramps the rest of the keyboard or turns the keyboard into a desk yacht. I tend to use the windows toolbar to store my common applications and to know the common function keys to tweak what needs tweaking.

4. I kinda prefer wireless because my desk is always covered in crap (the standard chronological filing system... roughly an inch to a month). It really reflects more on the mouse than the keyboard however.

5. I do not like slide out keyboard trays... they are often flimsy and make the keyboard feel like jelly, they force me to sit too far away from my desk and they give me way too many dead legs when I slide too close.

6. I like having the numeric keypad... it is useful for entering numbers or doing quick sums in the calculator.

7. I drink diet soda only... it does not make my keyboard sticky (and I suspect is less likely to fry the keyboard either) when there is a spill.

8. I like having the num lock and caps lock lights on the keyboard. I can see people wanting an Overwrite mode light on the insert key, although I don't have that problem.

9. I like the keyboard to have adjustable feet so there is a nice slope. I don't much care about a gel wrist rest and indeed dislike having a big wrist rest... I just want the front of the keyboard to be relatively low and to rise towards the back smoothly.

10. Frankly, like anything that relies on muscle memory, I just wish people would stop messing with stuff that simply works. Sadly, the really conventional keyboards are dirt cheap but feel like typing on spam, while the better made keyboards seem to invariably have all sorts of bells and whistles and unnecessary changes.

Siggy on April 5, 2009 2:40 AM

I use an IBM model 'M', made in 1984. (It is 8 years older than I am!) It is about 10% bigger than modern keyboards tend to be, with large, deep keys. When I type, it leaves a continual metallic musical ringing in the air from the spring-action, clickey-style keys. It weighs a ton, and I love the thing. However, it requires an adapter to connect it with my computer, and two with some of the newer computers. It has every key where the key should go, no fancy 'internet' buttons. I find most keyboards now to be too small for me, as I tend to mash the keys when I type. It was evidently built to last... man, they don't make things like they use to!
http://promotionzone.ru

Kaledoskop on May 14, 2009 1:46 PM

You don't like the feel of laptop keyboards? I actually find them the easiest to work with:

They don't stick, since they are only plastic squares on stilts.

They aren't as tall as desktop keyboards, so you don't have to curl your fingers that much.

But I do agree on the USB idea.

Adam on July 11, 2009 7:47 AM

"What keyboard areas are "sacred" to you, as a developer?"

My Visual Studio keyboard mappings (esp. function keys)!!! And the PgUp, PgDn cluster, as you highlighted (I used a Dell USB keyboard with the new 'trendy' 2x3 rather than 3x2 cluster - it lasted ~ 30 seconds).

Muscle memory is *very* important when you have a strong link to a particular environment. When I telnet onto our VAXs, I use a VT-330 keyboard layout, even though they use PgUp, PgDn cluster completely differently to PCs. When I'm using the VMS Eve editor, my muscle memory is strong enough to remember that the 'Insert' key is the 'Select' function, 'NumLock'-'PgUp' is 'Copy' etc...even though I've not used VMS on a day-to-day basis for 7 or 8 years.

"How important are the extra multimedia functions such as sleep, calculator, scrollwheel, volume control, etc? Do you use this stuff frequently? Rarely? Never?"

I have toolbars for stuff like that. I use them occasionally for things like the web browser if they're available.

"Does it really matter if your keyboard is wireless?"

I've never used wireless input devices and I think I'd prefer not to. My keystrokes are too important to lose in the ether :-)

"Does an ergonomic layout help?"

Not IMO. I've only ever used standard keyboard layouts on a day-to-day basis, and others don't seem quite right.

"What keyboard(s) do you recommend, and why?"

The best feeling keyboard I've used was an old Digital one, attached to a VAXStation 4200, IIRC. Having said that, I use a Logitech one at home and a Dell one at work, and am quite happy with both. I'm even quite getting to like my Dell laptops keyboard.

Stuart Dootson on February 6, 2010 9:30 PM

I use an older, flat, split keyboard at home and a new MS keyboard at work. The non-split keyboard takes a little time to get used to but that new delete/end/home key arrangement is a crime. I don't have to look at that area normally, or at least I didn't used to have to. Now I have to look before I home/end anything at work but I usually start getting used to it by the end of the day which just wrecks me when I use any other (normal, correct, IMO) keyboard.
Some things should progress and evolve but I don't think the home/end/delete arrangement needed any corrections. The obvious choice I'm being coerced into is buying a new "improved" keyboard for home (something I do not need at all) or to wait and hope eventually they will stop this travesty.

Shannon J Hager on February 6, 2010 9:30 PM

Jeff - what do you think of the Microsoft Wireless Bluetooth keyboard/mouse combo?

http://www.microsoft.com/presspass/images/press/2002/10-15OpticalMousekb-lg.jpg

only points I'd deduct is it not being ergo.

Jason Mauss on February 6, 2010 9:30 PM

The granite SGI keyboard is the best, if your a vi user because the escape key is WAY out there and its big. I like to hit ENTER really hard sometimes on the command like as sort of an audible punctuation. And the huge ENTER keys is exactly what the doctor ordered.

sogon on February 6, 2010 9:30 PM

Hi

Thanks everyone for mentioning my F Lock page as a way to get around the pesky F Lock functionality.

Just wanted to let you know that I've updated the page so that there is now a method to work around this issue when you are using a USB keyboard (the old method used the scan code mapper, which works on PS2 ports only).

Information is available at the above mentioned website link, or the new link, which is http://jtsang.mvps.org/flock.html

Enjoy

Jason Tsang on February 6, 2010 9:30 PM

Zernk: http://cvtinc.com/products/keyboards/stellar.htm

Karson on February 6, 2010 9:30 PM

I HATE keyboards with the vertical 2x3 arrangement of the ins-del-home-end-pgup-pgdown keys. Or the ones that have "power", "sleep", "wake" keys (on one keyboard I had, I removed those key caps just to keep from accidentally pressing them)
I also HATE "ergonomic" keyboards which are split in the middle. And wireless keyboards.
I dont care one way or the other if the keyboard has extra multimedia keys (home, email, volume, play, web, calculator etc).

My current keyboard is a Belkin USB and its very good.

My dream keyboard would either be an Optimus Maximus (if only I had the money to drop on a keyboard that expensive) or one that has the following:
1.The same key layout and position as on the PC keyboard when it was last modified by IBM but with windows keys in the usual spot. (i.e. none of this "ergo" or "lets add extra keys" or "lets move keys around to make the keyboard smaller and save money" junk.
2.Good key feel. (something where you can clearly hear the keys being pressed, none of this "quiet keyboard" stuff)
3.High resistance to dust, dirt, crumbs, hair and other gunk.
and 4.Paint that wont rub off (my current keyboard already has lost some of the paint on the E,A,S,D,X,C,V,N and M keys plus others)

Jonathan Wilson on February 6, 2010 9:30 PM


I'm having a apple keyboard-related, specifically. Everything was working OK, but since recently, pressing certain keys (F, S, P, "{", and others) displays wrong characters, and even whole strings of characters I don't even recognize. This is happening more and more often. Is there anything I can do about this?

Alina on November 3, 2010 9:22 PM

INS, Home, End, Del key need to be in the correct spot. I don't use Page up and Page Down much.

Never use the multimedia keyboard "features." They just cause problems for me. The F1-F12 keys need to be properly spaced. And the arrow keys need to be the correct distance away from the alphabet keys. The control, alt, and windows keys need to be in the correct spots on both sides of the keyboard. And an absolute must is the backspace must be normal size. Enormous enter buttons with a tiny backspace at the top right are ridiculous.

E. T. LaRue on March 10, 2011 8:08 PM

«Back

The comments to this entry are closed.