Human - Computer Interfaces


See Jef Raskin's excellent book on the subject.  I do not agree with everything in there, but most of it is applicable, and Jef even proposes a method for obtaining numerical values for interface efficiency.  Jef unfortunately died at the age of 61 in 2005.

Text: modifying

Placing the insertion point in a text is an operation often performed with the aid of the mouse.  The cursor is then usually in the shape of an "I-beam":  .  The insertion point itself is usually a vertical bar, situated between two characters.  When you start typing, the cursor will remain attached to the mouse:  the I-beam does not move, it hangs somewhere over your text.  In intelligent applications, the I-beam cursor should disappear as soon as the user starts typing, and it should reappear as soon as the mouse is moved or another operation is started.  This was an early specification of the Apple Interface Guidelines.  It seems to have been lost.  These applications do not conform:

Excel especially is irritating:  the thick cross cursor obscures what you type.

Selecting text

A way to select text in a precise manner is to position the insertion point at one end of the desired selection, then moving it with the arrow keys while holding down the shift-key.  This feature should be present in all text windows, including small text fields in dialog panels.

Selecting text should also follow a common convention across applications.  Web browsers started to deviate from the norm, presumably because they wanted to give the dumb user a dumb interface:  when you click in the URL field of these browsers, the whole URL gets selected.  This annoying when you just want to make a minor correction.

Conforming Deviant
Opera 5.0 for MacOS X


Netscape 3 - 6
Internet Explorer 3 - 5

Adobe Golive in certain fields (e.g. page title)

In addition, these applications behave strangely when a return is pressed within such fields.  At least let me decide whether I want this feature by providing a preference setting.

When text has been selected, it is easy to place the insertion point at the start or the end of the selection:  pressing the left-arrow key puts it at the start and the right-arrow at the beginning.

When making corrections in a single-line text field, it is often desirable to select everything before a certain point, or everything after a certain point while keeping the rest.  To do this, the universal features used to be:

This was also very similar to selecting entire lines in multi-line text.  But this up or down movement does not work in Microsoft Windows.  There you have to drag all the way to the beginning or end of the line.  Some OSX applications now begin to adopt this laborious way of selecting.


There are three often-used classes of objects in a computer system:  documents (most important), applications and folders.  A document has some content which is of a certain type (see the problem of file name extensions).  There may be more than one application capable of operating on that type (e.g. text files and images in JPEG format can be handled by many applications) which is why we cannot work only with document icons:  sometimes we need to choose applications.  Folders are there to keep order in the mass of documents.  The windowing interface shows all three classes of items.  There was a time when it was easy to distinguish between them:  documents looked like a page with a dog-ear , folders looked like a tabbed manila coloured paper folder and applications had a lozenge shape:  .  These general forms still allowed a large variety of icons.  In a sense, the idea was similar to that of international traffic signs.  But commercial software developers and those who thought it would be boring to stick to some common, easy to remember rules, soon introduced literally any type of icon.  We now see rectangular applications and lozenge documents.  The worst are folders that have icons that make them look like applications or documents.  Bah.  Undesired diversity.

Windows or screen?

Some applications want to take over the entire screen.  This is a nuisance if you are working on a project for which you need several applications at once.  It is worse when the application does not allow you to resize its windows at all.  The following Mac OS applications do not conform:

And Microsoft Windows has an even worse problem:  applications cannot exist without a window open because there is no menu bar independent of the windows.  That means a Windows application quits when the last window is closed.  Windows defaults to full screen windows, effectively meaning Windows does not use windows…

Valid XHTML 1.0 StrictValid CSS

next planned revision: 2009-11