BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage Articles What Keyboards Do Programmers Prefer?

What Keyboards Do Programmers Prefer?

Bookmarks

As developers, we all have preferences in the tools we use for work: a powerful machine, one (or two) large screens, having the freedom to choose our OS, our IDE, etc....

Yet in most companies, we rarely pay the the same level of attention to keyboards. The one that comes with your computer (PC or Mac, desktop or laptop) is often the default choice and we almost never challenge its quality and usability, even though a keyboard is one of the most basic tools of our job, allowing us to perform most of our everyday tasks.

So why neglect the quality (and the look!) of a tool that we use eight hours a day?

This article is an overview of all the different choices made by the developers team behind the insurance comparison site LesFurets.com. And you'll see how every one of them has an approach of its own.

A good worker needs to have good tools and to take ownership of them.

What we're going to talk about switches, layouts, and what the LesFurets developers chose.

Switches

Switches are the the pieces of plastic that makes the contact between your keys and the circuit board underneath. They are the keyboard/human interface. Different kinds of switches have different feels when pressed. There are three main types of switches on the market.

The classic rubber dome

Most of the keyboards we use are equipped with rubber-dome switches. The name comes from how the the key and the circuit make contact through a simple silicone membrane in the shape of a dome.

The feel you get when pressing the keys is generally considered underwhelming (“mushy”), as they provide little feedback compared to mechanical switches.

Cherry, the mechanical king

A mechanical switch is mainly composed of a spring that needs to be pushed beyond its actuation point (the moment where the contact is made on the PCB) and a slider, which is the part between the spring and the key itself.

Introduced in 1985, Cherry Corporation’s MX series switches are by far the most popular choice in mechanical keyboards. They come in various flavors, indicated by the colors of their sliders. Each color indicates a different feedback (linear or tactile) and the force needed to get past the actuation point.

A linear feedback switch offers no resistance when pressing a key (other than the resistance of the spring itself.) A tactile feedback switch will have a little bump on the way to tell you that the key has indeed been activated.

Here are a few schematics.

A linear switch (red)

Two tactile switches (brown and blue).

Notice the additional piece of plastic in the blue switch? That’s what gives the click when the key is pressed. The brown switch is also tactile but its smaller bump provides lighter feedback than the blue. The force needed varies with switch type — for example, the MX Red switch requires 45 cN (1 centinewton is 1 gram at 1 G) and the more robust MX Green requires 80 cN.

Topre, the high-end alternative

The Japanese company Topre Corporation’s switches are a hybrid of classic mechanical keyboards and rubber domes (called electrostatic capacitive) and can usually found on high-quality keyboards.

The switch comes in two variants defined by spring resistance (45 cN and 55 cN). The feedback you get when pressing a key is a smooth tactile bump and a satisfying “thock” sound. Cherry MX switches produce a noticeably lighter “clack”.

Layouts

The layout defines the number and arrangement of a keyboard’s keys. Three layouts compose the majority of the mechanical keyboard market.

  • Full: The classic 104 keys, including all alphanumerics and the numpad.
  • TKL: Literally “ten keys less”. This layout removes the numpad for a more compact keyboard.

Example: KUL ES-87

  • 60%: An even more compact layout. You can access the functions of absent keys with shortcuts.

Credit: Kaliet from GeekHack

LesFurets lets developers choose

As we say in French, “les goûts et les couleurs, ça ne se discute pas” (meaning that everyone’s taste is different). For keyboards, this means that the only perfect keyboard is the one that’s perfect for you. Here are some examples of how the LesFurets team interprets that as the developers here review their own keyboards.

Thomas: Truly Ergonomic 229

This one is clearly not your everyday keyboard. It could be called a “split orthogonal ergonomic keyboard.” Like other keyboards such as the TypeMatrix or the Plank, for example, the Truly Ergonomic is ortholinear, meaning that each key exactly aligns in a column as the one behind it.

This keyboard is split in two symmetrical parts, one for each hand. It is a little tricky to use at first but becomes a reliable tool over time. It also has the benefit of reducing wrist pain.

There are some default layouts available for the keyboard, like QWERTY, AZERTY, Dvorak, Russian, Japanese, plus a DIP switch for a Mac-command key — but one fun feature is that it’s fully programmable! A firmware editor lets you choose the position for each key. I've used it to develop firmware for the French layout Bépo (like Dvorak but optimised for French language).

Combine this feature with a service that lets you personalize your own keys, like WASDkeyboards, and you can create a new layout that corresponds exactly to your needs. You can find my firmware and layout template on my GitHub account.

