The keyboard is something that I use daily, and whether I’m writing e-mails or coding, I’ll likely do several hours of typing a day. Last summer when I switched to US layout in coding and started using Vim, I started thinking that maybe I should upgrade my seven year old Logitech keyboard to something hopefully better. And when I get such a project, I did what I always do: Went totally overkill with research and ended up spending a few hundred euros once I had made up my mind on the “most optimal choice” for me. :)
Update: If you’re interested in this review, you might want to check out my continuation with the Topre Realforce 88UB.
My worldview after 2000 was essentially that laptop type flat keyboards are the way of the future, and keyboard choice mainly depends on whether you buy a Logitech or Microsoft one, and do you get the top of the line model or an OEM version for 15 euros. Enter Geekhack and some interesting discussions at Stack exchange, and it quickly became apparent that there is more to it.
First choice one needs to make is the layout of the keyboard. Kinesis makes some weird looking ones that some people swear by, and there are matrix-type layouts, I decided I would continue to risk carpal tunnel syndrome with a “normal” layout for the time being, as I don’t want to optimize my brain for a keyboard type that would only be available at home.
Second choice is about the mechanism. Cheap keyboards are based on rubber domes. Many laptop keyboards and the Logitech I was using previously use a scissor mechanism which is a bit nicer. True hardcore keyboard enthusiasts like mechanical switches. Cherry makes many of those and they have different “colors” that have different tactile curve and sound – there are Cherry MX browns, blues, reds, blacks, and many more. Some swear IBM Model M keyboards with buckling spring switches are the best – Unicomp still manufactures those, but they are very noisy, and I didn’t want my late night coding sessions to be that loud.
And then there is Topre, which uses a patented electrostatic mechanism that many seemed to like very much. Topre keyboards are made in Japan, they are very expensive in US (for some reason here in Finland Verkkokauppa.com sells them at a reasonable price of 150 euros). I was considering Topre’s “tenkeyless” (i.e. a version without numpad) when I came across the Happy Hacking Keyboard.
Happy Hacking Keyboard Professional 2
The Happy Hacking Keyboard Professional 2, or HHKB Pro2 in short, is a minimal keyboard that, in addition to numpad, drops also cursor and navigation keys, as well as the function keys. On the left you can see how small it is even compared to a “tenkeyless” form factor keyboard (the CM Quickfire TK actually has the tenkeys, which double as cursor keys). The basic philosophy is that you’ll have all those keys in the minimal layout with additional function key, and your wrists will never again need to reach to cursor keys on the right side of main typing area. It also is a very good way to learn Vim’s use of hjkl as movement keys. :)
The layout is similar to US keyboards, but escape key has taken the place on left of ‘1’ (easy to reach for Vim use, again), and the tilde key is moved above backspace. Control key is in place of caps lock, a superb improvement which I’ve now replicated with a simple registry tweak to my work laptop, too. The switches are top-quality Topre ones, and weighted equally (some Topre keyboards have variable weighting based on strength of individual fingers pressing them, I want to try those some day).
In addition, the keyboard has internal USB hub with 2 additional ports on the back. The current capacity of those ports is somewhat limited, so power-hungry peripherals may not work. The price is somewhat steep (with customs I paid a bit over 300 euros for mine), but considering that the keyboard will likely give a decade of use, I’d say it’s a significantly better investment than a graphics card or SSD drive.
After using the keyboard for several months, I’ve come to like it very much. It has several significant positive attributes that I now miss every time I need to use the black Coolermaster one shown above:
- Great feedback: I love the feel of the Topre switches, they have some concreteness that flat keyboards just lack, without being too heavy or too light. I also like the Cherry MX blue switches, but Topre ones are definitely on par with the best mechanisms, it’s then mainly a matter of taste, not quality.
- Nice sound: It’s an additional bonus that when I finally get my writing or code flowing, the keyboard sound confirms this. It’s like the satisfying fizz of a soda can when you open it – you could do without it, but it just wouldn’t be the same. Also, the sound is not so loud as in many “clicky” keyboards.
- Form factor: It takes neglible amount of desktop space, as you can see from the photo. I only have one desk for both PC and electronics projects, and this actually makes a difference. It just oozes with minimalist practicality.
- Aesthetics: This is a beautiful piece of quality plastic, and people do notice it. You can even get the keycaps without printing if you want the extra leetness, but I like to be able glance every now and then where that & was again in the US layout.
- No function keys: Never again will I hit F1 when I tried to press escape and have Windows load a help file for me. Those who constantly use function keys might be annoyed by having to use Fn+4 etc. to drive their media players to run macros, but I just don’t miss them. Alt-F4 is only one that I often need, and it isn’t any harder because Fn and Alt are side by side, I just press them both down at the same time (actually, I avoid reaching for the F4 key with HHKB)
- No cursor keys: This is excellent for learning Vim, but I also think that over time when I get more accustomed to the Fn+key layout, I will actually like them. But this IS a hard learning curve, so you’ll see this same item also in “weaknesses” section.
- Esc is near: It’s 23 % faster to reach in Vim and other applications.
- Ctrl where it should be: This is a boon for anyone who uses keyboard shortcuts. If you haven’t reconfigured your keyboard like this already, do it now.
- Great Unix experience: The keyboard actually has “meta” character, and compared to international keyboard with Finnish layout, HHKB with US layout is just superb for any shell work that needs to be done.
Main problem for me with the HHKB comes from the fact that it’s an US layout keyboard. This means several things:
- Delete/Backspace is where Enter is in all other keyboards in this country (we have UK type international layout with a “high” but narrow enter key). In beginning, this caused me a lot of grief, as after a night of coding with HHKB, I went to work and pressed Enter every time I made a typing error. Also very bad when chatting. Now I only have problems with my other mechanical keyboard, as my brain seems to have adjusted to the fact that on mechanical keyboard the backspace is in a different place.
- No < key before ‘z’ key. In US layout, this key produces just \ and | like another key (see below) so it is not missed, but on Finnish layout, this is the only key that produces angular brackets. This can be worked around with custom key mappings, but “oh I’m in layout X with keyboard Y” is something that doesn’t come automatically at all, but needs conscious effort every time.
- \ key is after = instead of after ‘. In US layout, European keyboards have \ (and |) in superb place, just next to Enter. With HHKB, I’ve yet to master hitting \ instead of = every time I try to type “\n”. In Finnish layout, this key produces ‘ and *, and now I can’t seem to reliably find the asterisk character anymore, on /any/ keyboard because I use HHKB at home, and a normal laptop at work, and switch between US and Finnish layouts.
Due to above issues, I now need to juggle between two type of layouts in my brain. Normal typing is fine, but those few special characters really take some hunting from time to time. This issue is actually not limited to HHKB, but also related to the fact that I now use US layout for coding, and many special characters are in slightly different places on US and Finnish layout. Most annoying ones are the asterisk and parentheses, which are needed surprisingly often when typing, but also @, &, ^, $, /, ‘, “, ;, and : are in different places.
- Backspace is ‘Delete’ by default unless you switch a jumper. I know this is how it was in the ancient times, but seriously, who really uses Fn+Delete (or control-h or whatever) to get backspace? And even when you switch the jumper, Fn+Delete isn’t reversed from Backspace to Delete, but stays backspace.
- Finding Windows keys and AltGr takes trial and error. They are there if you select the correct jumpers, but the manual doesn’t have a table of these or anything, you just have to press the Alt, Meta and Function keys with different settings to find out which is exactly which (there are 3 jumpers that switch the function of those keys, meaning 8 different permutations).
- No navigation keys. I can live without cursor keys, but I still haven’t learned where PgUp/PgDown/Home/End keys are, and having spent 15 years with those I really miss the additional keys sometimes. Maybe if I only used HHKB this would become a second nature more quickly.
Only 2-key rollover. This isn’t a gaming keyboard, and if you need to hold several keys down simultaneously (other than modifier keys), you’ll find HHKB lacking.Update: NKRO is missing, but the 6-key roll over seems to work pretty well. I strongly suspect no one will actually need more than 6 keys down at the same time, but the missing cursor, numpad and function keys will be a problem in many games that assign often used controls to them.
- No dual PS/2 functionality. You cannot use a passive adapter to make HHKB a PS/2 keyboard (many normal keyboards can emulate a PS/2 keyboard when attached to PS/2 port with passive adapter that just routes USB D+ and D- lines to PS/2 clock and data lines). For me this meant that “power PC on on PS/2 keyboard” option in BIOS is now useless to me.
- Higher profile means more need for a wrist rest. Flat laptop-like keyboards don’t require a wrist rest, but I felt the HHKB to be bust used with one. Filco makes a great wooden one for their Minila keyboards, I can warmly recommend that one.
Based on three months of use, I can definitely recommend HHKB for anyone who can afford one. It feels great to type on, looks beautiful, takes almost no space and has some nice tweaks in key placement that make it an excellent keyboard for any hardcore coder or Unix guru.
However, you either need to be comfortable using US keyboard layout, or are prepared to work around the missing international key, and differently placed enter, backspace and ‘ keys. This hasn’t caused me too much grief, but for some it might be an issue. Also, it’s not a gamer’s keyboard due to limited N-key rollover.
Update: If you found this review interesting, be sure to check out my continuation with the Topre Realforce 88UB.