Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

The learning curve for stenography is much higher. With a keyboard, the buttons do exactly what they say and that only. With a stenography machine, every possible combination of buttons does a different thing.

When typing the word "Unprepared" on a keyboard, you just have to look at the buttons and find each of the ones with those labels, and hit them in sequence.

To type the word "Unprepared" on a steno machine, you need to hit the buttons UPB all at once and then PRAOEPD all at once, knowing that PB is a combo that means N, that the UPB set assumes that it's a prefix to whatever follows, that AOE represents the vowel sound /i/, and that your software understands the input "preepd" to be a shorthand for 'prepared'.

You can try it out with your regular keyboard in the browser here: http://www.openstenoproject.org/demo/



Keyboards that use multiplexed row/column electrical matrix will not allow you to detect more than two keys in any box pattern simultaneously. So pressing more than two keys on that virtual steno keyboard is impossible on a regular keyboard (for many key combinations).


Any decent (gaming/enthusiast/high-end) keyboard uses dioded on every key to achieve N-key rollover (sometimes only 4KRO on the USB output due to sticking with boot protocol or whatever other reasons)


The software has a workaround to account for that, as long as you keep one key held down, the "stroke" isn't considered finished.

Obviously if you're gonna use it as you daily driver, you'd want to get a NKRO keyboard, but the "hold one key and tap the rest" trick works for the web demo.


Ah, nice, I didn't notice that while trying to use it. :)


multiplexed row/col is not problem here. By adding more components (1 normal diode per key) you can detect all pressed keys. Normal keyboard can detect even 4 keys (not all combination ofc) by clever design.


Yes, but that's usually limited to modifier keys. This app expects the user to use multi-letter key combos, which the keyboards usually don't support. I have several normal keyboards at home and none can deal with that.


This was solved decades ago by simply pulsing the rows in sequence and reading the columns for each row. You can trivially do that hundreds of times per second.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: