  In the context of a classroom lesson, concepts must be visualized and
organized in many ways depending on the needs of the teacher and students.
Traditional presentation media such as the blackboard or electronic whiteboard
allow for static hand-drawn images, and slideshow software may be used to
generate linear sequences of text and pre-animated images. However, none of
these media support the creation of dynamic visualizations that can be
manipulated, combined, or re-animated in real-time, and so demonstrating new
concepts or adapting to changes in the requirements of a presentation is a
challenge. Thus, we propose Chalktalk as a solution. Chalktalk is an
open-source presentation and visualization tool in which the user's drawings
are recognized as animated and interactive "sketches," which the user controls
via mouse gestures. Sketches help users demonstrate and experiment with complex
ideas (e.g. computer graphics, procedural animation, logic) during a live
presentation without needing to create and structure all content ahead of time.
Because sketches can interoperate and be programmed to represent underlying
data in multiple ways, Chalktalk presents the opportunity to visualize key
concepts in computer science: especially data structures, whose data and form
change over time due to the variety of interactions within a computer system.
To show Chalktalk's capabilities, we have prototyped sketch implementations for
binary search tree (BST) and stack (LIFO) data structures, which take advantage
of sketches' ability to interact and change at run-time. We discuss these
prototypes and conclude with considerations for future research using the
Chalktalk platform.
