Keyboards are not a detail!

I’ve been thinking a lot about keyboards lately. Last Sunday I founded the Tactile Keyboards community on Google+ and watched it explode in popularity almost immediately. Spent most of the next couple of days boning up on keyboard lore so I could write a proper FAQ for the group.

On my journey of discovery I learned of geekhack.org, a site for people whose obsession with keyboard customization and modding makes my keen interest in these devices seem like the palest indifference by comparison. Created an account and announced myself in the manner they deem proper for new members. Got a reply saying, more or less, that it’s nice “ESR” attends to details like keyboards.

What? What? What? Your keyboard is not a detail, dammit!

For anybody who does programming or writing on a computer, your keyboard is your most important tangible tool. It’s the one part of your machine that you touch constantly, the most physical interface you have with the computer. Tiny details about it can have a measurable impact on your productivity. A bad one won’t just slow you down, it will hurt you – causing or aggravating RSI (repetitive strain injuries) in the hands and arms.

Given the amount of passion and pickiness hackers pour into their choices of software tools, it’s downright weird that more of us don’t pay better attention to choosing a decent keyboard. Yeah, we all grumble that the Caps-Lock is an anachronistic waste of space but for many of us that’s as far as it goes. We freaking damage ourselves using the shoddy, cheap-shit keyboards attached to most machines nowadays, too often get painful RSI as we age, and never make the connection.

OK, so here’s a pop quiz for you: what is the one, single, only kind of computing equipment that is still sought after for production use thirty years after it was made – sometimes commanding higher prices today even in inflation-adjusted dollars than it did when it was new?

If you guessed “keyboards”, you got it right. Everything else about computing has improved by dizzying orders of magnitude since the 1980s, but modern keyboards suck. Enough people already get this to create a vigorous auction and resale market in vintage keyboards. I’m here to insist that if programmers in general woke up about keyboard ergonomics that market would be much, much larger – and the few companies still making keyboards that aren’t shit wouldn’t be struggling to sell enough volume to support new-product engineering.

How we ended up in this mess is a tragedy. But before I get into that, here’s the main thing that makes a good keyboard: tactile feedback at the engagement point of the keyswitch, so you don’t have to bottom out the key and have the reaction force reflected up into your fingers and hands. Millions of those reflections over the years inflict a lot of unnecessary fatigue and are one of the ways programmers get RSI.

There are other ways that matter, too. The arms-parallel position you have to assume to touch-type on a rectangular keyboard is bad for you. So is holding your wrists so your palms are exactly horizontal. More people get this than understand about tactile keyswitches, which is why the Microsoft Natural has a larger and more visible market presence than vintage keyboards.

But. The keyswitches in the Natural are crap. They’re the commonest kind, the dome switch – actually worse than if it had no tactile feedback at all; it clicks before the engagement point, which trains you to bottom out your keys even on devices that have a bump correctly at the engagement point. I’d snort something about typical Microsoft perversity here if not for the fact that almost all modern keyboards are just this bad.

Some people get so thoroughly conditioned by years of typing on crappy keyswitches that they can’t break the habit of bottoming out when they encounter decent ones. A&D regular Jay Maynard (sometimes known as Tron Guy) is like this; he gets why tactile-feedback switches theoretically ought to improve his experience, but can’t stand them in practice. Tactile feedback doesn’t work for everybody.

But the vintage keyboards that savvy users still chase are the ones that have the tactile feedback – the bump as you engage a key – in the right place. Most revered of these is the Model M, shipped with IBM PCs beginning in 1984. It had a unique kind of keyswitch called a “buckling spring switch” that serious tactile-keyboard fans consider the best ever. The Model M is a true classic; like Algol-60 and the 1911-pattern 45ACP, it was an improvement over most of its successors.

(For completeness and to demonstrate that I’m not being cultishly attached to a single brand, I will now mention the Northgate OmniKey, a superb mechanical-switch keyboard made by an otherwise undistinguished PC manufacturer. Nearly as good as the Model M by all accounts, and having used one I don’t laugh at people who think it was better. After Northgate folded in 2005, the keyboards were for a few years sold under the “Avant” trademark. OmniKeys and Avants would command even higher resale prices than Model Ms now, because fewer were made – but good luck finding any at all, their owners are not letting go of them ever.)

Model Ms, on the other hand, are still manufactured today, by an outfit called Unicomp that bought out the factory from Lexmark after Lexmark had bought it from IBM and uses the original tooling and designs. I’m typing on a Unicomp right now. Despite some drawbacks (which I’ll get to) it’s still odds-on the best keyboard design ever shipped.

But Unicomp is struggling and in constant trouble. Doesn’t take much examination of their website and product line to see the outlines; they’re cash-strapped, unable to do a lot of new-product engineering or marketing because the volume of demand for their product is too low. The few changes they have made to the Model M – like bolting on USB support – have been kluged in on the cheap, which created problems that damage the brand. The UB404LA has interoperability problems with some USB chipsets; ours has dropped connection with the hub on my machine once and flakes out every few minutes when connected to my wife’s machine (which is why she’s using the nipple-mouse-equipped UB40PGA that’s actually mine). The buttons for the integrated trackball have never worked reliably.

Thus we return to the tragedy. Unicomp knows how to make the best computer keyboards ever shipped. Why is it struggling and letting its quality slip?

In brief, because mechanical-switch keyboards are significantly more expensive to produce than all the crappy rubber-dome-switch keyboards we’re surrounded by. Relentless cost pressure by volume buyers pushed PC manufacturers and integrators to ship the cheapest possible components; there came a day when the once-ubiquitous mechanical-switch keyboard was quietly shunted aside and became a specialty item individual users had to seek out.

That would have been sometime in the early 1990s, but I don’t remember exactly when. Because on first exposure dome-switch keyboards didn’t necessarily seem obviously bad – I might have noticed that newer keyboards seemed unpleasantly mushy but then shrugged and adapted. It usually takes change in the other direction – trying a truly tactile keyboard after years of dome-switch nastiness – to notice how good it feels.

Another problem with Model Ms is that they’re well-nigh indestructible. You’re basically only ever going to sell one to a customer, barring house fires or coffee spills. There’s little repeat business. (Other mechanical-switch keyboards don’t have this problem quite as severely; the build quality and ruggedness even on latter-day Unicomps is exceptional.) Everybody else in the PC value chain makes more money by selling you a dirt-cheap keyboard that needs to be replaced every few years.

Thus, Unicomp is stuck. Ironically, there’s now a thriving new market for tactile keyboards that Unicomp could own if it had a decent product-development budget: on-line gamers.

Yes, gamers. Some of them have noticed that they can type faster and with less fatigue on mechanical switches – perhaps shaving a few vital milliseconds off reaction time. Enough of them, in fact, to sustain a handful of boutique companies selling keyboards with mechanical switches marginally inferior to the Model M’s – but with snazzy slick black cases and LED backlights and names like “Devastator”.

And Unicomp? No backlights, nonexistent or profoundly inept marketing, a website that looks like amateur night, and case designs that look like they’re phoning it in from 1985. It’s deeply sad.

I wish I could buy the company, fire everybody but the production crew, and hire on people who actually get product marketing and how to facelift the case designs and field a website that doesn’t make me embarrassed for them every time I look at it. Unicomp’s buckling-spring keyswitches are still the best in the world (even the more clueful gamers sort of know that), and they have the kind of decades-deep goodwill and fan loyalty that most companies would kill for.

Lacking the bimpty-bump million dollars it would take to buy and fix Unicomp, all I can do is urge everybody reading this to wake the fsck up. Keyboards are not a detail! If you’re using a dome-switch keyboard you are probably in the majority who, unlike Tron Guy, would find their quality of life and work significantly improved by a tactile keyboard. You might save yourself from Richard Stallman’s fate as your tendons age; his RSI is so bad he has to hire people to type for him. The price of a Unicomp could be the best $79 you ever spent.

If you already use a Model M, show it to a friend. Hell, give one to a friend! Well, give a Unicomp, anyway – I can well understand holding on to your armor-plated old faithful if you have an original. You’ll be doing a good thing for your friend and for a product which, despite Unicomp’s minor latter-day faults, is far too good to be left to die.

If they get enough of a sales bump, maybe they’ll be able to afford to fix a few things. In the meantime, stay away from the trackball variant (which, now that I look, is marked out of stock anyway). The vanilla Classic and the nipple-mouse variant seem to be OK.

If they really get enough of a sales bump, maybe they’ll get brave enough to make the holy grail of serious keyboard connoisseurs everywhere – a buckling-spring keyboard with a new-school, well-thought-out ergonomic layout like the Truly Ergonomic or ErgoMagic. Hey, I can dream, can’t I?

