Engelbart's Chorded Keyboard

In a little tribute to Douglas Engelbart, I made one of his chorded keyboards with Node.js and Arduino.

08 July 2013

This post has been migrated from its original home to here. It originally lived at this location.

Last week, Douglas Engelbart died. If you're technically inclined you'll know him as the guy from The Mother of all Demos, if not you'll probably have noticed in the news that the "inventor of the mouse" has died.

Thing is, Engelbart did more than just invent the mouse, he pretty much devleoped the base system for how people interact with PCs – in the 50s! Needless to say, the computing world has lost a titan.

So, as a little tribute to his life's work I decided to have a crack at making his chorded keyboard for Hack Soton. A chorded keyboard is a keyboard that has five buttons. Each one has a series of options assigned to it. With each press of a button, the amount of options is narrowed based on the combination of button presses, until a final option has been selected. It's quite a complicated system and is one of the few things Engelbart introduced that didn't make it through to the computing mainstream.

The setup is pretty simple. I wired up an Arduino with five buttons – one for each finger – and then built a web page that would look at the buttons that had been pressed and the order they had been pressed in to select a letter. I have to say, if you're gonna do something like this yourself use big buttons. The small ones really start to hurt after a few hours of debugging.

And there it is, Engelbart's chorded keyboard. A pretty important thing to remember is that Engelbart didn't set out to invent anything. He just wanted to make computers easier for people to use – his inventions were the result of putting the users' needs before the computer's needs. I think that's an important lesson for us all.