Readit News logoReadit News
andrehacker · 5 months ago
Fascinating read as always Ken. It seems that the concept of a “Chorded Keyboard” from Douglas then spawned several relatively successful successors later on:

https://en.wikipedia.org/wiki/Chorded_keyboard

Growing up in the Netherlands in the 80s it was hard to not be aware of the “Velotype”: it had more keys and supposedly made it easier to learn the “chords”.

Your reference to the book Nerds 2.0.1 is great, the book is a companion to the excelent PBS 3-part series from 1998

https://archive.org/details/movies?tab=collection&query=Nerd...

jhbadger · 5 months ago
In the 1990s chorded keyboards were "popular" in regard to wearable computing. People like Steve Mann would give talks where he demonstrated how he could use his wearable computer (basically a laptop he strapped to himself with a clunky goggle-mounted display) that he controlled with a small chorded keyboard he operated with one hand. Obviously, a decade later with smartphones this looked pretty silly (if it didn't already in the 1990s) but some people really did think this was the future at the time.

https://en.wikipedia.org/wiki/Steve_Mann_(inventor)

nine_k · 5 months ago
The killer feature of a chorded mechanical (not on-screen) keyboard for me is that one can use it without having to look at it. To literally touch-type (not necessarily text).

This is why such keyboards are used where this advantage is material, e.g. in jet fighters.

zozbot234 · 5 months ago
> In the 1990s chorded keyboards were "popular" in regard to wearable computing. ... Obviously, a decade later with smartphones this looked pretty silly (if it didn't already in the 1990s) but some people really did think this was the future at the time.

Well, we have portable computers with chorded key-sets now: we just call them handheld consoles instead. I'm quite sure that the button set on something like Valve's Steam Deck or ASUS's ROG-Ally consoles could be repurposed for some sort of reasonably ergonomic chorded-text input.

_emacsomancer_ · 5 months ago
There's a 1990s Alan Alda video interviewing Thad Starner with these elements: https://youtu.be/X7DM1mT8r7c
kragen · 5 months ago
As Animats mentioned in https://news.ycombinator.com/item?id=43455514, Doug's team didn't invent chorded keyboards; Émile Baudot did: https://en.wikipedia.org/wiki/Baudot_code#/media/File:Clavie...

You can see that he designed his character code, like Morse, to make the most common letters easier to send: https://en.wikipedia.org/wiki/Baudot_code#/media/File:Baudot...

rwmj · 5 months ago
Back in the mid '80s our school was given a small number of Microwriter chorded keyboards (https://en.wikipedia.org/wiki/Microwriter) for our BBC Micro lab. Even as 12 year olds we were already crazy good touch-typists, so the Microwriter felt very clunky and unintuitive to us. I don't know what the lesson is from that. Just because it seems a good idea doesn't mean that it is. Or typewriter-style keyboards have survived over a century and a half for a reason.
Cpoll · 5 months ago
I'm not convinced either of those are the lessons. I think the reason for the keyboard's success is that it has a smooth learning curve. A neophyte can hunt-and-peck with a keyboard. Not so with a chorded keyboard.
totetsu · 5 months ago
I guess this was an inspiration for this character https://lain.wiki/wiki/Nezumi
Animats · 5 months ago
The original chording keyboard was from Baudot, around 1897.[1] The original plan was for the sender to send 5-bit teletype characters with a 5-bit keyboard. This was deployed, not just a prototype.

[1] https://collection.sciencemuseumgroup.org.uk/objects/co33197...

pests · 5 months ago
Here is a great run down of that history:

https://computer.rip/2024-02-25-a-history-of-the-tty.html

Early versions had to be mechanically synced at the sending and receiving side. The typists had strict timings so the other end could receive it. This led to a version of punch cards that could be pre-typed and then fed in automatically, reducing the skill needed of the operator. The linage to teletypes were almost obvious.

Very good read, don't want to spoil too much.

Animats · 5 months ago
The form of a keyboard had to be invented. Early printing telegraphs used a piano-like keyboard, with white and black keys.[1]

(Keeping both ends in sync was a huge problem. The machine shown was synched by having the sending operator send AAAAAAAAA while the receiving operator made adjustments. If the machines got out of sync, the receiving operator opened the line switch, which stopped local echo at the sending end. Then both ends had to repeat the AAAAAAAAA drill.

It took a long time, from 1846 to 1907, until Howard Krum finally came up with a mechanism that didn't have sync problems. Krum had the advantage that steel and stamping were available. The clock industry had figured out how to mass-produce mechanisms. Mechanism design then got out of the handmade brass era. This was, in its day, an advance comparable to going from tubes to ICs.)

[1] https://www.youtube.com/watch?v=zJCfhbPAv9c

kens · 5 months ago
Author here if there are any questions...
DonHopkins · 5 months ago
Hey, great to see this, thank you so much, Ken!

I'm lucky to own an original Engelbart mouse and chord keyset too, and I want to make usable replicas by 3d scanning them, making 3d printable models, and embedding metal and electronic parts so they work via bluetooth!

The first step is to take it apart, measure and weigh the pieces, 3d scan it, and make a realistic 3d printable all plastic model (like an easy-to-print toy), but then refine it to make a high quality hybrid version with the exact same weight and feel and materials and electronics using resin printing and off the shelf hardware like the wheel, so it feels as realistic as possible and actually works!

I think reproducing the actual weight and feel of the original is really important, the klunky feel of the wheel attached to the potentiometer hitting the rotation limit, how it scrapes across the table, etc. It's really amazing to hold and feel in your own hand, and it belongs in a hands-on museum like the Exploratorium, but it would quickly get destroyed. So it would be great if anyone who wants could 3d print their own quick and easy plastic replica, or assemble their own high quality functional replica too.

I want to release the simple model and detailed plans to make your own for free, and think it would be a great kit or pre-assembled gadget that the Computer History Museum could sell in the gift store.

It would also be cool to include an accelerometer and gyro in it so it would also work as a gestural game controller -- why not: it would be so cheap and easy to add!

Here are some parts I'm considering using, but I'm new to this stuff -- what do people with more experience think?

  Microcontroller: ESP32-S3 module (USB + Bluetooth capabilities)
  Motion Sensor: MPU6050 6-axis accelerometer/gyroscope
  2× 10KΩ potentiometers for X/Y tracking wheels
  3× tactile buttons with pull-up resistors
  3.7V LiPo battery (350-500mAh)
  TP4056 charging module
  USB-C connector (for both charging and wired mode)
I'd love to discuss the project with you, a free open non-profit labor of love, and I hope we can collaborate! I just invested in a Bambu 3d printer and Raptor 3d scanner just for this project, so I'm ready to get started scanning and printing. Please drop me an email at: don@donhopkins.com

bch · 5 months ago
Hi Don. I think this stuff is great, and applaud your work, so don’t think of this as a slight (depending on the answer, of course): how practical is this? Again, if the answer is approximately “not at all practical”, that’s fair, but I guess I could also see it fitting somewhere on a spectrum like emacs vs vi, QWERTY vs Dvorak, etc…
Joel_Mckay · 5 months ago
>I want to make usable replicas by 3d scanning them

Cool, the artifacts should be preserved for people studying new haptics device designs.

The MPU6050 is not a great IMU, but the cost might be your best option.

>USB-C connector

One can force the interface into legacy USB 2.0 HID mode, and I would highly recommend that approach if you are excluding a USBC device PMIC. The TP4056 also have some weirdness about entering charge modes, and exiting trickle mode.

Would recommend contacting some museum staff if additional hardware is missing:

https://vintagegeek.com/

Best of luck =3

jdboyd · 5 months ago
I would suggest being sure to use a cpu platform well supported by ZMK to make your HID software easier. The esp32-s3 doesn't appear to have Bluetooth support in ZMK yet. People who want Bluetooth support are being encouraged to use the nrf52 platform. People who want usb only might be better with a rp2040 as there is better support in ZMK for that platform than anything esp32.
gargablegar · 5 months ago
Thank you for this, wonderful break down of some amazing history. I have watched that demo many many times in my pursuit of human computer interface thinking.

I often wondered what happened to this piece of hardware… I still hold a deep belief that our current input methods are flawed(as amazing as they are) and we are in need of another leap forward.

Anyway great read - thank you again.

xkriva11 · 5 months ago
How did Engelbart render black text on a white background during his 1968 Demo, considering that the display technology at the time was based on vector CRTs, which typically produced glowing light rather than dark areas?
kens · 5 months ago
Output was displayed on 5" CRTs. High-resolution TV cameras (875-line) transmitted the CRT output to 17" monitors at each work station. By flipping a switch, the video could be inverted, so you could get either black lines on a light background or white lines on a black background. In other words, Engelbart invented dark mode :-)
ChrisGammell · 5 months ago
I always drop everything to read when there are new articles. Keep up the great work Ken!
thakoppno · 5 months ago
Are there any opportunities for the local community to help preserve this history?

There’s a new development planned for the SRI site and I was hoping there’d be some honorary for that hallowed ground.

kens · 5 months ago
Christina Engelbart is working to preserve the history at the Doug Engelbart Institute: https://www.dougengelbart.org/
kragen · 5 months ago
Thanks for writing this!

You misspelled "eidophor".

Brad Neuberg (the founder of coworking) worked with Doug about 15 years ago to hook up one of these keysets to a then-current computer to use Augment. Any idea what happened to that work?

kragen · 5 months ago
(I see that "eidophor" is fixed.)

Dead Comment

vietjtnguyen · 5 months ago
Custom mechanical keyboard firmware like QMK [1] and ZMK [2] support custom chords called "combos". Basically if the combo's set of keys is hit (within some timeout which defaults to 50 ms) then a specific keycode is sent. You then get a fun game of identifying low probability combos and mapping then to useful keycodes. You also start realizing there's some prime real estate to take advantage of. Two-key combos require some thought cause bigrams can be surprisingly common. Three-key combos are basically open though.

In migrating from the ZSA Voyager to a 36-key keyboard (Chocofi) I've relied on combos as I don't like overloading keys with tap-versus-hold behavior as I can never get the timing down. For example my left index, middle, and ring finger mashed down on the home row (resting position) is escape in my current layout (Colemak mod DK which means keys R, S, and T). It's three fingers but hardly any extra effort. I've managed to do away with a symbol layer and have been quite happy with the result. If anyone is curious here is my "36-key training layout" for the ZSA Voyager [3] and my current Chocofi layout [4].

1: https://docs.qmk.fm/features/combo

2: https://zmk.dev/docs/keymaps/combos

3: https://configure.zsa.io/voyager/layouts/d7L0v/latest/0

4: https://github.com/vietjtnguyen/zmk-chocofi/blob/main/config...

neilv · 5 months ago
> Engelbart's demo also featured an input device known as the keyset, but unlike his other innovations, the keyset failed to catch on.

Chording keyboards were popular among the "wearable computing" researchers (who then went on to work on things like Google Glass). For example, the Twiddler.

One advantage of them is that you only need one hand to operate it.

And some designs mean you can simultaneously hold it with that same hand, without a steady surface.

miki123211 · 5 months ago
chording keyboards are still extremely popular among the blind, after all, chording is how you type Braille. They appear on everything from mechanical Braillers of the 1950's[1], to modern, electronic Braille displays and notetakers. Input methods based on this concept and adapted for the touch screen are even built in to both iOS[2] and Android[3].

[1] https://wecapable.com/perkins-brailler-braille-typing/

[2] https://support.apple.com/en-us/101637

[3] https://blog.google/products/android/braille-keyboard/

DonHopkins · 5 months ago
>[...] but unlike his other innovations, the keyset failed to catch on.

I'm sad that he and others like Ted Nelson and Brett Victor would rightly say that his most important innovations have so far failed to catch on. But there's still time to raise awareness and make them real!

Ted Nelson's Eulogy for Douglas Engelbart

https://www.youtube.com/watch?v=yMjPqr1s-cg

>Ted Nelson's emotional and moving eulogy for his friend Douglas Engelbart. Given at the Computer History Museum in Mountain View, CA, on December 9, 2013.

An Homage to Douglas Engelbart and a Critique of the State of Tech:

https://archive.nytimes.com/bits.blogs.nytimes.com/2013/12/1...

>You don’t need me to tell you that Douglas Engelbart was one of the greatest men of all time. We gather today, in pretense of unanimity and concord, to croon over Doug’s ashes and grab for scraps of his robe.

>Everyone here will of course say they are carrying on his work, by whatever twisted interpretation. I for one carry on his work by keeping the links outside the file, as he did.

>Some are no doubt here to cheer and march behind the mouse, as in the opening of the Mickey Mouse TV Club of yore. Let them be happy in that celebration.

>But the real ashes to be mourned are the ashes of Doug’s great dreams and vision, that we dance around in the costume party of fonts that swept aside his ideas of structure and collaboration.

>Don’t get me wrong, the people who gave us all those fonts were idealists too, in their way — they just didn’t necessarily hold a very high view of human potential.

>I used to have a high view of human potential. But no one ever had such a soaring view of human potential as Douglas Carl Engelbart — and he gave us wings to soar with him, though his mind flew on ahead, where few could see.

> Like Icarus, he tried to fly too far too fast, and the wings melted off. [...]

Doug and Karen Engelbart marry Marlene and Ted, May 2012:

https://www.youtube.com/watch?v=TsKFbwLeS1k

>Poignant ceremony with sweet pledges, at the Marin Civic Center. Ann and Bill Duvall are co-celebrants. Underexposed and streaky, but the event is the important thing. (Battery ran out before the final verdict. Other camera was far away.)

A few words on Doug Engelbart:

https://worrydream.com/Engelbart/

>Doug Engelbart died today. His work has always been very difficult for writers to interpret and explain.

>Technology writers, in particular, tend to miss the point miserably, because they see everything as a technology problem. Engelbart devoted his life to a human problem, with technology falling out as part of a solution. When I read tech writers' interviews with Engelbart, I imagine these writers interviewing George Orwell, asking in-depth probing questions about his typewriter.

>Here's the most facile interpretation of Engelbart, splendidly exhibited by this New York Times headline:

>"Douglas C. Engelbart, Inventor of the Computer Mouse, Dies at 88"

>This is as if you found the person who invented writing, and credited them for inventing the pencil. (This analogy may be more apt than any of us are comfortable with.)

>Then there's the shopping list interpretation:

>His system, called NLS, showed actual instances of, or precursors to, hypertext, shared screen collaboration, multiple windows, on-screen video teleconferencing, and the mouse as an input device.

>These are not true statements. [...]

jntun · 5 months ago
I've recently been reading lots of books about 50/60/70s computing & especially the San Francisco element of it, so I've been watching Engelbart's demo myself on and off for the last few weeks. It really is amazing being "close" to all this time of history, even if the only way we can interact with it is over USB nowadays!

Tiniest footnote correction but not only were the desk & offices designed by Herman Miller; the chair Engelbart is sitting on during the demo was also specially designed by Herman Miller!

dfc · 5 months ago
Can you share some of the titles about computing in the 50-70s?
pmcjones · 5 months ago
The Dream Machine by M. Mitchell Waldrop

Computing in the Middle Ages by Severo Ornstein - https://worrydream.com/refs/Ornstein_2002_-_Computing_in_the...

ecliptik · 5 months ago
I've been reading The Innovators[1], which includes early computing history, just finished the section on The Mother of all Demos yesterday coincidentally.

1. https://en.wikipedia.org/wiki/The_Innovators_(book)

jntun · 5 months ago
Of course!

What the Dormouse Said: How the Sixties Counterculture Shaped the Personal Computer Industry [2005]

Dealers of Lightning: Xerox PARC and the Dawn of the Computer Age [2000]

Accidental Empires: How the Boys of Silicon Valley Make Their Millions, Battle Foreign Competition, and Still Can't Get a Date [1996]

Palo Alto [2023] (This is more for capturing the full scope of San Francisco / Palo Alto since the founding of California as a state)

Those are some off the top of my head right now being away from my library, probably also the most impactful to me in no specific order.

GregDavidson · 5 months ago
I regularly use my Twiddler with my Android phone. It allows me to fully operate all the applications I use on my desktop computer, e.g. Emacs. https://www.mytwiddler.com/
nanna · 5 months ago
Even Emacs? Do say more...
mcshicks · 5 months ago
I have a twiddler and tried doing this a long time ago i.e. emacs with a twiddler. For me I really needed to use a sticky cntl and alt key because I just couldn't press the cntl button on the top and chord at the same time. And I couldn't figure out how to make the sticky cntl work on the phone. But that was a very long time ago. Now I just use a mini bt keyboard and termux to run emacsclient over ssh and that's good enough for what I want.
peteforde · 5 months ago
I urge you to consider using an RC network with a hex inverter to debounce your switch input without resorting to a 100ms delay. I've wasted enough hours to know that the best kind of software debounce is a few resistors and capacitors.

https://mayaposch.wordpress.com/wp-content/uploads/2018/06/d...

kragen · 5 months ago
I feel like the diode in this schematic is the wrong way around for a normally open switch: it speeds up the keyrelease event when the switch opens instead of the keypress event when it closes.

But I think the 100ms delay Ken mentions was intended for a different purpose: to wait for all the fingers in the character to be detected. I think a much better approach would be to wait for one of the keys to be released before registering a character. Isn't that what Engelbart did? I suspect this timing-based approach explains why Ken found it so difficult to use.

As I understand it, Baudot's original chording keyboard instead mechanically locked the keys down until the character was transmitted over the telegraph line. The telegrapher had time to enter his next character while the system was transmitting the characters of his colleagues, interleaved with his own at a fixed baud rate.

peteforde · 5 months ago
Oh, that (waiting for all fingers to be detected) does indeed change how I would approach the scenario, and blew past me in my initial reading.

That all said, even with 100ms cycles I would hardware debounce the inputs, capture the keystrokes with an ISR to set some semaphore variables, and then create a 100ms loop that checks the current value (and resets) those semaphore variables.

Eliminating switch bounce allows far more elegant software handling of the values you're reading, so Ken could turn his attention and development energy towards things like sliding time windows (100ms starting from the first keydown, for example) instead of trying to boil the ocean cancelling bounces.