It's roughly a phonetic system. You press chords (multiple keys together) to enter a word.
Left hand types the initial consonant, right hand the ending consonant. Thumbs for vowels. All at the same time.
Steno with Computer Keyboard
This person, gives a demo of a computer keyboard steno system.
She is Mirabai Knight. One of founder the plover project, which is a open source steno system using computer keyboard. http://www.openstenoproject.org/
You'll need a keyboard with full NKRO (the ability to press multiple keys simultaneously and register correctly). [see N-key Rollover and Ghosting]
Most mechanical keyboards have 6 key roll-over, but that's not enough.
Alternative Shorthand System for Computer Keyboard?
Why is Steno Fast?
Steno is much faster because:
- It's a phonetic system. You type syllables, instead of letters.
- You press multiple keys at the same time, as piano chords.
- The physical keyboard is designed for chords.
Is Phonetic System Faster?
A phonetic system makes typing natural language much faster. The essence, is because each “input” corresponds to multiple letters. It is a shorthand system. The downside is that it is more difficult to learn. You have to memorize the shorthand system. And it also requires a translation step. (where a computer program expands the shorthand into English, can be done in real-time, automatically.)
Also note, in English the language, word's pronunciation does not have a exact correspondence with how it is spelled. So, this makes a phonetic input system more difficult to learn. But still, it's still faster and easier than entering each letters directly.
Is Chorded Keyboard Faster?
The chord keyboard (designed for pressing multiple keys at the same time) of the steno machine, is also much advantageous.
At first, i wasn't sure about that. Let's say we have to press 3 keys on steno keyboard vs the normal computer keyboard. On the steno keyboard, the order doesn't matter. Can be pressed simultaneously. This is faster than pressing each key one by one.
The speed difference becomes huge if you need to press more keys. Say, 3 keys for left hand, 2 for right. Doing that one by one, becomes a snail crawl.
Then, i thought that chorded keyboard is unnatural. Not so, if you look at piano, flute, or guitar. All require using multiple digits in precise positions.
But again, you trade speed with learning curve.
Steno Keyboard vs Piano Keyboard
Then, i was thinking, how the steno keyboard compares to piano keyboard.
The question here is, if we think of designing a hardware from the ground up, for inputting arbitrary text (natural language or computer code), then, what would it look like?
First, we know that, it must be a chorded keyboard. Let's think about our computer keyboard first. Let's say the nice modern one such as Ergodox Keyboard. Quickly we can conclude that it is inferior to the steno or piano keyboard. Because, if you want to hit multiple keys, huge keys such as piano keys are much better than computer keyboard keys.
So, that narrows down to steno vs piano keyboards. I'm thinking, the steno has slight advantage. Because, the layout is logically more simple. And, the way it is layout out, it has dedicated keys for thumb, allowing each thumb to hit multiple keys. And, the other keys can also be hit together by pushing between the rows.
However, i think that piano keyboard are highly competitive here, and it's proven usable. Because, a piano keyboard has much more keys, which becomes big advantage when we need large number of distinct outputs. For example, you want the system to input math symbols, Chinese, Braille. For example, you can hop your hand to a different octave to input digits, another octave for math symbols.
Consider a input system hardware, piano keyboard would make a great choice, because:
- Piano keyboard is very cheap and widely available. You can get a full-sized 61 keys (5 octaves) for under $100.
- Piano keyboard comes with USB and midi protocol.
- Piano keyboard can handle multiple simultaneous key presses. (called polyphony in music community) Even a toy one will handle 16 keys pressed at the same time
The minimal size for musicians usually comes with 61 keys (5 octaves. 12 × 5 + 1 keys.)
There are special ones, for composer or Disk Jockeys, having just 1 octave (12 keys) or 2 octaves.
For our purposes, 2 octaves (24 keys) will be equivalent to a normal computer keyboard. (because of chords) 3 octaves (36 keys) would be roughly equivalent to a steno keyboard. (steno keyboards usually have 22 to 35 keys.)
A stenotype machine is about 2 to 5 thousand dollars. (if you look at the web, most of them are ugly, bulky, unwieldly, comes with a silly LCD screen, and the websites selling them are like from 1999. Basically, it's a very niche market.)
Shorthand System for Computer Keyboard
Still, i think, it might be possible, to design a shorthand system for normal computer keyboard, so that typing can be 2 time faster. (yet not based on steno system.)
The speed increase comes from the shorthand system.
The design of this, will probably be based on a modal mode, as in vim, so that one can switch between shorthand input and normal letter input.
For example, when you write code, often you have to type functions or “for loop” statements. What if, any function or statement you ever have to type, can be typed by just 3 keys?
The completion and function template feature in many IDEs (such as Microsoft Visual Studio) is a example of significant keystroke saving. But it is not ideal. Because, it has a selection process. The popup that you have to visually make a choice. This significantly slow things down. We need to get rid of this. And, the completion system is ad hoc, per language or per project. We want a generic system.
Also note that:
- Programing language code is quite different from natural language. You won't be able to utilize syllables in natural languages much. Especially, for some programing languages, such as ALP, Wolfram Language, or Haskell, that uses more symbols than English words.
- 50% of the keystrokes typed by programer are not typing letters, but commands such as moving cursor, deleting text, selection, page up/down, open file, etc. [see Emacs's Command Frequency Statistics]
So, i think there are 2 interesting exploration here.
- Design a shorthand system for computer keyboard for programing and for input natural languages.
- Design a input system using piano keyboard.
I think it's relatively easy to design such a system, and be at least 2 times faster than our current of using computer keyboard for coding and writing (yet, not based on the steno system).
If we use piano keyboard, i think it can be 3 times as efficient. (example: 300 words per minute)
The hard part is selling it. That is, convince others to use it. Suppose you are god and in a snap of a finger you have the perfect shorthand system for the computer keyboard to type code or natural languages at 200 words per minute. Now, chances are, it will go down in history as wonderful invention that failed to catch on. Unless, the marketing god Steve Jobs is on your side.
See also: Using Voice to Code Faster than Keyboard 📺
Using Piano to Type Text
addendum. Actually, there is already a system to type text using piano keyboard. The speed and learnability is comparable to steno, if not better.
see Using Piano to Type Text
Steno Systems Study
There are many different steno systems. A steno system is a way to map keys to letters. Unlike computer keyboard layout, the map is not one-to-one. It's more like a computer program that convert a key sequence to text. The steno shorthand systems are called “theories”. English, French, Italian, etc each uses a different theory. Even for the same language, English, there are different theories.
xah wrote: “can you give us a outline? like, basic differences (i think you already did)... and is there comparative efficiency studies ? am pretty sure there are? ”
oh for sure! i've reasearhed them quite a bit some main theories (just quickly) are:
- stenED - the oldest one still in use, bases it's chords off of english spelling a lot, prefers things to be stroked out in full, this is what most people learn - it's the QWERTY of steno theories
- Pheonix - newer than stenED, bases it's chording off of more rigorous rules and patterns and NOT on english spelling, this is good for consistency and working out how to chord a word you havn't come across before
- Plover - the theory included by default with plover, based off of stenED but with lots of modifications, has quite a few briefs (steno shortcuts), most hobbiests will learn this as it's the only free one
- magnum - personal dictionary created by Mark KislingBury - by far the most complex, relies mainly on briefs that take a lot of memorisation and work, can't really work out how to spell a word you don't know - but it is by far the fastest when you properly learn it as you have words and whole phrases briefed
personally i'm learning magnum steno theory - just because when i get used to it i can steno out a lot of text without having to type too fast, plus it's a fun challenge