Color Keyboard

This webpage has been autogenerated from a version designed for print pdf



Date: 10th July 2007.

1. Background

I own a 3rd generation iPod. I enjoy using the device but my greatest frustration with it is the inability to search for an artist, song or album in a manner analogous to the search offered by iTunes. For this reason, I became interested in whether a practical text input system exists for what I term ’input constrained devices’. These are devices that may feature relatively powerful processors and good screens, but which are primarily limited by the physical interface that they provide to the user; I do not include devices such as mobile phones which feature a relatively large number of buttons. This document, and its associated software, are the product of a couple of days of investigation into this question.

2. Constraints and Considerations

I began by compiling a set of physical UI constraints that the text entry system would need to accomodate:

From these constraints we can deduce that the text-entry system must have the following characteristics:

In addition to these forced characteristics, I have a personal preference for text-entry systems that do not completely relegate punctuation to a league of second-division characters that are totally impractical to type. I also dislike systems that distinguish between long and short button presses. I find such systems annoying when I am a novice typist, since I often dwell on a keypress too long; and more importantly as an advanced typist, since I am required to wait an abitrary length of time until some keypresses are recognized.

Guided by these considerations, I first explored dictionary based approaches ( la T92) based on the principle of one-click one-letter followed by a disambiguation phase (and possibly by a direct entry system for unrecognized letters). Though I think that such a system is workable (I came up with a number of designs) my concern with this approach was threefold:

So I then turned my attention to designing a direct text-entry system; one in which the user focuses on entering each letter in turn (in contrast to typing whole words).

3. The System

The text-entry system I designed operates as follows:

4. Pros & Cons

The system has a number of benefits:

Due to the constraints inherent in typing human readable text with so few buttons, the system also has a number of weaknesses:

5. Implementation

To prove the system as being workable, I created a flexible implementation in Java. In this implementation:

6. Evaluation

I have not attempted to conduct a study into the usability of this typing system, but anecdotal evidence indicates that the system is very easy to learn. For users who are familiar with the QWERTY keyboard, the most significant task seems to be learning the association between colours and buttons. Feedback indcates that users believe they would be more comfortable with fixed color sequences, but this has not been verified.

Ultimately, one needs to consider the input system against a ’natural’ input mechanism for a given device. In the context of an iPod, the obvious interface is that of letter selection using the click-wheel to move left and right through the alphabet. For a device that features a D-pad, letter selections could be made by moving a cursor over a displayed keyboard.

On these grounds, the system’s true benefits are slightly uncertain. Though it is almost certainly faster than either of these alternatives, I do not believe it can be regarded as equally intutitive.

7. Applications

I believe that the system could provide a usable typing mechanism for input-constrained devices. Naturally, no user would want to enter large volumes of text in this way, but for the input of small amounts of text (say into simple digital forms or application search fields) the system seems perfectly adequate.

The system might also prove useful for individuals with accessibility problems that prevent them from using a standard keyboard. The speed-insensitive nature of the system, combined with its small number of required buttons might make it ideal for users who can only rely on gross motor skills for computer-peripheral operation.

8. Improvements

During the implementation of the system, I identified the following possible improvements:

1A direction pad common in games console controllers.

2T9 is a predictive text input system developed for mobile phones.

3Certainly, on the surface, the algorithms appear costly in terms of time and/or memory. However, it might be the case that significant optimizations might be possible.

4Currently a collection of P.G. Wodehouse stories from Project Gutenberg