-- Leo's gemini proxy

-- Connecting to circadian.gemlog.org:1965...

-- Connected

-- Sending request

-- Meta line: 20 text/gemini

Hardware Showcase: FingerWorks TouchStream


Mostly of historical interest today, the FingerWorks TouchStream keyboard was revolutionary, with multitouch gestures, chording and zero force typing.


The FingerWorks TouchStream


In 2005 I started to experience some pain while typing, and being aware that repetitive strain injury is a serious risk for programmers I looked for a lighter way to type. The TouchStream, as a “zero force” keyboard, seemed worth a try.


It’s extremely customizable, but quite some work to get used to. In particular, the only physical clues you get are tiny bumps on the home row. I quickly decided that the way to get the best accuracy and speed would be to stay on the home row as much as possible, and so I decided to


switch to the Dvorak keyboard layout;

customize the layout further to remove all “reaches” more than one key away from the home row.


My layout


After many iterations I arrived at a layout that I used for over ten years.


Base layer:


L2 L3 L4 p  y    f  g  c  r  l
a  o  e  u  i    d  h  t  n  s
T  q  j  k  x    b  m  w  v  z

            R    B  S

  L2-l4: hold to switch to layer
T R B S: tab, return, backspace, space

Because this is a 6x3 layout for each hand, most fingers reach up and down at most one key and never left or right; the first finer on each hand additionally can reach across one key.


There are three keys pressed with the thumb: return, backspace and space.


The further layers, activated by holding keys in the top left of the main layer, affect the right side only.


Layer two is the “number pad”:


                 5  6  7  8  9
                 0  1  2  3  4
                 +  -  *  `  $

Layer three is symbols:


                 <  /  \  != >
                 #  &  |  ^  ~
                 ;  :  _  == %

And layer four is more symbols:


                 {  B  "  @  }
                 (  '  ,  .  )
                 [  =  ?  !  ]

For arrow keys I used something close to the TouchStream default, which is that multitouch gestures trigger arrow keys in combination with modifiers and home, end, page up and page down.


For modifier keys I also used something close to the TouchStream default: whole row chords with the opposite hand. So, for example, you drop all fingers on the left hand to use the shift modifier on a right hand key.


Mousing


The gesture and chord support of the TouchStream was revolutionary, but the real killer feature was mousing. By dropping two fingers of one hand you could switch instantly into mousing, using the whole surface as a touchpad.


For programming in particular I found this incredibly comfortable and convenient; while programming you switch frequently between entering text and navigating or moving text around. With a standard keyboard and mouse the cost of switching between the two means there is an incentive to use the keyboard for operations that are better suited to the mouse. With the TouchStream there was no need to choose.


Passing into History


In 2022, after 17 years of use, I finally switched away from the TouchStream.


In 2005 FingerWorks was acquired by Apple. The multitouch technology went into the iPhone—and was phenomenally more successful there than it had been in the TouchStream.


Unfortunately, this meant the end of software support for the keyboard.


As a result, over the years it became harder and harder to reconfigure the keyboard; in 2022 the only way I could change setting involved a lot of work to get an old version of Windows running in a VM. I decided it was time to switch to something else.


I’ll write about that another day!


Links


FingerWorks Wikipedia entry


Feedback 📮

👍 Thanks!

👎 Not for me.

🤷 No opinion.

Comments.


So far today, 2024-05-12, feedback has been received 1 times. Of these, 0 were likely from bots, and 1 might have been from real people. Thank you, maybe-real people!


   ———
 /     \   i a
| C   a \ D   n |
   irc   \     /
           ———

-- Response ended

-- Page fetched on Sun May 12 16:22:07 2024