ddotdash is an experiment in morse code touchtyping for mobile phones. Stop laughing.
Most virtual mobile "qwerty" keyboards take up half of the screen. Can we cut that in half?
The slowness and error rate of mobile qwerty is mainly due to the precise tapping involved. Novice users resort to hunt 'n peck. Expert users tend to use a combination of defocused vision and muscle memory. If you have large or flat fingers the tiny keys are a constant pain (see: Pointy-Fingered-Elf Conspiracy). So our "keys" should be at least 1cm square -- big enough to mash without needing to look.
Standard Morse code has a bias towards codes with more dots than dashes, for obvious reasons. This means there is prime real-estate available on the dash side of the tree. But it also means a strong bias towards whichever side of the keyboad holds the dot buttons. That's a tricky problem.
Visual feedback to tell you what character will be inserted, and what characters different key sequences will produce. Audio feedback can help associate movements with motion. (NB: mobile Safari does not repeat does not allow embedded audio. Audio files appear as large floating buttons which open quicktime player. A pity.)
A game-like feedback loop combining audible, visual and tactile clues along with the possibility of failure can greatly improve learning times (see: Magic Ink, Everything Bad is Good for You)
That works out to about 30wpm.
Standard Morse codes can become ridiculous, epecially since tapping a glass square with the edge of your thumb is very different from an ergonomic, spring-loaded, telegraph arm. Distingushing from dits and dahs is non-trivial. And it's be a shame to waste the second thumb. The optimal keyboard seems to be 4 or 6 keys: [.] [..] [.-] [-] [--] and [-.]
These have always been a bugbear on mobile qwerty. Apple's number and symbol shifts are nice but still tiresome. If possible, define the left-brackets ( { [ < in terms of buttons on the left and right brackets on the right. Use easy unused sequences like [-.][-.][-.] for punctuation. If necessary, evict non-Roman characters like CH [--][--] in favor of punctuation.