Device independence is less an end in itself than a means to scalability of keyboards for wearable computers, which is our real goal. In order to continue to benefit from shrinking component size and dissipation, all components must shrink together, the keyboard included.
The fundamental difficulty with a shrinking keyboard is that every factor of two in shrinkage calls for a radical revision in how the user approaches touchtyping and headup use. In particular imagine that the keyboard has been shrunk to invisibility. How could anyone possibly type on so small a device?
Scalability is the exact opposite of this: far from requiring radical changes in mode of use as the device shrinks, usage should be as independent of device size as possible.
We achieve this goal via device independence. which in turn is achieved by using the hand itself as the keyboard rather than any particular device. One types not just with the hand but on the hand.
If we were to permit two-handed use we could type with one hand on the other, or even both on each other.2 However the benefits of one-handed use appear to us to outweigh the speed gain we would expect to be possible with two hands used in a device-independent way, which seems to us unlikely to be competitive with touch-typing on a full-size keyboard. We therefore assume one-handed typing, right or left as the user prefers, leaving the other hand free.
A hand ``typing'' on itself is a form of signing. Starner et al  have explored American Sign Language (ASL) as a word-oriented signing language. Their preliminary experiments were confined to a 40-word subset of ASL's 6000-word vocabulary, for which they achieved a per-word recognition accuracy of 97%.
In contrast Thumbcode is intended as a keyboard replacement, and as such is purely character-oriented. Thumbcode caters for all 128 7-bit ASCII characters as well as some of the other commonly used scan codes and features of standard PC keyboards such as cursor keys, function keys, the ALT key, simultaneous depression of SHIFT, ALT, and CTRL, etc. ASL is less well suited for this purpose: it does not have standard signs for all of ASCII, and those signs it does have for letters are quite ad hoc compared to the approach we propose here.
What distinguishes Thumbcode from other sign languages is that it works very much like typing on a keyboard. One ``types'' with the thumb on the twelve phalanges of the fingers as though they formed a keypad. (In this respect the fingers can be thought of as a Twiddler keypad built into the hand.) Simultaneously three bits of ``control-key'' information are provided by holding some fingers together and some apart.
Scalability is achieved by making no commitment to the method of recognizing Thumbcode as a sign language. No matter how small technology is able to shrink the recognition device, Thumbcode continues to be thumbed in exactly the same way as when recognizing it with bulkier devices.