173 thoughts on “Keyboards are not a detail!

  1. Oh, how I wish. I’ve been hoping for a buckling-spring ergonomic keyboard for ages.

  2. I <3 my Unicomp, but you are right, the state of things in general is awful. With a few tweaks, it would be an *amazing* keyboard, and I'd happily shell out for another one to get those tweaks. Want me to buy a third one? Make a model like mine but at about 80-90% of normal size so my 10yo son can actually touch type on something other than his netbook. He's stuck with a pathetic amount of computing power because he can't type efficiently on anything bigger.

  3. I was lucky enough to rescue about 10 model m´s from the dumpster in the late 90s and never looked back.

    Gave half of them out to fellow (converted m-freak) hackers, my first son more or less destroyed one (yes keys and springs can be replaced but I still have two operational so just not done it yet) but still use the two operational ones I have.

  4. Been so long since I’ve used a Model M that I don’t remember it very well, but I’m pretty sure the key travel was longer than my Apple keyboard, which I dearly love.

  5. The truly brilliant move would be for *Apple* to make the move to buckling spring keyboards. Their customers are used to paying more, and most of them would probably think it a brilliant new innovation from Cupertino. Meanwhile it would shine enough public attention on the obvious superiority of tactile keyboards that savvy buyers would seek them out.

    But yes, they are indestructible. I have four of them. Why would I buy another?

  6. For Windows XP and higher, there is a program called Ctrl2Cap by Mark Russinovich (of SysInternals fame) that “… is a kernel-mode device driver that filters the system’s keyboard class driver in order to convert caps-lock characters into control characters. People like myself that migrated to NT from UNIX are used to having the control key located where the caps-lock key is on the standard PC keyboard, so a utility like this is essential for our editing well-being.” It can be downloaded here: http://technet.microsoft.com/en-us/sysinternals/bb897578.aspx

  7. >The truly brilliant move would be for *Apple* to make the move to buckling spring keyboards.

    Not going to happen, though. Compared to a modern Apple keyboard a Unicomp looks like a tank made in East Germany – and that’s intrinsic, you can’t do “low-profile” with buckling-spring switches or any other sort of mechanical. Apple won’t sacrifice its oh-so-cool industrial design for mere ergonomics.

  8. At least changing the keyboard layout because the machine was incapable of working as fast as the user could type is not a problem nowadays. Having just had to move from an N900 phone which has a REAL keyboard – all be it not very user friendly for touch typing – to a keyless phone, the first problem was hacking the phone so I could change to a layout that restored the navigation keys :)

  9. With the exception of the time since last production, the fingerworks keyboard line also commands higher inflation adjusted prices in the resale market than when originally introduced.
    You can’t buy a new one because Apple bought the company.

  10. I haven’t had a chance to try mechanical keyboards, though having had to rip apart my cheap keyboard a couple time to replace busted domes(read, swap E with F10), I can understand the appeal. I will say, though, the ergonomic keyboards I find to be utterly unusable. Everything’s in the wrong place – which I know is just habit, and which I might be willing to work past, if it wasn’t for the fact that I find the ergonomics to actually be worse than traditional square keyboards. Everything about them feels wrong. Maybe that’s tactile Stockholm syndrome talking, or maybe it’s the fact that I’m a two-finger typist and thus my hands rest in a different place than a good typist’s would, but they bother me.

  11. @Jim: I’m not sure where it is (the last new system I configured Windows on for myself is an XP machine), but there was a dropdown option somewhere to turn Caps Lock into a Control. Maybe in PowerToys, maybe under the regular Control Panel.

    I will say, though, the ergonomic keyboards I find to be utterly unusable. Everything’s in the wrong place – which I know is just habit, and which I might be willing to work past, if it wasn’t for the fact that I find the ergonomics to actually be worse than traditional square keyboards. Everything about them feels wrong.

    There are a couple of issues there for me. The first is that the angle on the MS keyboards is absurdly wide, requiring me to hold my arms out like the Chicken Dance to use, and then it’s hard to support my arms so I’m not holding them up under my own power for hours. The second, and a fatal flaw in the Truly-Ergonomic and perhaps in the ErgoMagic (they don’t have good pictures) is that the “ergo” designs I’ve seen split the keyboard down the TGB-YHN line and don’t copy the keys. It’s been well known for a long time that proficient touch typists “cross over” (i.e., sometimes type T with the right index finger or Y with the left) depending on the combination of letters they’re putting together in some word, and it’s physically impossible with these because that key you’re reaching for just isn’t there.

  12. For the record, my keyboard of choice is an Apple Keyboard, the low-profile white one with the scissor-switch mechanics and the flat keys.

    I learned to type on keeyboards with no tactile feedback, or too much: ASR33 Teletypes, Lear-Siegler ADM3A and SOROC IQ120 CRTs, a Heathkit H9 that had the 24-line mod, a TRS-80 model I. By the time IBM introduced the PC and associated keyboard, my habits were long set. Even spending years as an IBM mainframe systems programmer and using real IBM buckling-spring keyboards on 3278s and the like didn’t change my habits.

    I own two IBM terminals with buckling-spring keyboards, a 3472 (for mainframe use) and a 3196 (for the AS/400). I’ve even used the 3472 a bit as a VT100 over telnet. (This felt deeply weird to me.) I just poked at them a bit. There’s not a lot of travel left between the time the spring buckles and goes click and the stop at the bottom. I fail to understand how the user can avoid bottoming out when typing; the force required to actuate the key in the first place means that even if you stop pushing when you feel the spring buckle, you’re going to carry through the rest of the available travel.

    And that brings me to my objection to buckling-spring keyboards: they make me work too hard. The actuation force, even on the two IBMs that aren’t as heavy as a classic Model M, feels significantly higher than it does on the Apple. Overcoming that means I have to push harder, which makes it feel like exercise instead of typing. To me, light actuation forces are the sine qua non: the less hard I have to push, the less hard I have to work to type.

    In the machine room are two other keyboards, a DEC VT420 and a garden-variety Compaq keyboard from the early 2000s.The Compaq is unremarkable, and I suspect a dome-switch design. The VT420 has no tactile feedback at all and a long throw, and an actuation force that seems to increase linearly with key travel. I think it uses keyswitches that consist of fingers pointing upward, separated by a plastic bar that the key pushes down and out of the way, allowing the fingers to make contact.

    All of these are standard rectangular-layout designs. I find things like the Microsoft Natural Keyboard to be horribly unusable. Split designs such as those depend absolutely on the user using classic touch-typing technique. I’m self-taught, and my technique (or more properly lack thereof) would make a typing teacher blanch. My hands don’t remain in the same place. I can and often do type with all five fingers of one hand, roaming the keyboard and using whichever finger is handy to strike the needed key. I look at the keyboard while typing as often as not.

    Split-keyboard designs such as the Natural frustrate me endlessly because I can’t do that. I have to only use the correct finger to strike each key. I can use them for a while if forced to, but then I run screaming.

    And what of those tho depend on them when it comes time to go mobile? Do they tuck a keyboard in their laptop bag? That makes using them interesting in places like airport lounges.

    I’ve been typing as I do now since 1975 or so. I’ve spent a major part of my life in front of one keyboard or another. I don’t have a single sign of RSI, and would expect that if I were susceptible, I’d have had it long before now. To hear folks talk, I’d by now be in the same league as RMS. (Ugh.) I don’t know if I’m fortunate, or what, but I see no reason to change what I’m doing.

  13. The two most important things are input and output. I’ve been at jobs where I’ve had CRTs with low resolution turning an IDE in to a peep-hole into the code. I would get my own. Seeing 100+ lines helps (remembering some old 160×100 console text modes, the 8×8 font on my 2560×1600 lets me see a lot). Monitors are getting better.

    Keyboards used to be mimicing typewriters back when IBM selectrics were being modded to be printers. Most people don’t really touch type today, or not like they used to.

    The last element is the cursor position, typically a mouse. What I find stupid about almost every UI is that you have tonkeep switching from keyboard to mouse/trackpad/etc back to keyboard every few seconds. The joystick button on laptops is too imprecise. Anything else requires leavint the home keys.

  14. I will agree that a keyboard is not a detail. I tell people not to buy a monitor without having looked at it in person, since it is the component of the computer system that you sit and star at for hours on end. The keyboard is the other half os that equation.

  15. I’ve used computer keyboards starting in the 70’s using teletype style machines for both code entry and as an operator (RCA Spectra 70s) – now that’s tactile – and good for increasing your finger strength. I always like the IBM M-style keyboards but sadly didn’t keep any as my machines (corporate supplied) aged out.
    As a (large software company) developer for the last 30 years or so, I’ve gone through countless non-M keyboard and just got used to them … more or less. But around 2003-2005 or so, when I was doing LOTs of coding I developed some RSI in my right arm. This caused me to switch to the Microsoft Natural and I’ve never looked back. The RSI eased and went away over several months and I now have a Natural in the corporate office and my home office. It doesn’t have the tactile and “noisy typing” characteristics of the M (he must be working really hard, listen to the noise coming out of that cubicle!) … but the Natural is roomy and has near perfect “hand position” ergonomics.

  16. Datapoint: I use a Freestyle 2 at work. I’m not sure what sort of keys it has, but the adjustable gap and angling have helped considerably with RSI.

    Since the post mentions gamers, there’s an additional issue ergo keyboards need to contend with: A split like you find on the MS Natural or other keyboards with a similar design is good for working, but really bad for certain kinds of gaming; it’s still semi-common to need to reach keys on the right side of the keyboard with the left hand, by touch. Can’t do that with a big gap in the way. Developers are getting better about keeping all important stuff left of the G, but we’re not there yet.

    “In brief, because mechanical-switch keyboards are significantly more expensive to produce than all the crappy rubber-dome-switch keyboards we’re surrounded by.”

    No wonder when I went looking for decent keyboards everything that wasn’t crap was also not cheap. Actually, that ergomagic looks excellent, but I note that it also doesn’t list a price and wants you to call them to buy…both of which are huge red flags for me.

    I’ve been noticing more articles like this one across the web recently. I keep hoping it will end with keyboards getting more attention from manufacturers.

  17. I swear by my Kinesis Countoured keyboards. Perhaps their “Cherry MX brown key switches” help, I don’t know, but it’s their layout that makes me love them. They’d probably be even better if you could adjust the angle between the hand wells on each side of the keyboard. That would probably greatly complicate the physical design though, so I doubt Kinesis will ever do it. And I find that the current straight (no angle) design works fine.

    http://en.wikipedia.org/wiki/Kinesis_%28keyboard%29

    When I switched careers and first became a full-time programmer, my forearms started hurting… Scary. Following the standard advice on proper typing technique only improved things temporarily. The Kinesis basically solved the problem for me. And once I learned to touch type on the thing – which seemed more obvious and natural than on a standard keyboard – I discovered I liked it much better anyway.

    Incidentally, how DO you guys drive Emacs on a standard keyboard? Is there ergonomic touch-typing advice somewhere SPECIFICALLY about how best to drive all the non-alphanumeric keys used in programming? The Kinesis makes that obvious; you use your thumbs for Ctrl and Alt, thus there’s really only one way to do it. For a standard keyboard layout, I’m not sure what the right way is. (But I’m sure my old Ctrl/Alt habits were NOT the right way.)

    The AlphaGrip chording keyboard also seems interesting, but I never got around to actually trying it out.

    http://www.alphagrips.com/features.html

  18. Incidentally, how DO you guys drive Emacs on a standard keyboard?

    Step 0 is to ensure that the key immediately to the right of “A” (on a QWERTY layout) is a Ctrl.

  19. > Jay Maynard on 2013-06-28 at 07:24:26 said:
    > And what of those tho depend on them when it comes time to go mobile? Do they tuck a keyboard in their laptop bag? That makes using them interesting in places like airport lounges.

    Yes, that is a drawback. I have a ThinkPad X61 Tablet laptop. I never use it as a tablet (and in fact don’t even know if the pen and other tablet features work under Linux). Rather, I rotate its screen around 180 degrees, and put the laptop on a table with its keyboard facing away from me, which positions its 1400×1050 screen at the correct distance for my eyes. Then I rest the Kinesis Countoured in my lap, attached via USB. This works fine, but the keyboard is bulkier (although much lighter) than my laptop, and getting both out and set up is something of a production. I travel very infrequently though, so I’ve never put much effort into coming up with a slicker solution.

  20. @Jay
    > Overcoming that means I have to push harder, which makes it feel like exercise instead of typing. To me, light actuation forces are the sine qua non: the less hard I have to push, the less hard I have to work to type.

    If you ever get a chance, try out a dasKeyboard. It’s a clicky keyboard with an extremely light touch.
    I have a Model-M at home and a das at the office. I actually prefer the Model-M’s heaver action because I have large clunky hands that, behave likes bulls in a china shop on the dasKeyboard.

    If anyone wants to unlearn the bad habit of looking at the keyboard while typing, try getting the Model-S Ultimate which has solid black keys. If you don’t understand why looking at the board is a bad idea, ask any piano teacher how much harder it would be to teach a student to play properly if the notes were written on the ivory.

  21. I use a Unicomp at home, and love it! I actually used a Model M proper until I switched to laptops, which didn’t have PS/2 ports, so USB is the only way to go here.

    At work, I use a shitty dome keyboard. I work in a huge, open cube farm in NYC. No way something as loud as buckling-spring or Cherry MX blue will work. I’ve been wanting to try a keyboard with Cherry MX Brown switches (supposedly still mechanical and clicky, but much quieter), but I can’t find anyone in NYC or northern NJ that stocks them.

  22. I just bought the “weird” Kinesis (http://www.kinesis-ergo.com/advantage.htm) and after two weeks of re-learning how to touch-type I am amazed at the difference it makes. Putting Enter, Backspace and Delete under the thumbs seems completely natural now, and even coming from a “normal” ergonomic keyboard, the strain is far less. The main drawback is the price, which I can only justify paying because I write professionally.

    While we’re at it, bike riders should take a look at ergonomic saddles, the ones with a hole in the middle and no nose that don’t put pressure on your nerves and whatnot going to your private parts. Another thing you don’t think will make a difference until you try it.

  23. @bpsouther You stole the words from me! They also have a quiet variant that still has the mechanic reaction. But they are way more expensive, too.

    I might’ve read they have gold plated thingies somewhere.

  24. Confirmed: they have gold contacts. Also a graph explaining the reset point, tactile point and operating point per key switch type. (Bottom of the page when looking at a keyboard with either ‘clicky’ or ‘soft-clicky’ “typing experience”.

  25. The last element is the cursor position, typically a mouse. What I find stupid about almost every UI is that you have tonkeep switching from keyboard to mouse/trackpad/etc back to keyboard every few seconds. The joystick button on laptops is too imprecise. Anything else requires leavint the home keys.

    Apple’s usability research has confirmed that using the mouse is actually faster than using the keyboard alone. If it bothers you that much, though, there are keyboard-driven WMs like i3wm you can try, as well as keyboard-friendly applications like the Web browser conkeror.

    Anyway, mice are on their way out as pointing devices. Touch screens and things like the Magic Trackpad are winning the pointing-device wars.

  26. I love my kinesis essential. Feels like the difference between a sports car and a minivan. I’m all-typos all-the-time on this laptop crap rubber dome. I just had to fix five typos in only two sentences.

  27. Yes, that is a drawback. I have a ThinkPad X61 Tablet laptop. I never use it as a tablet (and in fact don’t even know if the pen and other tablet features work under Linux).

    Virtually all Wacom and most N-Trig digitizer parts should work.

    Tablet PCs are my natural choice for an art machine — similar to how Mike Krahulik uses his Surface Pro, but with Linux and an all free software stack. :)

  28. Love my magic trackpad, when pointing or scrolling is what I need to do. Otherwise, I live in Emacs, and use the keyboard.

    I like the trackpad for simple gestures and scrolling, but prefer a mouse for anything that requires greater precision (as a web guy, I need to cut up PSD’s quite a bit). My setup is an 11.6″ Macbook Air on a stand hooked up to a Dell 24″ 16×10 IPS display, just to the left of the display. in front of the laptop, I have a Unicomp keyboard, positioned so the its’ roughly centered on the trackpad of my laptop keyboard, the edge of the laptop hovering just above the F-keys on the unicomp. I also have a regular mouse hooked up. The nice thing about this setup is for scrolling and low-fi pointing, I can hover my right fingers up to the trackpad without changing my body or arm position at all, do my business, and move right back down. It’s much, much faster and far less disruptive than taking my hand away to use the mouse. But the real mouse is there when I need it.

  29. I don’t prefer the soft feel keyboards myself, but I do feel that the square keys (Chicklet?) keyboard on laptops these days are slightly better.

    Would love a mechanical tactile keyboard myself. In India, I think only TVSE (TVS Electronics) makes them. TVSE tactile keyboards also seem to be less expensive than the other brands. Looking now for a review of them.

  30. My wife through out my “old” early 90s model M keyboard when I had my back turned. It had a PC-AT connector, with a PS2 adapter, and a PS2 to USB adapter. That’s how much I wanted to keep that keyboard on my desk.

    It almost ended our marriage.

    I bought a Unicomp replacement, but I’ve been disappointed in it. It is flimsier than my original. If I pick it up, I can feel the plastic must be some sort of bio-degradable crap.

    I’ve also had a problem with one of the keys getting spuriously sending out signals even when I’ve not touched it. It’s very Annoying.

    Unfortunately, the model M contained the seeds of it’s own destruction. It was just too durable.

  31. I took a typing class in high school. We learned on mechanical royals. I still pound when I’m tired.

    I bought a Model M when IBM spun off the Lexmark division. It has the AT connector. I have it connected through a PS2 adapter to a USB adapter to a USB hub. It’s a bit cumbersome, but it works. You can still buy the PS2 to USB adapters, so if Unicomp’s USB keyboard conversion is so very bad just get the PS2 version.

    I’ve been tempted to buy one to use at work, but I think my coworkers would hate me.

    http://www.frys.com/search?search_type=regular&sqxts=1&query_string=ps2+usb&cat=0

    Get a Y adapter. The straight-through adapters are for mice only.

    The chording keyboard reminded me of the Chordite: http://chordite.com/

    I read an article about it in the NY Times in 2002. John McKown still works on it. It’s a very personal device that requires custom adjustment.

    My big bugaboo with keyboards is the [enter] key. I hate that ‘ellish enter key! I rarely hit the caps-lock key.

  32. I’ve got a touch of arthritis in my fingers, and have found that the heavy touch required by Unicomp keyboards has made a big difference, it’s just enough exercise to keep the joints loose. And since I have to use a keyboard anyways …

    (I’m worried about finding another manufacturer if Unicomp “goes away”, though)

  33. There are as many ways to design a keyboard and probably as many preferences.

    I happen to like having braille keycaps on at least some keys. It helps typing in the dark. Using stickers tends to fail after a while.

    Have no use for the numeric keypad.

    Find it very hard to hit the enter key, even harder to hit the backspace. Like a split spacebar for backspace, have a footpedal for enter. Kind of wish ‘ was not between me and enter.

    I hit contr-[ for escape because escape is way too far away on the unicomp.

    I actually use function keys for tons of stuff. I’m sad that function keys are underused by most applications nowadays.

    use the US alternative international alt-gr dead keys keymapping. Finding áäæéðë is an easy hunt around the vowel’s keys on querty

    use tools that do the right thing for capitization and spacing. turn off the spellchecker when writing stuff and proof at the end. the whole interactive respell as you type thing makes me nuts, no, I don’t want to fix the speling as I go – (these are some of the default settings on web page posts that make me just f-ing nuts)

  34. You know, there’s something of a market for keyboards without computers in the raspberry pi and beagleboard, etc…

  35. >Given the amount of passion and pickiness hackers pour into their choices of software tools, it’s downright weird that more of us don’t pay better attention to choosing a decent keyboard. . .[w]e freaking damage ourselves using the shoddy, cheap-shit keyboards attached to most machines nowadays, too often get painful RSI as we age, and never make the connection.

    It’s only “weird” if you ignore the gender demographics involved: overwhelming majority of hackers = male = indoctrinated to ignore self-care to the point of self-destruction.

    Apply that obvious syllogism and it goes from weird to predictably expected. Unfortunately, that connection is one that even fewer people want to make.

  36. One more thing that unicomp should do is give their keyboards full rollover. I’m looking to buy my first good keyboard, but I want to learn steno on it, so ~2 key rollover isn’t going to cut it.

    Also, whether it makes a difference or not, full rollover is something that gamers would probably want as well.

  37. Hi, I am new here. So a few comments:

    ESR wrote:
    “I wish I could buy the company, fire everybody but the production crew, and hire on people who actually get product marketing… Lacking the bimpty-bump million dollars it would take to buy and fix Unicomp…”

    I do not know if the intent of your statements was to express your wish for someone to take over Unicomp and fix it, and you chose yourself as an example of that someone, or alternatively if this is a job which you actually really wish to undertake yourself.

    In case of the latter, then check your assumptions, because there might be an opportunity. A few pionts:

    • Generally, the assumption that you would require $millions be placed in the position of running a company is incorrect. It often does not really work that way, that the person running a company is in that position because that person bought the company which he runs. Investors purchase a company and they place the CEO or president in the leadership postion.
    • The assumption that Unicomp would be expensive is questionable. It seems reasonable that it would cost some $millions when we imagine what IBM must have spent to develop the design, the manufacturing process, and build the tooling. Until you realize that the present-day value of the company is largely determined by its expected future net income and not by past investments. So if it is really doing that poorly maybe you (or investors who back you) could pick it up for cheap.
    • The assumption that you would need to buy Unicomp in order to get into the business of making buckling-spring keyboards seems incorrect. Perhaps it is a shortcut but it is not a dependency. Unless Unicomp holds (or licenses) patents which would block you (easy to check). Seems unlikely that they would.
    • Costs to develop a product and stand up manufacturing are going to be small compared to what IBM spent years ago because of the revolutions in 3D printing, CNC machining-as-service and custom small-scale manufacturing. Also for large-scale, the outsource-to-China thing.

    If you have to mortgage your cat and live on Ramen, if you face financial ruin in the event of business failure, then stay away. But if it is really what you want to do, look into it, it might be an easy fun ride with low personal financial cost or risk.

  38. @Jeff Read:
    >Anyway, mice are on their way out as pointing devices. Touch screens and things like the Magic Trackpad are winning the pointing-device wars.

    Unfortunately, that seems to be the case. And it’s a transition as lamentable as Eric holds the transition away from tactile keyboards to be. Touchscreens are nice for a device that can be held horizontally at arm’s length, but if you need to do heavy typing (and thus require a full-sized physical keyboard), the optimal place for the touchscreen if it’s going to be comfortable as a pointing device ends up being pretty much the same as the optimal place to have your keyboard, so they end up getting in each other’s way and there’s no way to lay things out so that neither typing, pointing, nor switching between pointing and typing is awkward.

    And trackpads are crap as pointing devices. Period. They can hold you over if you only need a mouse for a few seconds and digging your mouse out of your laptop bag would take too long, but for any sustained use they’re crap.

    And then there’s the cognitive dissonance set up by some of these tactile keyboards Eric mentions that include nipple mice. That’s a combination of the absolute best in keyboard quality with the absolutely most dismal in pointing device quality.

  39. It should be noted that stenotyping is even more efficient than typing on a mechanical keyboard, and there’s a plausible argument that it’s even less likely to cause RSI. It does have a few drawbacks, though: (1) learning a stenotyping system is a big time investment; the systems and mnemonics are also language-specific for obvious reasons; moreover, using stenotyping to write non-natural-language texts (including software) is a highly experimental pursuit. (2) stenotyping hardware tends to be very expensive. However, the team behind the Plover project (which is an open source software for interfacing with stenotyping hardware) has been thinking about crowdfunding a project for lower-cost hardware. They currently advocate buying a relatively cheap n-key-rollover keyboard and converting it into a DIY stenotyping device.

    It’s definitely something worth thinking about, AIUI. It might work especially when dealing with a large, well-defined lexicon, and very loose constraints for each choice (no real possibility for conventional “auto-complete” to work). Think programming in dynamic languages a la LISP or Python.

  40. I work on a Microsoft Natural keyboard in the Dvorak layout, with Caps Lock modified into a backspace, and backspace modified into what is usually ALT-Tab (to go with my tiled window manager, which makes that just about the right combination of convenience and inconvenience to use for that function). I agree with Jay that QWERTY penalizes true touch typing, so you find yourself constantly making the effort to “try” to do it right, with the cognitive gradient too steep to maintain for any period of time, but any decent layout kinesthetically rewards it, so instead of trying to touch type, one would have to try not to. (I chose Dvorak because at the time, I didn’t know the other options. It is arguably not the best, but it’s also arguably close enough that I couldn’t recover the effort of trying to switch again.)

    The combination of all of this, combined with a pretty well-wired and practiced understanding of exactly how hard I have to press the keys to bottom out only minimally, makes it look and feel like I’m giving my keyboard a gentle massage when I’m typing at full speed, rather than bashing away at it. I don’t expect RSI problems to emerge; my wrists hardly move at all.

    Moving backspace to Caps Lock was quite helpful for all of this. Most people, when they go to design layouts, grab lots of text and then analyze the letters and the transitions. This naturally misses backspace. I find I’m a great deal more accurate in Dvorak than I was in QWERTY, but backspace is something I’m sure I still use more than “Z” or semicolon. Even discounting typos, it gets used for basic editing a lot. YMMV.

  41. Jon, I can’t disagree more about pointing devices. An n-touch trackpad with multitouch gestures will make your life a lot simpler. I got so used to it on a Macbook Pro that I went out and got a Magic Trackpad. My biggest annoyance is that Synergy won’t feed multitouch gestures to Linux.

    I used to love nipple mice, but the last desktop one I had cratered, and I couldn’t find a replacement, so I had to get something else.

  42. >But if it is really what you want to do, look into it, it might be an easy fun ride with low personal financial cost or risk.

    Might be, if I were psychologically suited to running a business. I’m not. I’m good at business strategy and market analysis; I have some ability to see around corners into interesting possibilities. But I’m weak at people management and paperwork terrifies and paralyzes me.

    The way to get the best use of my time and ability in this situation, I think, would be to buy the company, put me on the board of directors, and tap my expertise in the technology and the market segment. I’ve done that kind of gig before and I was good at it. But to actually run the business you want a manager who’s a turnaround specialist.

    You are probably right that Unicomp could be bought on the cheap – I’ve talked this through with a savvy friend of mine and he guesses we could get the keys to the factory for $100K if we pushed on it. The expensive part would be hiring a capable product-marketing team and a good industrial designer, then meeting payroll for them and the production team until the effect of the changes starts to translate into increased sales.

    As for making buckling-spring devices without buying Unicomp – probably not. They don’t sell the keyswitches, and there’s a patent.

  43. I agree with Jay that QWERTY penalizes true touch typing

    Care to elaborate on that? I touch-type quite well on QWERTY keyboards, and a number of studies have concluded that there isn’t a significant difference for experienced typists.

    My biggest annoyance is that Synergy won’t feed multitouch gestures to Linux.

    Not sure of the details of the pad you used, but I know that the trackpad on the Dell M6600 (“AlpsPS/2 ALPS DualPoint TouchPad”, which responds to the Synergy configuration tools) handles multitouch just fine, even though I personally dislike it!

  44. @esr:
    > Apple won’t sacrifice its oh-so-cool industrial design for mere ergonomics.

    In Philippines internet cafes I regularly encounter this hideous beast, the “A-shape nature” keyboard from A4Tech. Good luck with not pressing two keys with one finger.

    I also regularly encounter “stuck key” keyboards where the keys require orders-of-magnitude more force. I feel blessed to return to my $4 mushy keyboard at home (with clear nail polish to prevent the non-laser etched lettering from rubbing off).

    I’m keen on obtaining a better keyboard. I will probably need to order from the USA and ship in a $75 balikbayan box. Thus I need to be sure of what I want, or order several models.

    > he guesses we could get the keys to the factory for $100K

    Why not wait for them to go bankrupt, assuming they are not taking on increasing debt to remain afloat? Perhaps it would be best to contact them now so they know to contact you before they might sell the company to a liquidator. The tragedy you described seems to be accelerating, and now with touchscreens, users moving away from keyboards. Also there is the global economic collapse circa 2016.

    What I may do is purchase several of the best recommendations, then if I decide this buckling-spring type is superior to all others, then I might have some capital to allocate to this 2016ish.

    The growing market I see post global economic collapse is programming will become the sought after vocation.

  45. I agree with Jay that QWERTY penalizes true touch typing
    Care to elaborate on that? I touch-type quite well on QWERTY keyboards,

    It harks back to the design of the original layout on the typewriter. What was the ‘optimal’ layout proved to be a problem as when typists speeded up they managed to jam the keyboard. The fix that was adopted was to move the problem keys so they took a little longer to reach. That said, the analysis was for the language of the time, and it may well be that a slightly different layout would result today … and ‘ideally’ we probably need different layouts for each language?

  46. The fun thing about the Microsoft Natural Keyboard (which I have) is that it worked out of the box on linux, albeit not the ‘fancy’ keys, but didn’t work at all with Microsoft Windows (XP). I had to plug in another keyboard so I could log in, plugged in the MS Natural Keyboard and installed the drivers for it.

  47. The one problem with waiting for the debt to sink the company’s finances enough to make it available is that you then have to pay off the debt (or go through bankruptcy). Better to put the extra money out up front and retain the goodwill of your suppliers and employees.

  48. Gamers know about Unicomp keyboards, but they just prefer Cherry MX Red or Black switches. I myself prefer Blue or Brown for tying; I’m not that convinced by the buckling spring tech.

  49. You are probably right that Unicomp could be bought on the cheap – I’ve talked this through with a savvy friend of mine and he guesses we could get the keys to the factory for $100K if we pushed on it. The expensive part would be hiring a capable product-marketing team and a good industrial designer, then meeting payroll for them and the production team until the effect of the changes starts to translate into increased sales.

    So it is time to start Kickstarter (or Indiegogo, or GoFundMe) campaign? :-PPPP

  50. @Jay Maynard at 15:24 –

    Not so sure about that. I presume that you would not structure your crowd-funding campaign to offer equity in the company. But raising money for a project, which just happens to be purchasing a company, shouldn’t trigger any particular interest. The rewards would have to be carefully structured.

    My question is – why would anyone want to just gift money to someone else for that other to gain control of a profit-making enterprise, without getting some tangible benefit for oneself?

  51. My question is – why would anyone want to just gift money to someone else for that other to gain control of a profit-making enterprise, without getting some tangible benefit for oneself?

    You could offer keyboards as backer rewards.

  52. What was the ‘optimal’ layout proved to be a problem as when typists speeded up they managed to jam the keyboard. The fix that was adopted was to move the problem keys so they took a little longer to reach.

    Actually, the QWERTY layout was arranged so that the typebars of common English digraphs were as far apart as possible. This actually had a speed advantage compared to, say, an alphabetical layout, as it encouraged the typist to alternate hands frequently when typing English text; this practice enables the typist to position both fingers over keys and then hit them in rapid succession.

    Jamming was a particular problem on old typewriters if neighboring typebars were actuated at the same time. You can see this if you have an old Underwood manual typewriter; if two typebars that are close together are moving towards the platen at once, a jam will happen early; if they are far apart the jam will occur much later, so that you really have to mash the keys at the same time in order to get them to jam.

  53. Unfortunately, that seems to be the case. And it’s a transition as lamentable as Eric holds the transition away from tactile keyboards to be.

    Change happens, and we have to roll with the punches.

    And trackpads are crap as pointing devices. Period. They can hold you over if you only need a mouse for a few seconds and digging your mouse out of your laptop bag would take too long, but for any sustained use they’re crap.

    The Magic Trackpad is huge, and under OS X has a beautiful logarithmic response curve that makes for quick and precise pointing. For some reason, this hasn’t been replicated under Linux yet; maybe Apple has a patent on the algorithm?

    What’s either quaintly retro or perversely bizarre (I’m not yet sure which) is the insistence on not just a mouse but a three-button mouse. Requiring three buttons is not only confusing for end users, it also arose entirely out of historical accident: X11’s bizarre clipboarding system made extensive use of three buttons. X11 is now deprecated technology, and virtually all open source GUI development is now focused on Wayland; within a year, Wayland will have replaced X11 as the default graphics stack for all of the major distros. When that happens, hopefully CUA will become the only reliable clipboarding interface in desktop Linux. (Though it doesn’t solve the “does Ctrl-C send a break or copy?” problem — which is why Apple invented the Command key.)

    Anyway, Apple got the number of buttons just right: if you need more than one, you’re designing the interface completely wrong. Ever the vanguard, Apple appears to have standardized on zero buttons, relying on making the trackpad itself clickable as well as rich gesture support to make sending commands with the pointer even easier.

  54. http://blogs.smithsonianmag.com/design/2013/05/fact-of-fiction-the-legend-of-the-qwerty-keyboard/
    While the initial switch from an alphabetical keyboard to an ‘optimized’ one was to remove one of the jam problems it was more to do with speeding up typing. The reason for the changes between the early prototypes and the final layout was to remove a remaining jam problem between some key combinations, so a less than optimal design was included in the later patent

  55. Jeff, there are lots of reasons to have at least two (logical) buttons. Even the Apple Mighty Mouse will let you have three if you configure it that way. Whether you like it or not, there’s a very strong UI convention that left-click selects something, right-click operates on something. (Which is why Blender’s UI sucks so badly: they started with right-click-to-select, and went rapidly downhill from there.) Ignoring UI conventions is never a good idea.

    And one ability I do miss is the ability to right-click-drag or right-click-scrollwheel something. That turns out to be useful in a few places.

  56. Jay,

    Two buttons you can build a case for. Three is overkill in this day and age.

  57. I doubt I would shed any tears if the middle button went away. The middle button on my laptop has annoyed me more than once when getting in the way of an intended left click or right click. However, I disagree that more than two buttons is overkill. I find the thumb buttons found on modern gamer mice to be rather useful for web navigation when assigned to Forward, Back, and the like.

  58. My question is – why would anyone want to just gift money to someone else for that other to gain control of a profit-making enterprise, without getting some tangible benefit for oneself?

    Backer fame? Keyboard with lifetime warranty? Individual signed keyboards? Individual designed keyboards? Equity (nonvoting / voting shares)?

    In 2012 there were 17 projects on Kickstarter that raised more than $1M (well, admittedly that is tiny percentage of projects).
    http://www.kickstarter.com/year/2012#million_dollar

  59. I agree with Jeremy. The middle click goes largely unused for me (again, except for Blender, though the latest versions support the Magic Trackpad’s gestures, rendering the middle button superfluous), but when I used a mouse, I made a lot of use of extra buttons for forward and especially back, to the point I refused to use a Mighty Mouse because the side squeeze points couldn’t be set up as separate buttons.

    These days, the Magic Trackpad’s gestures do that job for me. That was very, very easy to get used to.

  60. Jakub, the list of things people might want is fine up until you get to “equity”. That’s when the Securities and Exchange Commission gets involved. Doing so would immensely complicate the enterprise, to the point it would become impractical.

  61. Even that, if you’re going to be within the $1 million crowdfunding limit per year, will trigger some pretty stiff accounting and reporting requirements that will complicate matters. They may succeed in drafting regulations that don’t act substantially like IPO documentation requirements, but somehow I doubt it.

  62. Another way that Unicomp is shooting itself in the foot is that they will only ship them to the UK via some ultra-expensive FedEx service. Despite shipping being pre-paid in the USA, FedEx UK will then slap on another “processing fee” and hold the item ransom until the recipient pays it.

    At $79, buying a Unicomp keyboard would be a no-brainer. With an open-ended cost that’s likely to end up around the $250 mark? I’ll pass.

  63. @Jeff Read:

    Ever the vanguard, Apple appears to have standardized on zero buttons, relying on making the trackpad itself clickable as well as rich gesture support to make sending commands with the pointer even easier.

    I don’t think you addressed my prior concerns. (heads up I also added a bold claim recently to that prior blog about evolution, brain development, and the genome)

    JustSaying wrote:

    @Jeff Read:
    I’ve never tried the Magic touchpad, only the small laptop touchpads and the smartphone touchscreens. I find the mouse and scroll wheel are much faster to grab and flick around aggressively without losing control because they have physical inertia and because the extra mass keeps it on the horizontal surface. It feels unnatural to point at something with my fingers which is not what I am pointing at with my eyes (sometimes I don’t find the horizontal surface quickly without taking my eyes away from the screen or my fingers drift off of it if I look at the screen). Ditto gestures, they feel natural only when my fingers and eyes are interacting with the same object.

    > For some reason, this hasn’t been replicated under Linux yet;
    > maybe Apple has a patent on the algorithm?

    At the linked comment above, I had also provided a link to Mark Zimmer’s work on modeling user input. Note he works for Apple and has filed some patents for them but I haven’t checked if any pertain to this matter.

  64. Nb. ARKYD: A Space Telescope project got funded at $1.5M (with $1.0M goal) at Kickstarter…

  65. @Jeff Read:
    >What’s either quaintly retro or perversely bizarre (I’m not yet sure which) is the insistence on not just a mouse but a three-button mouse. Requiring three buttons is not only confusing for end users, it also arose entirely out of historical accident: X11?s bizarre clipboarding system made extensive use of three buttons.

    I wouldn’t say three buttons are confusing to the end user, but having grown up on Windows systems, I’ve never really used middle button pasting (or the middle button in general: I currently have it set up to activate a Compiz feature that I also never use).

    Then again, scrollwheels are often seen by software as a pair of mouse buttons (on for scroll up, one for scroll down), so by that measure I use four buttons routinely.

    >X11 is now deprecated technology, and virtually all open source GUI development is now focused on Wayland; within a year, Wayland will have replaced X11 as the default graphics stack for all of the major distros.

    Not all. Canonical has decided Wayland isn’t good enough. Ubuntu will use Mir.

    I’m not holding my breath about Wayland seeing widespread and total adoption anytime soon. As I understand it, Wayland still has major deficiencies (OpenGL, graphics hardware vendor support, etc) that will require running X11 as a Wayland client for some time to come, or, for some things, running X11 instead of Wayland. Canonical is off doing its own thing with Mir, which may well fragment things so that developers will probably still primarily write X11 applications to keep things portable (not to mention the fact that Wayland pretty much only exists for Linux at this point, and that anything that wants to be portable between Unices will have to stick with X11 until that changes).

  66. My question is – why would anyone want to just gift money to someone else for that other to gain control of a profit-making enterprise, without getting some tangible benefit for oneself?

    Why buy the company? A kickstarter to create a modern bluetooth buckling keyboard would tell you if there was still a market for such things.

  67. @Nigel at 8:01 –

    Why buy the company? ….

    As Eric mentioned in the original post, both parts of the existing team (“the production crew” was named in particular), and the name recognition and “business good will” could be usefully retained. Any new venture would have to overcome quite a bit of skepticism to compete equally with the established brand.

  68. >Might be, if I were psychologically suited to running a business… But to actually run the business you want a manager who’s a turnaround specialist.

    Reminds me of a former dean of the University of Chicago School of Business who, upon being appointed to the position, immediately left for a year-long sabbatical in California and appointed an acting director in his stead, stating that the key to good business management was to find someone who was good at managing and have them do it.

    >”As for making buckling-spring devices without buying Unicomp – probably not. They don’t sell the keyswitches, and there’s a patent.”

    Those patents must have expired by now. The IBM 5150 was introduced in 1981, 31 years ago, and the longest duration of US patents is 20 years. This site lists three of the patents:
    http://deskthority.net/wiki/Buckling_spring

    Some elements of individual switches in the 5150 keyboards are formed from protrusions from a single plastic backplane covering the entire expanse of the keyboard. So the design, not a sales policy, inherently prohibits the resale of individual keyswitches.

    >…guesses we could get the keys to the factory for $100K if we pushed on it.

    That would be far less than the cost of building up a new manufacturing operation. Especially valuable, because it is time-tested and proven, the existing facility has greater certainty and lower risk than would building a new facility. Having to debug a new manufacturing process is painful in itself and has harmful carry-over effects to sales, marketing and thus revenue because when manufacturing fails you are either not shipping product, shipping in volumes too low to meet sales demand, or worse, when discovered too late, shipping crappy broken stuff which gives you a bad reputation.

    A few more random points:
    • It might be possible to first make the business profitable only by firing the deadweight, fixing the marketing, fixing the website and redesigning the keyboard electronics. Those alone might make a huge difference on sales and revenues. Then later, in a second stage, do an extensive product redesign. Splitting it up that way would have the advantage that it reduces the initial investment required. Also, already having a successful business when asking for an additional investment to fund a thorough redesign would reduce the perceived risk to investors, decreasing the cost of capital and increasing the likelihood of funding.
    • In support of the previous point: There is a hell of a lot of low-hanging fruit here, like you can not even buy one of these through Amazon.
    • Using authoritative medical evidence supporting the use of these keyboards to drive institutional sales could be a goldmine.
    • It would be very useful to get a look at Unicomp’s books.

  69. Not all. Canonical has decided Wayland isn’t good enough. Ubuntu will use Mir.

    Which is part of the reason why Ubuntu is on the fast track to irrelevance: Canonical has to do shit differently just ’cause. Canonical has been shown to be full of shit in this regard, and all of the other major distros (including Ubuntu spinoffs like Kubuntu, Xubuntu, etc.) will use Wayland.

    I’m not holding my breath about Wayland seeing widespread and total adoption anytime soon. As I understand it, Wayland still has major deficiencies (OpenGL, graphics hardware vendor support, etc) that will require running X11 as a Wayland client for some time to come, or, for some things, running X11 instead of Wayland. Canonical is off doing its own thing with Mir, which may well fragment things so that developers will probably still primarily write X11 applications to keep things portable (not to mention the fact that Wayland pretty much only exists for Linux at this point, and that anything that wants to be portable between Unices will have to stick with X11 until that changes).

    You haven’t been paying attention. Both the core Wayland devs and toolkit devs have been coding like gangbusters over the past few months to make a full Wayland desktop stack with no intervening X11 an actual thing. They can’t wait to be rid of X11 once and for all. Within a year a version of Fedora running such a stack will be available. And where Fedora goes, there goes Linux.

    As for app support, most devs code to a toolkit — which can be switched to a Wayland backend without breaking anything. So everything should pretty much just work unchanged.

  70. I worked with Unicomp to design and manufacture a custom keyboard 5 years ago. They are willing to do it for $3000. Your $100k price tag is way more than it needs to be. Seriously Eric, talk to them. They are nice people. They’d probably put you on the board of directors without you having to buy the company. They WANT more sales.

  71. And, my own personal wishlist, is a Unicomp with lots of blinky lights, a USB hub built in so I can plug the mouse in, function keys on the left side just like the classic Sun keyboard, and a few minor mods like that, mainly to make it more like a Sun layout. Those types of mods would perhaps take up to $100k ($50k?) Are there any hardware/mechanical engineers willing to work for less pay up front, but take a royalty until the arrears is paid off? I mean, I believe in the product, I purchase it myself. If I had those skills, I’d do it.

    Heck, talk to them about merging with Happy Hacking keyboards, I’d buy a Happy Hacker keyboard with buckling springs.

  72. Oh, another feature I’d want would be total chording; I want to be able to “chord” arbitrary keys on the Model M, up to and including ALL the keys… that makes it suitable for that open source court room transcribing software. That would be our market right there. And with the USB hub built in, would could then plug in the foot pedals from that ergonomic $500 keyboard and really have some fun.

  73. @esr “paperwork terrifies and paralyzes me”

    Me too (link to a blog post about the fear of paperwork and opportunity costs of its requirement by governments). I feel like the condition needs to be named so sufferers can find each other and form support networks.

  74. No need to buy Unicomp; if you do a kickstarter, then just raise the $100k, Unicomp will be HAPPY to update all the things that need updating. And you will keep copyrights, etc and can pick whatever brand you want to sell it under. Or if you want to sell it through them under their brand, they’ll be cool with that too. The only thing they can’t specifically do is add an “Apple” key, because Apple has apparently attacked them legally in the past when they made Apple keys for people. If there is anyone inside Apple that loves the Model M, maybe they could be our inside person to negotiate something so the new M+ could be a more “Apple-ish” keyboard. Such compatibility could only help Apple, not hurt it. Let’s see if Apple is more open to this type of thing now that the Syrian man is dead. Their recent iRobot TV spots reeked of desparation… but in a good way. Are they finally willling to step up and be more open?

    Btw: Hi AndrewP. Thanks for printing out the blog; it did reach me, and helped the time go quicker.

  75. I don’t think you addressed my prior concerns. (heads up I also added a bold claim recently to that prior blog about evolution, brain development, and the genome)

    Well, you’re not interacting with the same surface you look at with a mouse, either. If the trackpad drivers are written well, the trackpad will have mouse-like behavior rather than touchscreen-like behavior, and support rapid flicking and shuttling.

    the problem is very few trackpad drivers under linux are written well — even my thinkpad’s trackpad goes psycho if my finger or headphone cord touches it

  76. Me too (link to a blog post about the fear of paperwork and opportunity costs of its requirement by governments). I feel like the condition needs to be named so sufferers can find each other and form support networks.

    The Aussie solution to the problem you mentioned is the same one the Americans have used for decades: everyone fills out a tax return — no exceptions. It’s a royal pain in the ass, but for just $89.95 a year, there’s TurboTax! Of course, since tax code is specialized knowledge that changes from year to year, and not crowdsourceable, such software must by its nature be proprietary. And until recently, it only ran on Windows. And surreptitiously installed onerous DRM called “C_dilla”. Which conflicted with other programs’ DRM in various crashy ways…

  77. @ESR

    Lets say i gave you a keyboard that let you be twice as productive with only half the strain. Woulndt you just end up being four times as productive and still suffer from RSI?

  78. Although I primarily end up typing on my MacBook Air’s keyboard at work (because they bitch and moan that the newsroom is too loud if I’m using my Das Keyboard), I’m an IBM Model M fan from my earliest days using PCs (early 1990s) and I migrated to an Apple Extended II when I switched to Mac, thanks to an ADB to USB adaptor.

    I ended up getting a Das keyboard and Mac keycaps about 4 years ago and then upgraded the Mac version of the professional keyboard last year. I love it. I’ve used, but never owned, Unicomp’s in the past too, and those also feel great.

    Every few years, I always get the urge to do a big mechanical keyboard shoot-out, Das, DSI, Unicomp, Matias, Filco, etc. Maybe this is the summer I finally do it!

  79. >http://en.wikinews.org/wiki/Kickstarter_to_update_ModelM_Keyboard

    I’ve added some thoughts.

  80. >Woulndt you just end up being four times as productive and still suffer from RSI?

    Not how any of my productivity improvement have worked so far.

    I have multiple friends with RSI who have reported that tactile keyboards helped them heal and not have pain.

  81. > They’d probably put you on the board of directors without you having to buy the company. They WANT more sales.

    I think I could be really effective as a director. I have been before.

    I sent a pointer to my rant through their web contact form. No response.

  82. I’ve sent a message to Unicomp on this topic, will report when I hear back from them.

    Also updated the Wiki page. Thank you, N-Key Rollover is what I wanted to express. It looks like USB only supports 6-key rollover, but this is enough for Braille software. Since the original IBM keyboards had N-key rollover, perhaps the Model M does too; I’ll ask Unicomp. That would be one less thing on the TODO list.

    How important is Bluetooth as a feature? I moved it from Necessary to Wishlist, but move it back again if it is one of those essential features.

  83. We might be able to get around the 6-key rollover limitation in USB by just sending a single KEYDOWN event through USB for each key pressed, and let the OS decide if the keydowns are simultaneous enough. For someone slow and clumsy, that might actually be a win; let the OS and software treat the keys as “simultaneously down” even if they are pressed DOWN one second apart…. but none of them are KEYUP evented. After all, this is the Linux keyboard; Linux should do this automatically already. I bet this would already work in X.

  84. http://blog.maxkeyboard.com/faqs/does-your-keyboard-feature-n-key-rollover-capability/

    Looks like the Max Keyboard guys have fixed the n-key rollover USB problem. If they solved it by pretending to be 3 USB keyboards (instead of 1) then I’d pass. Otherwise, I’ll talk to them about helping out Unicomp with reengineering their keyboard.

    Also added “backlit keys” to the necessary modifications list. My own idea was having LOTS of LEDs across the top would let me do things with scrollers and morse code etc… like that part of the novel “Cryptonomicon” so the system can be communicating through LED codes… one LED for disk activity, one for network activity, etc etc. But looking at the Max keyboard, backlit keys are cool too.

    I wonder if it is even possible to make a quiet version of the buckling spring. Mind you, I’m noisy even on dome switch keyboards, my fingers are like artillery, keeping the roommates awake.

  85. Would it be practical to have 4 USB ports using an SoC for each port, since 2 port and 4 port hubs are impractical? I’m pretty sure the newest Sun keyboards have at least 2 ports; I know my $500 ergonomic keyboard with foot pedals has 2 ports. (you know, the one with the Enter and Delete keys under your thumbs)

  86. All right, dumb question time. Why are USB keyboards limited to 6-key rollover? I wouldn’t have thought the communications technology would make a difference.

  87. All right, dumb question time. Why are USB keyboards limited to 6-key rollover? I wouldn’t have thought the communications technology would make a difference.

    Because the USB HID report descriptor for keyboards only specifies an eight-byte report packet: one byte for modifier keys, one padding, and six bytes to report the scancodes of pressed keys.

    It’s dumb.

    There are keyboards such as the Razer Tarantula that can report more pressed keys, probably by presenting their own custom report descriptor to the OS’s HID layer, but these require special driver support and putting the keyboard in a special “legacy off” mode.

  88. Does anyone know: can you get one of these buckling spring clicky keyboards that is wireless?

    I use a Logitech myself; it is not all that great but I really like that it is wireless, the keyboard and the mouse.

  89. @Jeff Read:
    >Which is part of the reason why Ubuntu is on the fast track to irrelevance: Canonical has to do shit differently just ’cause.

    Maybe, maybe not. They’ve been ticking a lot of people off with that tendency (myself included), but if Murphy’s Law has anything to say about it, they’ll manage to hang on to relevancy despite that. Maybe even because of it.

  90. >Does anyone know: can you get one of these buckling spring clicky keyboards that is wireless?

    Ain’t no such animal. But a cheap Bluetooth dongle would probably do what you want.

  91. Jay Maynard, I think that is exactly the approach we will have to take. X11 should be able to handle it; isn’t there a config in X11 to tell it that certain keys are “modifier keys” or is it still limited to 8 buckybits itself? At the very least, Open Source software can watch keypress events, and figure it out itself. Let each keyup and keydown event toggle bits in a virtual keyboard, then compare that virtual keyboard against a particular state with xor to figure out what actual keyboard event was intended by the user. Be useful if X tracked this info, then we just request “dump keyboard state” and xor it against various states that we are interested in. (assuming 1 bit per key, 256 bits to represent a virtual keyboard, 1 is on, 0 is off)

  92. The following comment was sent to the wrong blog the last time I commented upthread.

    The crowd-funding option could offer an update of the Unicomp keyboad. The users don’t get equity, they get keyboards. Perhaps 200 commitments at $150 each would be sufficient? If the threshold isn’t reached, the funds could be refunded minus the processing fee cost.

    The features of the new design have to selected to induce the commitments required.

  93. Just found a webpage (linked it on the wiki page) that explains the USB protocol itself DOES allow N-key rollover. It says it is the legacy HID stacks that aren’t supporting it, they are dropping any key beyond the first 6 pressed. So, this is exactly what Linux can excel at. Fix the frikkin HID stack to allow N-Key rollover, whether libusb or in the kernel. Anyone care to post about this on LKML? This 6-key rollover limitation is an artifact and Linux should not be bound by it anymore (nor any of the BSDs). IBM keyboards originally had full N-key rollover, so the diodes and circuitry should still be there on the Model M, just needs tweaks to the USB microcode. If we implement N-key rollover, the keyboard will still work up to 6 keys for everyone, and then work up to n-keys as they fix their USB HID stacks..

  94. Jeff: So why can’t it just send n packets in a row?

    There are no key-release events in the HID spec. Each HID report that comes over the wire is a status update of which keys are currently being pressed. So if I tap the A key, when A is pressed the keyboard sends a single report with the scancode for A in the first slot (and zeroes in the remaining slots). Then when it is released, the keyboard sends another report with all zeroes in the scancode slots.

    Under this scheme, if a report comes in with the scancodes for keys A, B, C, D, E, and F followed by another report with the scancodes for keys G, H, I, J, K, and L, the OS would consider the first six keys to be released and the second six keys to be pressed. The only way to indicate that a key is still being held down is to put its scancode in one of the scancode slots (or else, if it be a modifier key, toggle its bit in the modifier byte). And there are only six scancode bytes. Or rather, that’s what the HID spec specifies; device makers are free to craft their own report descriptors that allow for more scancode bytes, and Linux may even recognize them and happily report more keypresses. But Windows won’t without a lot of hassle, and Windows is the only OS that really counts. So six-key rollover is all you’ll see in the wild.

    Be useful if X tracked this info, then we just request “dump keyboard state” and xor it against various states that we are interested in. (assuming 1 bit per key, 256 bits to represent a virtual keyboard, 1 is on, 0 is off)

    The XQueryKeymap API is exactly what you want.

    But remember, X is deprecated; a big part of the reason why is because X no longer models modern hardware. This is mainly true of display hardware; but input hardware has also evolved, and it’s proven difficult for X to catch up. The preferred way to get keyboard input info under Linux is now to open the /dev/input/eventX device and read it directly.

  95. Fix the frikkin HID stack to allow N-Key rollover, whether libusb or in the kernel. Anyone care to post about this on LKML?

    See my message above; I’m not sure that Linux couldn’t properly interpret a HID report descriptor that allowed for N > 6 key rollover, and I’d be hella surprised and disappointed if it couldn’t.

    But Windows can’t — not with its default driver without fiddling anyway — and if a device doesn’t work on Windows, it doesn’t work.

  96. I don’t care if Windows can’t. Windows can catch up to Linux. It is time we had our own hardware. I’ve been trying to find the HID protocol spec; can you provide a link? I want to see exactly what it says about this 4 buckies and 6 scancodes type of packet. My usual 1/2 hour of Googling has only turned up fluff; if you can provide a link, that would be nicer than me going to phase 2: starting to phone people up and pester them. ;)

  97. No need to buy Unicomp; if you do a kickstarter, then just raise the $100k, Unicomp will be HAPPY to update all the things that need updating.

    Yes, this is what I meant. Why buy the company as opposed to help them via Kickstarter?

  98. One problem with the cherry mx-style keys is determining which ones will work for you. As someone who used buckling-spring keyboards back in the day but is now stuck with the typical cheapo design, I’d like to consider the other kind. But with four different cherry types, I’m not sure how I’d be able to tell which would be best for me. I certainly wouldn’t want to buy a keyboard just so I could try it out for a week and then return it to try the next harder–or softer, whichever–style of switches. Especially not if I had to mail-order them!

  99. Since the patent is expired on buckling spring technology, why ever would you buy Unicomp? Just build out the keyboards you want. Extra points if you make STL files out of it all and 3d printable.

  100. Since the patent is expired on buckling spring technology, why ever would you buy Unicomp? Just build out the keyboards you want. Extra points if you make STL files out of it all and 3d printable.

    Building keyboards like that in any sort of scale requires factories and tooling. UniComp’s advantage here is that it acquired the original Model M factories from Lexmark.

  101. Ted Walther askd for the USB spec – and it’s here.

    See page 62/63 (internal to the PDF) for the Keyboard implementation spec.

    Note “The limit is six non-modifier keys when using the keyboard descriptor
    in Appendix B.

    (Appendix B is pages 59/60 is the Boot Device specification, ie Legacy PC Hardware At Boot Time stuff, and shows the Report message people were talking about.

    Since almost everyone not on a Mac is using hardware that has a PC BIOS or something compatible with it that expects such a keyboard packet in the firmware, it’s very useful for a USB keyboard to support that, despite the chording limitation that something like 99.999% of the market never knew about, let alone cared about, because it’s very useful to have a keyboard that can be used at boot time.)

  102. In relation to the USB n-key rollover –

    This is a solvable issue. Andy Warne at Ultimarc (www.ultimarc.com) sells custom keyboard encoders with no roll over limitations. They were originally designed for interfacing arcade controls such as joysticks and buttons – which are essentially Cherry microswitches with actuators attached.

    (For gaming purposes it is very important not to be limited by rollover as it is common for there to be as many as 16 simultaneous switches pressed.)

  103. TomM,

    Okay, now solve the issue and produce a keyboard that Just Works in all circumstances, for all USB-capable systems.

    You can’t.

    Workarounds (DIP switches, magic keychords, etc. to switch between 6KRO and NKRO) exist, but the benefits of increased uptake in niche applications just aren’t worth the added cost — to the manufacturer and the end user — of workarounds, the sole exception perhaps being gaming. UniComps are not gaming keyboards, so the chances of them fixing the rollover issue are close to nil.

  104. >it is common for there to be as many as 16 simultaneous switches pressed.

    Wait. How? Human beings only have 10 fingers.

  105. @Jeff Read – We’re solving two different problems. My solution is to cover the issue that certain products get made regardless of the marketing failures of the current incumbent. Your objection is that products won’t get made cheaply. When millions of dollars are the entry price to fix the problem at a mass scale, sometimes hand crafting is the answer even though the unit costs are much higher.

  106. Sigivald, thank you for the link to the USB spec. TomM, I agree N-key rollover is solvable. Maybe Andy Warne would be interested in working on this project.

    Now, I see a slight hiccup in the idea of starting a kickstarter campaign. What are the NECESSARY features the majority of us can agree on? Not everyone agrees with some of the ones that are important to me. For instance, I think it is very important that it have at least one extra USB port to plug a mouse into. And N-key rollover for gamers, braille, and stenographers. And tunable color backlist keys. And adding extra LED’s just because.

    Perhaps the “changing the keyboard layout” should wait… although we must make sure the Super and Meta keys used by Gnome are properly supported. Once we start changing the keyboard layout, everyone has their own preferences. Some want Type 5, some want Space Cadet, but I think we can all live with something very close to the Model M layout. Perhaps after talking to some engineers the Model M electronics can be redone so it is easier and cheaper to make new layouts. Who knows. I’ll call Unicomp in a day or two and make exact inquiries on the topic. Eric is right; the first model should just get the fundamentals right, so probably doing new layouts is out of the question. New layouts come in round 2, after the sales have been bumped upward.

    I will also inquire if buckling spring can be made a bit quieter. Probably not, but it is worth asking. My office sounds like a barrage of artillery. I find it very satisfying, but my roommates not so much.

  107. @esr
    >Wait. How? Human beings only have 10 fingers.

    Remember that a simple digital joystick has a switch for each cardinal direction. Hence diagonals involve striking 2 switches simultaneously.

    On a standard 2 player arcade cab panel with 2 joysticks, 6 buttons per player (Think Streetfighter 2 etc) you therefore have a maximum of 2 directional switches plus each of the 6 action buttons possibly sending useful information for each of the 2 players (hence 16 inputs).

    @ Jeff

    The encoder I use for my arcade cab is talking to a Debian box without any configuration from me. According to the Ultimarc website, no drivers are required for Mac and none for Windows (other than those available on the Windows XP install CD – I now have no Windows installations of any description other than a Virtualbox install of XP so can’t test later iterations of Windows.)

    Andy has spent quite a few years refining his product and is a super guy to boot. I expect there would be few who know more about keyboard protocols than him.

  108. >Remember that a simple digital joystick has a switch for each cardinal direction.

    Please don’t change the subject. My question was about chords pf 7+ characters on a keyboard.

  109. Please don’t change the subject. My question was about chords pf 7+ characters on a keyboard.

    If the thing presents itself as a keyboard to the USB, it’s a keyboard for purposes of NKRO discussion. For an arcade joystick this might even be likely; standard arcade sticks do not have valuators but rather simple switches in each direction.

  110. I have a Truly Ergonomic keyboard but hate it, mainly due to their decisions about where to put important keys like CTRL, SHIFT and TAB – just couldn’t get used to it (even after > 1 month), but quickly lost ability to type productively on normal keyboards – lose/lose. Then I discovered the ErgoDox semi-DIY keyboard (currently in third group buy on http://www.massdrop.com): Cherry MX mechanical switches (blues, at the moment – love the tactile and audible feedback!), split and angle-able, thumb clusters, every key reprogrammable (uses Arduino-like Teensy as controller), virtually-unlimited layers of keymaps available, 6-key rollover. I love love love it, although wish it had one more row of keys. Once I settle on a layout that I can live with forever, I’ll get custom keycaps made for it (from http://www.wasdkeyboards.com or http://www.keycapsdirect.com).

  111. @ esr
    >Please don’t change the subject.

    Eric, I’ll clarify. My previous post referred to a custom keyboard encoder developed specifically for interfacing arcade style controls (buttons and joysticks) to a PC. This looks like a keyboard to the OS but has no rollover issue, thus demonstrating that the USB rollover issue raised by other commenters is solvable.

  112. Pingback: Keyboard Mania – Thanks, ESR! | Daily Pundit

  113. Two humans have collectively more than 10 fingers. I’ve seen two players on a single keyboard, and I’m not sure if they are always in two-player mode, or if sometimes they are sharing the single player role.

  114. I was asked a while ago what I meant by QWERTY penalizing touch typing. I actually wasn’t referring to the old stories of how it came to be or how it was supposed to optimize typewriters not colliding. I was referring to the observational fact that people who have been typing for even decades frequently do not touch type. Here I’m using a strict definition of touch typing, whereby your fingers stay in the “home key” positions, where your index fingers are placed on the keys with the little bumps on them when not in use. This is distinct from “typing without looking at the keyboard”, which all such people can do. QWERTY users’ hands tend to wander, depending on what they’re doing.

    This is because QWERTY is not properly centered. Take a look at the charts in this blog post. I’m not endorsing the rest of that post per se, just reusing the charts. Note how the right hand in particular on QWERTY has nothing useful under it in the home row, so of course you don’t touch type. I’m not being critical of people “not doing it right”; the human brain is a powerful optimizer and when absolutely everybody does it “wrong” after ten+ years of experience, the dominant hypothesis must be that your definition of “wrong” must be wrong. Especially for such a simple task. It simply isn’t optimal to truly touch type with QWERTY. Your right hand in particular is pulled up and to the left of where it “should” be (by the H, N, I and O).

    By contrast, your fingers naturally stay in the home row with Dvorak, because that’s where your letters are. You don’t need to “learn” to touch type. The human brain naturally comes to the conclusion that that is the correct place for the fingers to be on its own. It would render half my middle-school typing class a waste of time, in which I swear the teacher was passionate on the topic of touch typing because it was the only concrete thing on the curriculum.

    Is that enough reason to learn it? I don’t know, but if you are concerned for whatever reason that you aren’t touch typing, it probably truly is easier to learn a layout that makes it easy than try to convince your brain, falsely, that touch typing is a good idea with the QWERTY layout. It’s very, very hard to lie to your cerebellum.

  115. Jeremy Bowers, awesome post. I’ve been thinking of redoing that genetic algorithm that was posted to slashdot in 2012, that generated a keyboard layout very close to dvorak.

    The more I think about the “fitness” function to test possible keyboards, the more tempted I am to make it complex. it is simple to limit yourself to a flat plane and same size keys. What if the keys each had a minimum size, but otherwise could float around and “grow” in any direction? What if keys could be duplicated? Ie, n-choose-k WITH replacement. How many shift keys would be optimal and where would they end up? What if the letter “e” was in 2 or 3 places? What if the upper case form of a letter wasn’t limited to being shift+lowercase? What if the shift key was just used to access another register, as is done with number keys and the symbols on top?

    It would be handy to have real keystroke data for vi and emacs users, including all the alt, control, and shift key combinations they used, so I could add that to the fitness algorithm. Modeling the stretch of the hand is a little daunting for multikey combos, especially if you want to have 3 buckybits held down at the same time. Also for GNOME and KDE. Perhaps some keycombos would end up with a key of their own, like “alt-tab” and “ctrl-tab”.

    I’m really fond of my Kinesis Advantage that has all those buttons under the thumbs, it grows on you quickly, I just don’t like the switches they use.

    Computer speed has improved enough in the last 11 years that the fitness test should run way fast and more variants can be tested with a greater number of descendants being allowed to evolve out of local minima before being culled.

  116. I’m no super computer user but I like finding out about so called obsolete things that work better than their descendants.

    I know a person who has a warehouse full of old computer equipment that is meant to go to the recycler. So…maybe if I poke around in there I can find some Model Ms.

  117. See if you can find a Model F; they are supposed to be 4x as reliable, and require slightly less finger pressure to actuate.

  118. I’m no super computer user but I like finding out about so called obsolete things that work better than their descendants.

    Me too, it’s why I’m a Slackware user :)

  119. If the thing presents itself as a keyboard to the USB, it’s a keyboard for purposes of NKRO discussion. For an arcade joystick this might even be likely; standard arcade sticks do not have valuators but rather simple switches in each direction.

    But a joystick need not record “Stick 1 Up” and “Stick 1 Left” as two simultaneous “keypresses”; it can represent it as a scancode for a “Stick 1 Up+Left”. So your two sticks each have eight codes for direction, and however many buttons they have. You probably don’t need to keep track of more than two buttons per joystick at a time, which keeps it to the “6 keycode” limit.

    The only way I can see to get around the 6-code limit for a keyboard to do court-reporter-type transcription is to create similar composite codes for groups of keys that would be pressed at the same time. But then you’d have to define a standard way to interpret these new codes.

    It’s really sad that the USB people went backwards on this. The old AT/PS2 keyboards sent one code for “${Key} Make” and another code for “${Key} Break”, [If memory serves, there were two schemes for this: Originally, the high bit of the code was 0 for Make and 1 for Break; then the Break code was a byte inserted prior to the final byte of the Make code (which was usually one byte but some funky keys like PrtSc had two or three byte codes).] so that a program that accessed the raw keycode stream could recognize pressing certain codes in a chord in a certain order in a specific way.

  120. It’s really sad that the USB people went backwards on this.

    I know. Like I said, it’s stupid. Their keypress-reporting scheme is bad and they should feel bad.

    But a joystick need not record “Stick 1 Up” and “Stick 1 Left” as two simultaneous “keypresses”; it can represent it as a scancode for a “Stick 1 Up+Left”. So your two sticks each have eight codes for direction, and however many buttons they have. You probably don’t need to keep track of more than two buttons per joystick at a time, which keeps it to the “6 keycode” limit.

    You don’t really know how gaming works, do you. Even if you’re only intending to press two buttons at once, rapidly switching buttons could lead to situations where you are pressing the next button without releasing the previous. If that extra button press blows your six-byte keypress buffer, as may easily happen with two players on the same keyboard device, a button press you wanted to be registered won’t be, and it will screw with your game. There’s a reason why NKRO is such a big deal to PC gamers, who usually are not even working the keyboard with both hands (one hand is usually on the mouse).

    As for adding diagonal keyswitches, you really haven’t solved the problem, only kicked it down the road a ways and you may have made things worse. Competitive fighting games such as the Street Fighter series rely heavily on “gestures” with the joysticks as well as button presses to give players access to their characters’ martial-arts superpowers. For example, to perform Ryu’s Hadouken (a basic ki blast or “fireball”) when facing right,, you start by pulling the joystick “down”, then rolling it in a quarter circle to the right and hitting a punch button. This has to be done perfectly and fast in order for the move to be performed. If it’s just a little bit off, then Ryu will perform a much more basic move instead and possibly open himself up to damage from the opposing player. With the four-way joystick scheme, the keypress sequence might look like: player 1 down, player 1 down + player 1 right, player 1 right, player 1 right + player 1 hard punch. With an 8-way joystick scheme, the simultaneous down and right keypress won’t be simply replaced by a down-right keypress; instead, the input stream might look like: P1 down, P1 down + P1 down-right, P1 down-right, P1 down-right + P1 right, P1 right, P1 right + P1 hard punch. That complicates matters and does not solve the problem of a joystick registering two simultaneous keypresses.

    Besides which, if you are playing Street Fighter in an emulator, the emulated system will not have inputs for the diagonals

  121. With the four-way joystick scheme, the keypress sequence might look like:
    player 1 down, player 1 down + player 1 right, player 1 right, player 1 right + player 1 hard punch. With an 8-way joystick scheme, the simultaneous down and right keypress won’t be simply replaced by a down-right keypress; instead, the input stream might look like:
    P1 down, P1 down + P1 down-right, P1 down-right, P1 down-right + P1 right, P1 right, P1 right + P1 hard punch.

    No, it wouldn’t. The keyboard would not send a P1_down and a P1_down-right at the same time. The entire point of having a P1_down-right code is to not send it and either of its constituent parts at the same time.

    Besides which, if you are playing Street Fighter in an emulator, the emulated system will not have inputs for the diagonals

    No, your emulator would have to translate the diagonal composite codes back to the make/break codes which Street Fighter must be accessing to discern the sequence of “keypresses”. It would be an ugly kluge to bypass the idiotic choice of the USB/HID team to ASS|U|ME that no more than 6 simultaneous non-“shift” keys would be relevant.

    Unless it’s possible for a keyboard in non-boot/legacy mode to be able to send longer payloads than boot ROMs know how to parse. My cursory reading of the spec doesn’t leave me with a clear sense of whether the 6-key limit is solely of the boot-time device or of the HID.KB protocol itself.

  122. Unless it’s possible for a keyboard in non-boot/legacy mode to be able to send longer payloads than boot ROMs know how to parse. My cursory reading of the spec doesn’t leave me with a clear sense of whether the 6-key limit is solely of the boot-time device or of the HID.KB protocol itself.

    It’s difficult without a bit of intensive study to figure out exactly what the deal is with USB and HID. Here’s how it seems to work:

    Each HID device sends to the host system a report descriptor, a blob of bytes that describes, in detail, what reports from that device will look like, what information they contain, and what the valid ranges are. So it is perfectly possible for a device to send a report descriptor that allows for more than six keypresses, and to send reports that contain more than six keypresses in line with this descriptor.

    The HID standard specifies a default report descriptor that allows for six keys for use in “legacy mode”. This is so you don’t have to implement a full USB stack in BIOS. In order for your keyboard to be usable from within the BIOS, it must produce reports of this format.

    That’s all well and good, if you can live without your NKRO keyboard being usable from the BIOS. However, the six-key standard legacy keyboard report is also the only one that certain popular operating systems can read reliably. So for compatibility purposes, keyboard manufacturers tend to report only the six-key report.

    Some gaming keyboards get around this limitation by presenting themselves as multiple keyboard devices, but this tends not to play well with Mac or sometimes even Linux. It’s also a hack and not at all what TomM was talking about.

    The joystick setup for TomM’s arcade cabinet has custom microcontroller firmware that allows it to report more than six keys actuated at once. This renders it incompatible with BIOS and possibly also Windows, but that’s irrelevant for his uses.

  123. Thank you Jeff Read. So, how about this: keyboard sends the 6-key packet whenever possible. BIOS mode is only needed when going in and modifying BIOS settings, controlling boot, etc. More than 6-kro isn’t needed. Once a modern OS kernel takes over, it has its own HID driver for the keyboard. So, if a user needs to mash more than 6 keys at once, let the keyboard send a valid HID packet with all the keys. If the OS has taken over, it will work. If it is still in BIOS, then the BIOS should fail gracefully, ignoring the extra keystrokes. But really, in any BIOS config I’ve been in, I’ve never needed more than a keystroke at a time. It would be nice to have a USB emulator to plug into a bunch of different motherboards and test how they respond to greater than 6-kro. If they crash, that isn’t good. But that code pathway should only be exercised if someone presses more keys at once. But the standard is for just ignoring any keys after the first 6, which harms nothing. I mean, hey, it’s only the BIOS configuration. If you have a custom “bare to the metal” app, then write your own HID driver.

  124. What I’m saying is, if we ship the NKRO keyboard, just tell people “don’t hit more than 6 keys during boot time”.

  125. The HID standard specifies a default report descriptor that allows for six keys for use in “legacy mode”. This is so you don’t have to implement a full USB stack in BIOS. In order for your keyboard to be usable from within the BIOS, it must produce reports of this format.

    What about multiple endpoints? Plenty of specialty gaming hardware already uses custom drivers to enable extra functionality not available in the stock USB class; could a keyboard with NKRO implement an additional optional endpoint that used a different setup from legacy HID? Might there be room for an unofficial standard there?

  126. What about multiple endpoints? Plenty of specialty gaming hardware already uses custom drivers to enable extra functionality not available in the stock USB class; could a keyboard with NKRO implement an additional optional endpoint that used a different setup from legacy HID? Might there be room for an unofficial standard there?

    Some gaming KBs already do this — for example, presenting themselves as three 6KRO keyboards to give you effective 18KRO. This is a hack and doesn’t seem to work well with Mac or Linux machines.

    The problem is, in addition to the BIOS, Windows itself has historically not been particularly smart about actually interpreting report descriptors and making good use of the strange report packets that keyboards may send in. Because the USB HID layer driver code was probably slapped together quickly, and besides which, 6 keystrokes ought to be enough for anybody. Because incompatibility with Windows = death in the PC hardware realm, 6KRO is an effective upper limit for a USB keyboard device without crazy hacks like the three-keyboard thing.

  127. If we Kickstart enough $$ to make a Linux keyboard, then we will have NKRO, and Windows can go fuck itself. But I bet Windows will quickly add support. Bill Gates is gone now, and they won’t want to lose the Gaming market due to lack of support for superior hardware.

  128. Some gaming KBs already do this — for example, presenting themselves as three 6KRO keyboards to give you effective 18KRO. This is a hack and doesn’t seem to work well with Mac or Linux machines.

    Sorry, I apparently wasn’t clear on what I meant. I’m not asking about sending multiple copies of the same legacy HID descriptor but rather having a different descriptor (maybe a different class is needed?) and mode-switching, sort of like the traditional 386 protection-mode boot sequence. It mightn’t use the standard HID KB driver at all. Windows gamers are used to installing custom drivers for oddball hardware, so lack of built-in Windows support wouldn’t be a deal-killer for a new niche product.

  129. Ted Winter, you’re showing signs of the classic Linux zealot disease. No, building a better mousetrap will not automatically bring the world to your door. Quit listening to your fellow zealots and get out into the real world.

  130. Come on, buying this and that model, really?
    True hackers make right keyboards for themselves:
    http://catboard.klava.org/index.html

    Open hardware, open source software – any kind of switches you like: can it be any better?

    Company don’t have enough resources for innovation, seriously? I’m not byuing this nonsense – even single dedicated hacker have enough resources to make it. Maybe because he do not have to waste time and money on marketing, pr, management and all the other useless folks?

  131. Sorry, I apparently wasn’t clear on what I meant. I’m not asking about sending multiple copies of the same legacy HID descriptor but rather having a different descriptor (maybe a different class is needed?) and mode-switching, sort of like the traditional 386 protection-mode boot sequence. It mightn’t use the standard HID KB driver at all. Windows gamers are used to installing custom drivers for oddball hardware, so lack of built-in Windows support wouldn’t be a deal-killer for a new niche product.

    And a few keyboards, e.g., the Razer Tarantula, do just this. But they are rare, expensive, and fiddly — requiring both custom firmware in the keyboard and a custom driver. That’s a lot of engineering for very little profit gain.

    I find it quite interesting that “gaming keyboard” means something quite different now than it did even a few years ago. In 2008 I owned a “gaming keyboard”. It was an obnoxious thing with Space Shuttle controls, a built-in LCD, and rubber-dome keyswitches that bottomed out early — meaning after minutes of typing on it my hands turned into gnarled, aching claws — and it’s been collecting dust since then. Gamers appear to have gotten wise since that time and realized that keyfeel, responsiveness, durability, and NKRO trump gadgetry every time.

  132. So, inspired by this blog, and also with encouragement from my brother who is a tactile keyboard fan, I’ve just ordered a brand new TVS-e Gold Bharat keyboard, which uses the Cherry MX blue switches. It cost around INR 1800+ which is equivalent to USD 30 or so.

    Since I do a lot of typing for legal documents I feel a mechanical keyboard would help me.

  133. Just received the TVS-e mechanical keyboard with Cherry MX blue switches and wow… what a difference it makes already to my typing. I am able to type much faster now than on my usual laptop keyboard and the lovely click-tactile feedback is wonderful. I am glad to make the switch from the soft membrane keyboard to a real mechanical keyboard even though it is not a buckling spring keyboard. It is also ligher on my fingers than I anticipated.

    The only negative (so far) that I’ve noticed is that I am making more typos typing faster than before, but that is due to my own lack of proper typing practice than due to the keyboard itself. I believe this keyboard will help me rediscover proper typing technique which will also help me avoid strain on my wrists and fingers.

    Luckily on my HP Touchsmart laptop, I am able to rotate the screen fully so I can keep the screen at the same distance away as before.

  134. The Rosewill RK-9000I looks like a good, no-frills mechanical-switch keyboard. It’s marketed as a gaming keyboard, but it doesn’t have any of the extras that one commonly finds in gaming keyboards, such as programmable hot keys, and there’s no special Windows-only software to go with it. It uses Cherry MX Blue switches, and based on what I’ve read, those are better for general typing than for gaming.

  135. What I’d like to see is plot of displacement vs reaction force (press and depress), the point of engagement and the “click” point for different key switches.

    If possible also muscle tension when using keyboard, or if not possible micromovent, when typing on various keyboard layouts and key switch systems.

  136. Apple’s usability research has confirmed that using the mouse is actually faster than using the keyboard alone. If it bothers you that much, though, there are keyboard-driven WMs like i3wm you can try, as well as keyboard-friendly applications like the Web browser conkeror.

    I’m familiar with that study myself; interestingly enough, the study also concluded that an exception to this is using text-editing shortcuts like Ctrl-X and Ctrl-V. What makes Emacs and Vim so powerful is that they are mostly *just* big collections of text editing commands! I also like the command line over using the mouse with a braindead navigator; to a certain extent, however, the command line is a text editor as well.

    Now, as for browsers, I pretty much *can’t* use them without a mouse. Every time I’ve tried to use a text-based browser, I found it very annoying to browse without graphics, and without even the possibility to display them, and furthermore, links actually lend themselves to “point-and-click” such that tabbing to links, while an important and useful “shortcut” under limited circumstances, is generally rather painful.

  137. I’ve been using the TVSE mechanical keyboard (Cherry MX blue) for a while now. And definitely I have got used to it enough that I wouldn’t consider typing on a membrane keyboard regularly any more. Today I was forced to use an outside computer (in a DTP centre) to make some changes to a document and the keyboard was horrible to use in comparison (it was a cheap membrane keyboard with many of the keys stiffened by long time use and wear and tear)

    Incidentally I have also started trying out a different layout (the Colemak layout) and am practicing on it for a while. I don’t want to lose my qwerty touch typing skills though and I am taking it cautiously and slowly.

  138. I just purchased some custom keys for my Unicomp and was asked to complete a satisfaction survey. This is what I sent in the free text section:

    Hi,

    Firstly: I love your products! I’m a contractor, I carry my Unicomp around with me to all my gigs, and tirelessly evangelise it. I’ve even written an entry on my Recommended Products page:

    https://github.com/duncan-bayne/duncan-bayne.github.com/wiki/Recommended-Products#unicomp-on-the-ball-104105

    In terms of what I wish you’d start doing …

    1. Offer an ergonomic keyboard. I love the feel of the buckling-spring keys, but I’m still having to contort my wrists like it’s 1999 (apologies to TAFKAP). I often say that nothing could tempt me away from my On-The-Ball, but if you made an ergonomic keyboard I’d trade up and give my On-The-Ball to one of my friends with RSI. In fact, I’d pre-order a Unicomp ergonomic keyboard. In fact, I’d donate to a Kickstarter project to cover the R&D. Please do it!

    2. Modernise your website. Ordering is still a weird process (1999 again) and the shipping is awkward. I recently ordered some keys. I’d been putting it off because of the shipping costs which seemed extraordinary for a few keys. Then after placing the order, most of the shipping was refunded. I really appreciate that, but the whole experience would have been much better if the shipping costs were correctly calculated by the site. Also, I had to email someone to ask what colour my keys were, because I couldn’t figure it out by reading your site.

    3. Put a USB hub in your keyboards. At least in the case of my On-The-Ball there’s plenty of room; it’d be nice to be able to attach my phone, memory sticks etc. directly to the keyboard as I can with Apple keyboards.

    4. Add media keys. Given the choice between a proper keyboard like the On-The-Ball and fancy buttons to control my music, I’ll take the former every time. But it’d be nice not to have to make the choice.

    5. Advertise! Most people I know haven’t heard of Unicomp, and yet your products are fantastic. In particular, the trackball models are great for pair programming as there are no mice scuttling around the desk. I realise advertising is expensive, but prize giveaways at meetups, viral YouTube videos, affiliate programs etc. could work in this space. Press releases pushing the health aspect of well engineered keyboards. Sell to corporates: “we will save you money by reducing the incidence of RSI, increasing productivity, and making employees feel pampered.”

    6. Put a scroll wheel by your trackballs.

    Finally, thank you. You’ve improved my quality of life with your products.

    Yours,
    Duncan Bayne

  139. Keyboards may not be a detail, but details can be important. (Remember the old saws about God and the Devil both being in the details.)

    In my case, a mechanical keyboard (with cherry blue switches) was different from but no better than my old rubber-dome keyboard until the details were taken care of. In particular, finding (and modifying) the right wrist rest for the new keyboard, and making the rubber o-ring modification to the keyboard itself.

  140. I just took delivery of a new Lenovo ThinkPad L530. It has the new chiclet-style keyboard with (they claim) the action of the lovely old Lenovo keyboards.

    Well, I’m convinced. The new layout is easier to type on, the feel is still great, and it’s possible to obtain these keyboards with backlighting (the L530 doesn’t have it).

  141. I just had an awesome experience with Unicomp that I’d like to share.

    After my mate Nigel had finished hassling me about Emacs referring to the ‘meta’ key, I thought I’d ask Unicomp how much it’d cost to do a set of meta, super and hyper keys for my On-The-Ball.

    I sent them this (laughable) mockup:

    http://postimg.org/image/68l2eqpwh/

    … and a couple of days later they had these ready for me to buy, for just US$10.

    http://pckeyboard.com/page/product/HSM

    Not only do they make the world’s best keyboards, they have excellent customer service to boot. The rep even emailed me to check the order, as I’d ordered grey keycaps but the mockup featured keys of a different colour. Attention to detail like that in customer service is *so* rare these days, and so welcome.

  142. Typing this on an IBM Model M (1391403 model). I know this blog post is old, but I am truly beginning to appreciate why this keyboard really rocks, even compared to other mechanicals. Of course the actuation force is a bit high and takes a little bit of getting used to while typing fast (as I sometimes miss out pressing the key with too little force). But otherwise, a wonderful buy. I would have loved to get a Unicomp as well, but the shipping cost is prohibitively expensive and adding the taxes to it makes it that much harder to justify.

  143. “but the shipping cost is prohibitively expensive and adding the taxes to it makes it that much harder to justify”

    If you don’t mind me prying … how much did the rest of your system cost? I’ve had this conversation with people before – saying they can’t justify getting a decent keyboard, when the rest of their system costs an order of magnitude more.

  144. > If you don’t mind me prying … how much did the rest of your system cost? I’ve had this conversation with people before – saying they can’t justify getting a decent keyboard, when the rest of their system costs an order of magnitude more.

    I can get a netbook at the price I would pay for Unicomp to ship their lowest priced keyboard to India and pay the customs duties etc.

    What makes it hard to justify is that the price shoots up with the currency exchange rate as well, so it’s not just the USD price I’m worried about + very high cost USPS shipping + taxes, but also the exchange rate and currency conversion fee.

    But that’s why I got my brother (residing in Germany) to get me an IBM Model M (1391403 layout) and get it shipped locally so that he could bring it home when he came here. That way, I’ve got an authentic Model M as well.

  145. hari,

    Right, yes – I can imagine that would all up if importing into India. It’s not nearly as bad in Australia, courtesy sensible shipping costs, no duties (at least, not that I noticed ;) ) and a reasonably strong AUD.

    Perhaps a group buy could help? I’ve organised a few, for hardware that’s a bit pricey to import into Australia one-off. I’d suggest emailing Unicomp and asking them whether there are any bulk discounts available too … the staff there have proved really helpful to me in the past.

  146. Let me clarify that: at the time when INR was very weak against the USD, I could have bought a netbook. Right now, it’s a bit cheaper, but still quite pricey to import.

    I asked Unicomp about whether they have offices in other regions, but their reply was negative. It appears to be US centric only. If they had shipping from Asia Pacific, I could definitely afford it.

    My thought is, why waste good money on things like shipping and taxes, more than doubling the originalproduct price?

  147. > Perhaps a group buy could help? I’ve organised a few, for hardware that’s a bit pricey to import into Australia one-off. I’d suggest emailing Unicomp and asking them whether there are any bulk discounts available too … the staff there have proved really helpful to me in the past.

    Problem is finding interested parties. I am not sure how many geeks around here are even aware of the IBM Model M and its successor Unicomp and the legendary status enjoyed by these products.

  148. “Problem is finding interested parties. I am not sure how many geeks around here are even aware of the IBM Model M and its successor Unicomp and the legendary status enjoyed by these products.”

    Hmmm, true. But of course that’s a marketing opportunity too … at least, that’s how I’d pitch it to Unicomp :)

    “My thought is, why waste good money on things like shipping and taxes, more than doubling the originalproduct price?”

    Well, it depends. In my opinion, the Unicomp is by quite some margin the best keyboard on the market (unless you work in a noise-sensitive environment). Pragmatically, it doesn’t matter to me what causes the total price to be what it is; the only relevant question is: is the total price worth the utility offered? In my case, it was.

  149. I agree with you on the utility/price issue. But for me, luckily I had another option, i.e. my brother staying in Germany and finding a few German layout Ms on ebay.de site. Not only did it cost much less than it would have both price-wise and shipping wise had I ordered the Unicomp, but for me, it gave me the satisfaction of getting my hands on an original Model M.

    I am sure the Unicomp is well worthy of the price and utility though. But justifying it to my wife is another thing. Haha…

    So I compromised on the physical layout (minor issue for me) for the option of getting the IBM at a much lower price than the Unicomp, and I don’t find it that hard to use the German layout as compared to the US layout. Yes, one or two keys are shaped different, but then I get used to them quickly and I also memorized the position of the symbols, so it hasn’t reduced my productivity.

  150. I may note here that I’m used to the Enter key occupying two rows, because the Asian Enter key is similarly shaped as the ISO Enter (reverse fat L shaped, also known as Big-Ass enter key)

  151. Mine seems to be in fairly good condition and it was also cleaned by the Ebay seller before he put it up on auction. There is a slight chip in the lower left corner of the keyboard where the bottom board is fixed to the top cover, but that’s a very minor issue. The date is 1996, made by IBM UK and uses the regular PS/2 cable (non-detachable). I am using it now on my laptop with an active Ps/2 to USB converter with no issues so far.

    I’ve been seeing a few comparisons of Unicomps vs Model Ms on the internet, and some of the reviewers say that the Unicomp is missing the slight resonance/twanginess of the clack sound when the keys are actuated. Anyway both sound more or less the same to me on youtube videos.

  152. Have you ever used the IBM with older hardware? I had some issues getting an old iMac G3 I was restoring to talk to the Unicomp; unplugging it and plugging it back in usually fixed it. I’m sure one of the hardware gurus here can explain exactly what was going on.

  153. > Have you ever used the IBM with older hardware?

    Not sure whether you consider this as really old hardware but, I’m using the IBM Model M with my more than 10 year old desktop system assembled originally in 2002 which I now use as my office system (it’s an AMD Sempron processor machine with ASUS Board) which I assembled myself and has had one change of CPU – from Athlon XP to Sempron, one change of motherboard, and also multiple graphic card changes). I use the native PS/2 connection in that machine and it works fine for me. That machines originally had Windows 2000 and then Windows XP and now dual booting XP and Debian (which is my main work OS).

  154. The PS2 interface may make the difference – the G3 was USB only, and there seems to be something a little odd about the USB interface on the Unicomp.

  155. > The PS2 interface may make the difference – the G3 was USB only, and there seems to be something a little odd about the USB interface on the Unicomp.

    Yes, I read something about the Unicomp USB issues. ESR has mentioned it in this article as well and I’ve seen other reviews mentioning the same. It seems to be an issue with the extra current being drawn by the older design still used in the Unicomp/Model M. The Google+ Tactile Keyboards community has something about this issue.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>