Balloon help

Balloon help is a help system introduced by Apple Computer in their 1991 release of System 7.0. The name referred to the way the help text was displayed, in "speech balloons", like those containing words in a comic strip. The name has since been used by many to refer to any sort of pop-up help text.

The problem
During the leadup to System 7, Apple studied the problem of getting help in depth. They identified a number of common questions, such as Where am I?, How do I get to...?, or worse, Why is that item "grayed out"?. In the context of computer use they identified two main types of questions users asked: What is this thing? and How do I accomplish...?. Existing help systems typically didn't provide useful information on either of these topics, and were often nothing more than the paper manual copied into an electronic form.

One of the particularly thorny problems was the What is this thing? question. In an interface that often included non-standard widgets or buttons labeled with an indecipherable icon, many functions required the end user referring to their manual. Users generally refused to do this, and ended up not using the full power of their applications since many of their functions were "hidden". It was this problem that Apple decided to attack, and after extensive testing, settled on Balloon Help as the solution.

Apple's solution for How do I accomplish...? was Apple Guide, which was added to System 7.5 in 1994.

Mechanism
Balloon help can be activated by choosing Show Balloon Help from System 7's new Help menu (labelled with a Balloon Help icon in System 7, the Apple Guide icon in System 7.5, and the word Help in Mac OS 8). While balloon help is active, moving the mouse over an item displays help for that item. Balloon help can be deactivated by choosing Hide Balloon Help from the same menu.

The underlying system was based on a set of resources included in application software, holding text that would appear in the balloons. The balloon graphics and resizing were supplied by the operating system itself. The balloon content when displayed in text typically was sourced entirely from resources, as they could be added fairly easily using Apple's Rez resource compiler or third-party software like Resourcerer. Apple also supplied a custom editor application to simplify the process, which displayed a list of only those objects that required balloons, and edited the text inside a balloon shape to give the developer a somewhat rough idea of how the resulting balloon would be displayed. Additionally, there was a system level API that could be utilized by the application programmer to directly create and display balloons containing text, graphics, or a mixture of both.

The engine would automatically display the proper balloon based on the mouse location and the item's current state. It also positioned the balloon using an algorithm designed to keep it from covering the objects being examined and adjusted the cartouche to point appropriately. Help text for most common UI elements, such as the Close Box on a window, was built into the system. Developers could also include balloons for their application icon itself, allowing users to identify an unknown application in the Finder without launching it.

Developers were encouraged to not just name an object, but to describe its function and explain its state. For instance, for the Copy menu command Apple suggested the detailed "Copies the selected text onto the clipboard", as well as a second version that added "Not available now because there is no selection". This feature explained to users why a particular menu item was disabled.

Legacy
Microsoft subsequently introduced the similar "tooltips" in Windows 95, which serves a similar purpose, but they are generally smaller and appear without being specifically turned on. A similar system called "help tags" was used in OPENSTEP and retained for Mac OS X.

The balloon help concept has since been adopted as an optional alternative to tooltips in later versions of Microsoft Windows, such as Windows XP, which uses balloons to highlight and explain aspects of various programs or operating system features (Balloons in msdn). Balloon help is also highly visible in the Squeak Smalltalk environment, in the Enlightenment window manager, and in the AmigaOS's MUI.

Incidentally, Microsoft was able to add their own embodiment of Balloon help by acquiring the original patent among many purchased from Apple Computer in the early 1990s. That first, and original patent is described in "Method of calculating dimensions and positioning of rectangular balloons" filed in 1991.