  Documentation enables sharing knowledge between the developers of a
technology and its users. Creating quality documents, however, is challenging:
Documents must satisfy the needs of a large audience without being overwhelming
for individuals. We address this challenge with a new document format, named
Casdoc. Casdoc documents are interactive resources centered around code
examples for programmers. Explanations of the code elements are presented as
annotations that the readers reveal based on their needs. We evaluated Casdoc
in a field study with over 300 participants who used 126 documents as part of a
software design course. The majority of participants adopted Casdoc instead of
a baseline format during the study. We observed that interactive documents can
contain more information than static documents without being distracting to
readers. We also gathered insights into five aspects of Casdoc that can be
applied to other formats, and propose five guidelines to improve navigability
in online documents.