This keyboard is available with blue, brown (my choice), or white Cherry MX switches.

Etienne: WASD V2 TKL

My go-to keyboard at LesFurets is a WASD V2 TKL with Cherry’s Green MX switches and a Vortex front-printed PBT keyset for the keycaps. I chose the TKL format because I wanted something compact and portable (I switch from time to time with a Cooler Master NovaTouch that I use at home). I also find the numpad to be redundant on a QWERTY layout.

I am a heavy-handed typist so for me stiff switches like Green MX are perfect for typing (as opposed to the lighter Red MX switches that I use for gaming, for example.) The keyset choice is mostly aesthetic, but the thick PBT plastic gives a more satisfying sound and a more pleasant texture. Overall, it is a pretty loud keyboard but thankfully my colleagues do not mind!

Being a perfectionist, I even use a USB cable hand-made by a small UK company called PexonPC.

Alexandre: Happy Hacking Keyboard (HHKB) Professional 2

The HHKB Pro 2 is a 60% keyboard equipped with 55-cN Topre switches, built by PFU. The concept behind it is to get the necessary functionalities needed for UNIX programming closer to your fingers. You can partially modify the layout via DIP switches, which are most useful to change some dubious choices like the absence of a backspace key.

The learning curve for this keyboard is quite steep at first, but once you get used to it, it becomes enjoyable to use on a daily basis (especially as a Vim user.)

Typing provides pleasant feedback, and the keyboard is of very high quality. Its weight and size make it easily portable (I take it back home every weekend). The print on the PBT plastic keys is superb.

The main drawback of this keyboard is its price. Imported from Japan, it’s usually quite expensive, though not hard to find in Europe.

Julien: Cooler Master NovaTouch

The Cooler Master NovaTouch TKL is my daily keyboard at work. It was my first mechanical keyboard, chosen after trying many different keyboards and switches (you can actually buy a switch tester before making any decision).

I like the compact TKL layout, with function key and media shortcuts (sound, music, brightness). Everything is accessible without being redundant. The 45-cN Topre switches are a good compromise between typing feedback and noise.

Well built, the keyboard’s only drawbacks are the price (around 180€ in France — Topre switches are never cheap) and the low availability of certain layouts (like QWERTY) in Europe.

Three other developers in my team have adopted the Cooler Master NovaTouch so far and greatly appreciate it.

Andrei: Kinesis Freestyle2

This Kinesis keyboard does a lot to adapt itself to the anatomy of the owner. You can position its split halves independently and finely tune the tenting from 5 to 90 degrees to reduce ulnar deviation, pronation, and wrist extension.

Its compact form (somewhere between a 60% and TKL) reduces the overreach for the mouse and makes this keyboard easily transportable. In spite of this, it has a nifty set of driverless hot keys that don’t get in your way.

Despite all the things that I love about this keyboard, it has a few layout drawbacks. My biggest complaint is that the Insert key is impractical and ESC is awkwardly positioned. Sometimes one of the halves can get slightly out of position, which can lead me to start typing gibberish.

Otherwise, its layout is very close to the standard QWERTY. There is practically no learning curve (I have started to use it with the two halves attached) and this keyboard does not lock you in, so you can painlessly switch back and forth between it and a standard keyboard.

A purist might not like its low-force membrane keys, but I enjoy its light typing, which is inaudible in the shared working space.

Gilles: Silicon Graphics AZERTY layout

This keyboard was provided for a Silicon Graphics workstation (a high-end Onyx) a long time ago. A French research laboratory ordered the workstation in 1993, specifying a keyboard with the French AZERTY layout. A few months later, the workstation arrived with a QWERTY keyboard.

The lab withheld payment because the order was not properly fulfilled, and it took six months to obtain the originally ordered AZERTY keyboard from Silicon Graphics, at which point the lab discovered that the installed IRIX OS did not, in fact, support the French layout.

The keyboard is still completely usable on a classical PC (PS2 port, ISO layout) and I've used it for the last 10 years. I don't know what kind of switch it uses, but it feels like something between Red MX and Black MX. I've now replaced it with the keyboard Julien uses, a Cooler Master NovaTouch.

About the Authors

This article was co-written by members of LesFurets' dev team: Etienne, Thomas, Alexandre, Julien, and Gilles. It was originally published on InfoQ’s French site.

If you want to come code with us, join our team!

Rate this Article

Adoption
Style

BT