Have Keyboard, Will Program

My beloved Microsoft Natural Keyboard 4000 has succumbed to the relentless pounding of my fingers.

This is a companion discussion topic for the original blog entry at: http://www.codinghorror.com/blog/2009/02/have-keyboard-will-program.html

I’ve been really happy with my Typematrix 2030 that I’ve been using for the last year or two. It’s small, quiet, and comfortable.

I thought I was the only one…

I have been using the Microsoft Natural keyboard since the very first 0one came out. I have had many over the years the 4000 is the best since the original.

My only complaint is the lack of a window key for the right hand. I am sure it’s just me but I loved being able lock my machine with one hand. As a workaround I programmed the close button(F6) to lock the machine when the F Lock is on.

I have another one:

Thou shall NOT change the function keys spacing:

Hate Microsoft all you want, one has to admit that they make decent peripherals. I’ve been using the same Microsoft Internet Keyboard Pro for the past seven or eight years, and it’s been nothing but rock solid. Great to type on, without being too clicky or too soft, has multimedia keys, and even an integrated USB hub. I don’t even think the same model is available anymore, but I’d definitely buy another MS keyboard when this one finally kicks the bucket.

As a lot of people have said, I use mostly vim key bindings, so those commandments don’t really matter to me, personally.

One thing that gets me every time is the Backslash / Pipe key. I don’t really have a strong opinion on whether it should be above a thin enter key, or down beside the right alt, or anywhere else, but I’d like it to be consistent. Fairly often when switching between computers I accidentally hit enter when I intend to put a pipe.
Oh, the commands I’ve sent through half baked! Forgive me!


I also actually like the mangling of the home/end/delete key layout on my work keyboard. It has the insert key removed from that group and placed above the keypad on the row with the Function keys instead.

For me, insert is one of those keys like caps lock that I almost exclusively only use accidentally. And it’s sticky just like caps lock as well. I really never want to be in insert mode when I’m in a text editor, so I like having it far away to prevent my accidentally typing it.

Another vote for the Kinesis-ergo advantage:


If you ever develop hand problems, then this is the way to go. The Microsoft Natural Keyboard 4000 (and similar designs) are also very good, but the key resistance is typically too high. In addition to an ergonomic layout, the Kineses keyboards have a much lighter keypress resistance, which is extremely important if you have hand problems due to typing.

In addition, the higher-end Kineses keyboards can be fully remapped. I’ve remapped mine to a Dvorak-inspired layout that’s to my particular liking.

The downside is the high price relative to other keyboards, but if you develop any hand problems, then there is no doubt which is the best keyboard.

I love my Apple Keyboard too.

I have nothing against a spring keyboard in principle - but when my officemate is typing fast I cannot do any subtle thinking, so that gets annoying at times.

The navigation keys are sancrosanct. So why did IBM, Microsoft and others screw them up?

The DEC VT-220 had the perfect layout, with Home and End side by side, and Delete beside Insert as the FSM intended. (Ramen!) Almost more importantly, the inverted tee of arrow keys should be immediately below the other navigation keys. Push the arrows down an extra row creates extra movement that leads to neck pain.

These changes caused me years of heartache when I moved from VAXen to PCs.

It was bad enough getting over the swapping of the Control and Caps Lock keys. And when did Shift Lock become Caps Lock anyway?

And where’s my Do key?

Now if only we could have a keyboard without a capslock key!


I have an Enermax Aurora Premium. All the keys are in the right place. It’s built with laptop keys so it’s quiet and very flat (less strain on the wrists). It has 2 USB ports and functions as an external sound-card (with mic and headphone jacks)

A bit expensive but hands down the best programming pad I ever had.

I love my Apple wireless keyboard.

I too have a Microsoft Natural Keyboard 4000. It is great keyboard but came with two initial flaws:

  • The space bar makes an awful FLAK sound when clicked from the RHS (sounds normal from the left but who the hell clicks space with their left hand?). Fix: Use it for a few days and you get used to it

  • GOD AWFUL F LOCK BUTTON that makes all the function keys do weird things if you press it accidentally. FIX: PULL THAT F#$%ER OUT. After the thousand time it did it, i yanked the button out and blu-tacked a appropriately cut piece of black plastic its place

Huge fan of MS 4000, also have a Comfort Curve 2000 for when I want a change in hand position every now and then, it deserves an honourable mention for those who don’t want to spend much and don’t like splits.

Quality can be a bit variable on the 4000, first one I bought had very sticky keys - B would only come back up about half the time, and nearly had to stand on the space bar. I returned it after a day and the replacement was brilliant. If you get one that doesn’t feel right, send it back, a good one feels perfect.

Tried the wireless natural that a friend had, but felt a little bit laggy, and I rarely sit that far away from the screen while working.

Admittedly, I haven’t used an Apple keyboard for a few years, but past experiences make me recoil in horror at the thought of using one, except perhaps as a pretty paperweight.

Been coding on a Happy Hacker Keyboard every day for the past 5 years. It’s required minimal maintenance and works as good today as the day I bought it.

Highly recommended if you like your Control key where it belongs.


I recently got an Mac Book Air. I got it for my partner because it is so light while being very robust. After getting it and taking the geeks tour, my opinion on Apple has changed. The quality is through the roof and it is simply the best laptop I have seen bar-none (I work in IT and see lots of laptops).

BUT - I used it a couple of times to develop (remote session to my work computer). Initially I was frustrated that I would have to use this little keyboard with half the keys only functioning by pressing the FN button (including delete - which acts as backspace withotu FN pressed). And let’s face it, the keyboard isn’t designed to work well with Windows let alone development. Right?

I couldn’t believe how wrong I was. I have found the Apple keyboard on the Mack Book Air Much easier to use for development than my full windows keyboard. Why? Less hand movement required.

For example: I can go from using arrow keys to home/end/page keys with a press of my little finger (on FN button), and then back again by letting go with my little finger.

After about an hour of developing I became really quick. The improvement wasn’t realised until I went back to my office and used my old keyboard. I noticed it was a lot slower because I have to keep shifting my hands so much just to get to home, end, arrow keys, etc.

And what about the apple mouse? It is by far the best touch pad I have used. I have the option of plugging in a mouse, but it would make more sence to swap my work mouse for an Apple trackpad than to plug a mouse into an Apple. It is sensitive yet forgiving, intuitive yet powerful and smoth yet allows easy movement.

If I were to get another system, I’d go Apple (an install Windows on it), because the engineering is at a level above the others, and the keyboard is a dream to use.

My trust Model M turned 15 years old three weeks ago and is still going strong. My wife insists I clean it at least once every 3-4 years, but is otherwise essentially zero maintenance.

Sitting beside it is an ALR keyboard, a few years older, which is also still working perfectly. Thanks to the wonders of KVM switches, not to mention remote desktop, I get to use my favourite keyboards on all my PCs, instead of having to pick choose.

One thing nobody has mentioned yet is the solid feel of these old keyboards, usually achieved by including a solid metal plate. This means the keyboard stays put, even when my typing reaches frenzy level (http://www.unoriginal.co.uk/finger-frenzy.html - 2.4 seconds)

Keytronic Lifetime Classic II

Wonderful feel to the keys, standard location for all keys, large enter and backspace key.

Guaranteed for life – used to be you could cut off the end of the connector and send it to them and they would send you a new one.

Still the best keyboard I’ve ever bought.

Though honestly, the Saitek Eclipse II was pretty damn good too.