Macro recording is a practical technique for automating repetitive tasks on computers. The user records a series of actions, and then the computer can re-execute those actions. This paper discusses a variety of macros that were used to assist in a real-life task of editing a book manuscript. The capabilities of current tools are presented, followed by a discussion of how the limitations of these tools restrict current end users, and how some of these limitations can be overcome.
KEYWORDS: macro recording, automation, end user programming, demonstrational interfaces, programming by demonstration.
Most of the users of personal computers today do not know how to program. They use computers in their daily work to write letters, to keep track of finances, and to design illustrations. They have no interest in computers per se -- they just want to accomplish their tasks, and the computer is the best available tool.
Although computers are powerful tools and excel at performing repetitive tasks very quickly, it is nonetheless true that users must often perform repetitive tasks themselves, since there is no easy way for them to instruct the computer to perform the repetition.
Macro recorders can potentially solve much of this problem, since they offer a means to automate tasks without requiring the user to program. The user turns on the macro recorder program, performs a sequence of actions on the computer (such as typing text, selecting menu commands, and clicking on objects with a mouse), and the macro recorder records these actions. Later, when the user wants to perform that sequence of actions again, he or she simply gives a single command, and the macro program automatically executes the entire sequence.
In this paper, I will discuss a variety of repetitive tasks that I encountered while editing a manuscript for a book. This will hopefully convince the reader of the prevalence of computer activities that are appropriate for automation. I will show how some of these tasks could be effectively automated with a macro recorder. I also want to document some of the idiosyncratic problems that arise in real-life situations that can derail simply recorders. I will discuss why some of the tasks were difficult to automate, and why some could not be automated. Finally, I will discuss how some of these difficulties can be overcome.
back to ... Publications Allen Cypher