{'fraction_non_alphanumeric': 0.01810436634717785, 'fraction_numerical': 0.0, 'mean_word_length': 4.987261146496815, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Designing Interactive Tutorials for Computer Users

ThingLab is a constraint-oriented, interactive graphical system for building simulations. A typical problem in ThingLab (and systems like it) is that, to define an object with a new kind of constraint, the user must leave the graphical domain and write code in the underlying implementation language. This makes it difficult for less experienced users to add new kinds of constraints or to modify existing ones. As a step toward solving this problem, the system described here allows the graphical definition of objects that include new kinds of constraints. This is supported by an interface in which a user can open two views on an object being defined, a use view and a construction view. The use view shows the object's normal appearance. The construction view contains additional objects and constraints, which serve to graphically specify the new constraints on the defined object.