Pubs 1994-2003

Eisenberg, M. and (Eisenberg) Nishioka, A.  1994.  HyperGami: A Computational System for Creating Decorated Paper Constructions.  Proceedings of the Origami Science Meeting, Otsu, Japan, November 1994.


Eisenberg, M. and (Eisenberg) Nishioka, A.  1994.  HyperGami: The Printer as ToyshopUniv. of Colorado Department of Computer Science Technical Report CU-CS-737-94.  August, 1994.


Eisenberg, M.  1994. Programmable applications for the arts: computational tools for hand, eye and mind. Know.-Based Syst. 7, 4 (December 1994), 239–246. DOI:https://doi.org/10.1016/0950-7051(94)90035-3

Commercial applications for the arts tend to enforce a division between the use of learnable direct manipulation interfaces and the use of powerful, well supported programming environments. In contrast, programmable applications integrate these two software-design paradigms (i.e. direct manipulation and programming languages) and thereby attempt to exploit the strengths of both. A sample graphics application, SchemePaint, is outlined, and some of the issues related to the creation of programmable applications for the arts are discussed.


Eisenberg, M. and Fischer, G.  1994.  Programmable design environments: integrating end-user programming with domain-oriented assistance.   In Proceedings of the SIGCHI Conference on Human Factors in Computing Systems (CHI ’94). Association for Computing Machinery, New York, NY, USA, 431–437. DOI:https://doi.org/10.1145/191666.191813

Programmable design environments (PDEs) are computational environments that integrate the conceptual frameworks and components of (a) design environments and (b) programmable applications. The integration of these two approaches provides elements (such as software “critics” and “query-able objects”) that assist users in learning both the application and its domain; in addition, an interactive “application-enriched” end-user programming environment stresses the values of expressiveness and modifiability. By way of illustration, we present a newly-developed programmable design environment, SchemeChart, for the domain of charting and information displays.


Eisenberg, M.  1995.  Programmable applications: interpreter meets interface. SIGCHI Bull. 27, 2 (April 1995), 68–93. DOI:https://doi.org/10.1145/202511.202528

Current fashion in “user-friendly” software design tends to place an over-reliance on direct manipulation interfaces. To be truly expressive (and thus truly user-friendly), applications need both learnable interfaces and domain-enriched languages that are accessible to the user. This paper discusses some of the design issues that arise in the creation of such programmable applications. As an example, we present “SchemePaint,” a graphics application that combines a MacPaint-like interface with an interpreter for (a “graphics-enriched”) Scheme.


Eisenberg, M. 1995.  Embedding languages within design environments. Know.-Based Syst. 8, 2–3 (April-June 1995), 135–142. DOI:https://doi.org/10.1016/0950-7051(95)98375-G

Large-scale computer applications reflect numerous sources of complexity: complexity originating in the constructs of the application domain, complexity of feature-rich interfaces, and (in many cases) complexity arising from the inclusion of end- user programming environments. The paper discusses a soft- ware design strategy for the creation of programmable design environments (PDEs); such environments are geared toward alleviating, for users, the negative effects of various sources of complexity. The paper illustrates this notion of PDEs with a description of a charting/graphing application named SchemeChart.


Blough, E. and Eisenberg, M.  1995. Combining programming languages and direct manipulation in environments for computational science. In Proceedings of the 1st conference on Designing interactive systems: processes, practices, methods, & techniques (DIS ’95). Association for Computing Machinery, New York, NY, USA, 123–130. DOI:https://doi.org/10.1145/225434.225448

Creating computational environments for scientists presents an unusual challenge to software designers. Computational scientists have the skills and motivation to explore models via programming, yet also have highly-developed qualitative visual skills (e.g., interpretation of plots). Unfortunately, software designers have traditionally considered programming and point-and-click interfaces to be mutually exclusive. We propose instead that the most expressive computational environments for scientists are those in which programming and direct manipulation are both present, each supplementing the other. We present several broad themes of interfacelanguage integration. illustrating them with three prototype applications that we arc developing to support specific research areas of computational science; and we extend these themes into promising paths for future exploration.


DiGiano, C. and Eisenberg, M.  1995.  Self-disclosing design tools: a gentle introduction to end-user programmingProceedings of the 1st conference on Designing interactive systems: processes, practices, methods, & techniques (DIS ’95)89–197.  https://doi.org/10.1145/225434.225455

Programmable tools for design offer users an expressive new medium for their work. but becoming acquainted with the tool’s language can be a daunting task. To address this problem. we present a framework for the design of selfdisclosing tools which provide incremental. situated language learning opportunities for designers in the context of authentic activity. By way of example, we present Chart ‘n’ Art. a programmable application for the creation of graphs and information displays. Chart ‘n’ Art employs a wide variety of self-disclosure techniques whose purpose is to introduce users to the system’s “domain-enriched” dialect of Lisp.


Eden, H., Eisenberg, M., Fischer, G., Repenning, A.  1996.  Making Learning a Part of Life.  In Communications of the ACM, Volume 39, Issue 4.  April 1996, 40–42.  https://doi.org/10.1145/227210.227222


DiGiano, C. and Eisenberg, M.  Designing Pedagogical Screen Savers.  CHI ’96: Conference Companion on Human Factors in Computing SystemsApril 1996, pp 185–186  https://doi.org/10.1145/257089.257250

The burgeoning complexity of professional application software-the proliferation of interface options, available functionality, and end-user languages—has resulted in the need to think creatively about ways in which such software may be made more learnable. This paper describes one promising technique—the pedagogical screen saver— whose purpose is to introduce users to application functionality, entertainingly and unobtrusively, during the program’s “idle time.” We describe a running prototype of such a screen saver for a programmable charting application.


Eisenberg, M. and (Eisenberg) Nishioka, A.  1996.  Polyhedral Sculpture: the Path from Computational Artifact to Real-World Mathematical Object.  Proceedings of NECC ’96 (National Educational Computing Conference), Minneapolis, June 1996, pp. 121-129.  https://doi.org/10.1145/274375.274381.

Mathematics educators often despair at the subject’s austere, “abstract” reputation. This paper describes recent work in developing an application named HyperGami, whose purpose is to integrate both the abstract and “real-world” aspects of mathematics by allowing children to design and construct polyhedral models and sculptures. We describe a sample HyperGami sculpture, and present our observations during the past year of pilot studies with elementary and middle school students.


Eisenberg, M.  1996.  The Thin Glass Line:  Designing Interfaces to Algorithms.  In Proceedings of CHI ’96:  Proceedings of the SIGCHI Conference on Human Factors in Computing Systems.  Vancouver, BC.  April 13-18, 1996.  https://doi.org/10.1145/238386.238474

Modern application software often includes operations that are performed by complex mathematical algorithms. These algorithms–far from being the “black boxes” typically portrayed in computer science courses– may instead be viewed as interactive processes, each presenting its own particular “interface” to the user. This paper, then, offers a number of intepface guidelines for mathematical algorithms–principles whose purpose is to suggest ways in which users may employ algorithms with greater control and expressiveness. As a source of examples, we illustrate the guidelines through a particular complex mathematical problem–that of generating a “folding net” for a three-dimensional solid.


Eisenberg, M., Mackay, W., Druin, A., Lehman, S., and Resnick, M.  Real meets virtual: blending real-world artifacts with computational media.  In CHI ’96: Conference Companion on Human Factors in Computing Systems159–160.  https://doi.org/10.1145/257089.257230

Panelists in this session will defend a variety of distinct visions for integrating “real-world” and computational media. Our aim is to explore the ways in which computers, and computer interfaces, can lend themselves to new and enriched interactions with objects and to new paradigms of handicrafts—with particular emphasis on the role of crafts and real-world objects in education.


Eisenberg, M. and DiBiase, J.  1996.  Mathematical Manipulatives as Design Artifacts:  the Cognitive, Affective, and Technological Dimensions.  In ICLS ’96:  Proceedings of the 1996 International Conference on the Learning Sciences.  July 1996.  44-51.

Mathematical manipulatives — tangible objects with a pedagogical purpose — have become popular tools in mathematics education. But typically, the notion of a “manipulative” carries with it a number of additional assumptions: that these objects are designed for elementary (as opposed to advanced) mathematics instruction; that they have little in the way of emotional meaning for their users; and that they are relatively simple, “low-tech” objects. In this paper we challenge these assumptions. Drawing on our experiences in two related projects in educational computing, we suggest that manipulatives may be designed for advanced mathematical topics; that they may offer creative (and thus affectively important) opportunities for students; and that they may be designed in ways that accompany or incorporate computational media.


Eisenberg, M. and (Eisenberg) Nishioka, A.  1997.   Orihedra: Mathematical Sculptures in Paper.  International Journal of Computers for Mathematical Learning., 1(3):  225-261.  https://doi.org/10.1007/bf00182617.

Mathematics, as a subject dealing with abstract concepts, poses a special challenge for educators. In students’ experience, the subject is often associated with (potentially) unflattering adjectives – “austere”, “remote”, “depersonalized”, and so forth. This paper describes a computer program named HyperGami whose purpose is to alleviate this harsh portrait of the mathematical enterprise. HyperGami is a system for the construction of decorated paper polyhedral shapes; these shapes may be combined into larger polyhedral sculptures, which we have dubbed “orihedra.” In this paper, we illustrate the methods by which orihedra may be created from HyperGami solids (using the construction of a particular sculpture as an example); we describe our experiences with elementary- and middle-school students using HyperGami to create orihedra; we discuss the current limitations of HyperGami as a sculptural medium; and we outline potential directions for future research and software development.


Eisenberg, M. and (Eisenberg) Nishioka, A.  1997. Creating Polyhedral Models by Computer.  Journal of Computers in Mathematics and Science Teaching. 16(4):477-511.

This paper describes a computer application named HyperGami that permits users to design, explore, decorate, and study a rich variety of paper polyhedral models. In structure, HyperGami is a “programmable design environment”, including both a direct manipulation interface as well as a domain-enriched programming environment based on the Scheme language; the application is thus designed to be accessible to students of geometry while providing challenging projects for long-term or expert users (such as professional mathematicians and designers). In the course of this paper, we describe the HyperGami interface and language; illustrate the construction of “customized polyhedra” of various sorts; discuss the results of our initial experiences using the system in working with middle-school students; and argue for the utility of embedding programming languages in educational design environments such as this one.


(Eisenberg) Nishioka, A. and Eisenberg, M.  1997.  Paper Modelling from a Distance: Computational Crafts on the Web.  Proceedings of Association for the Advancement of Computing in Education (AACE) ED-MEDIA/ED-TELECOM 97 Calgary, August 1997, pp. 757-762. (Recipient, Best Paper Award).


Eisenberg, M., (Eisenberg) Nishioka, A., and Schreiner, M.E.  1997.  Helping Users Think in Three Dimensions: Steps Toward Incorporating Spatial Cognition in User Modelling.  Proceedings of 1997 International Conference on Intelligent Interfaces (IUI 97), Orlando, Florida, January 1997, pp. 113-120.  https://doi.org/10.1145/274375.274381

Historically, efforts at user modelling in educational systems have tended to employ knowledge representations in which symbolic (or “linguistic”) cognition is emphasized, and in which spatial/visual cognition is underrepresented. In this paper, we describe our progress in developing user models for an explicitly “spatial” educational application named HyperGami, in which students design (and construct out of paper) an endless variety of three-dimensional polyhedra. This paper gives a brief description of the HyperGami system, discusses our observations (and experimental results) in understanding what makes certain polyhedral shapes difficult or easy to visualize and describes the ideas through which we plan to augment HyperGami with user models that could eventually form the computational basis for “intelligent spatial critics.”


Eisenberg, M. and Eisenberg (Nishioka), A.  1998.  Shop Class for the Next Millennium: Education through Computer-Enriched Handicrafts.  Journal of Interactive Media in Education, Oct. 98.  https://doi.org/10.5334/1998-8.

In this paper we use our experiences with the HyperGami program as a springboard for a broader look at the future of computationally-enriched handicrafts. HyperGami is an educational application for the design and construction of mathematical models and sculptures in paper; as such, it serves as a source of examples and insights for the more general problem of how to integrate the “high-tech” features of computation with the “low-tech” features of traditional craft materials in education. We begin by describing the HyperGami program, focusing on those features that were designed in response to problems encountered by papercrafters; we illustrate the program’s capabilities by presenting some of our own and our students’ papercraft designs; and we describe our initial steps in implementing elements of HyperGami on the World Wide Web. In the closing sections of the paper, we explore the broader educational issues involved in integrating computation and handicrafts; and we conclude with a discussion of how physical objects could play a role in a future “educational object economy.”


Wrensch, T. and Eisenberg, M.  1998.  The Programmable Hinge: Toward Computationally Enhanced Crafts.  Proceedings of UIST 98, San Francisco, November, pp. 89-96.  https://doi.org/10.1145/288392.288577.

Traditionally, the practitioners of home crafting and the practitioners of computing tend to occupy distinct, nonoverlapping cultures. Those small, ubiquitous items of the crafting culture—string, thumbtacks, screws, nails, and so forth—thus tend to be viewed as inevitably “lowtech” objects. This paper describes our initial efforts toward integrating computational and crafting media by creating an instance of a computationally-enhanced craft item: a programmable hinge. We describe several prototype models of the hinge; outline a sample project in which the hinge might be employed; and discuss a variety of fundamental issues that affect the design of computationally-enhanced craft items generally.


Eisenberg, M., Rubin, A., and Chen, T. 1998.  Computation and Educational Handicrafts: a Strategy for Integrative Design.  In Proceedings of International Conference on the Learning Sciences, 1998, Atlanta, December, pp. 84-90.


Blauvelt, G., Wrensch, T., and Eisenberg, M. 1999. Integrating craft materials and computation. In Proceedings of the 3rd conference on Creativity & cognition (C&C ’99). ACM, New York, NY, USA, 50-56.

Traditionally, the notion of home crafting connotes the use of “low-tech” materials and techniques; but increasingly, the once-distinct worlds of crafting and computational media have become integrated, to the mutual benefit of both cultures. In this paper, we discuss a wide range of recurring issues in the integration of crafts and computation, drawing upon a variety of related research projects. In particular, we explore the ways in which attention to computational crafts can encourage a productive re-examination of such notions as programming languages, computer architectures, and peripheral devices.


Eisenberg, M. and Eisenberg, A.  1999. The Developing Scientist as Craftsperson. In N. Roberts, W. Feurzeig, and B. Hunter, eds. Computer Modeling and Simulation in Pre-College Science Education, NY: Springer-Verlag, pp. 259-281.  https://doi.org/10.1007/978-1-4612-1414-4_11.

Increasingly, the day-to-day practice of science education is pervaded by the presence of computational media. Simulations, modeling tools, and virtual laboratories have become the stock in trade of the up-to-date science educator. As a consequence, the young scientist is a person who, more and more, spends a large proportion of his or her time in abstract and nonphysical “worlds.” This move toward an increasingly virtualized science education has important benefits for some scientific domains and for some activities: Perhaps only through the simulation of especially complex systems can the student get a sense of how such systems are capable of behaving. Moreover, the real, physical world constrains us as human beings—and it may constrain our scientific imaginations as well. We cannot easily experience the frictionless environments that would make many principles of Newtonian mechanics more intuitive (Chapter 10; White and Horwitz, 1987; diSessa, 1982); we do not grasp the behavior of objects moving at speeds near that of light (Horwitz, 1994); we do not see firsthand the evolution of ecosystems, a phenomenon perhaps best understood at a time scale of millennia (Dawkins, 1996). In all these cases, the building and studying of virtual worlds, simulations, and abstract models may be a crucial step in the education of the scientist.


Eisenberg, M. and Eisenberg (Nishioka), A. Middle Tech: Blurring the Division Between High and Low Tech in Education.  1999.  In A. Druin, ed. The Design of Children’s Technology, San Francisco: Morgan Kaufmann,  244-273.


Blauvelt, G.; Wrensch, T.; and Eisenberg, M.  2000.  Integrating Craft Materials and Computation.  Knowledge-Based Systems, 13(7-8): 471-478  (Expanded version of a paper that originally appeared in Proceedings of Creativity and Cognition 3, Loughborough UK, Oct. 1999).  https://doi.org/10.1016/s0950-7051(00)00063-0

Traditionally, the notion of home crafting connotes the use of “low-tech” materials and techniques; but increasingly, the once-distinct worlds of crafting and computational media have become integrated, to the mutual benefit of both cultures. In this paper, we discuss a wide range of recurring issues in the integration of crafts and computation, drawing upon a variety of related research projects. In particular, we explore the ways in which attention to computational crafts can encourage a productive re-examination of such notions as programming languages, computer architectures, and peripheral devices.


Eisenberg, M. and Eisenberg, A. 2000.  Designing Real-Time Software Advisors for 3D Spatial Operations.  In S. O’Nuallain, Spatial Cognition, Amsterdam: John Benjamins, pp. 185-197.  (Originally in Proceedings of MIND III Conference on Spatial Cognition, Cognitive Science Society of Ireland, Dublin, August 1998.)


Wrensch, T., Blauvelt, G., and Eisenberg, M. 2000. The rototack: designing a computationally-enhanced craft item. In Proceedings of DARE 2000 on Designing augmented reality environments (DARE ’00). ACM, New York, NY, USA, 93-101.  https://doi.org/10.1145/354666.354676.

This paper describes our progress in creating a device called a rototack. In its design, the rototack is an example of a computationally-enhanced craft item: a small, robust, inexpensive, and versatile — but also programmable — physical object for use in a variety of educational and home crafting projects. In particular, the tack is a source of rotational motion, suitable for turning light objects or for powering (e.g.) cams, gears, and linkages in complex, user-defined patterns. We describe the engineering decisions and trade-offs involved in creating our current prototype of the tack; discuss the central issues in creating a programming language and environment for the device; and sketch a variety of potential uses to which the tack might be put.


Blauvelt, G., Wrensch, T., and Eisenberg, M. 2000. Integrating craft materials and computationKnow.-Based Syst. 13, 7-8 (December 2000), 471-478.

Traditionally, the notion of home crafting connotes the use of “low-tech” materials and techniques; but increasingly, the once-distinct worlds of crafting and computational media have become integrated, to the mutual benefit of both cultures. In this paper, we discuss a wide range of recurring issues in the integration of crafts and computation, drawing upon a variety of related research projects. In particular, we explore the ways in which attention to computational crafts can encourage a productive re-examination of such notions as programming languages, computer architectures, and peripheral devices.


Blauvelt, G. and Eisenberg, M.  2001.  MachineShop:  steps toward exploring novel I/O devices for computational craftwork.  Proceedings of IEEE International Conference on Advanced Technologies.  Madison, WI.  pp. 301-304.  https://doi.org/10.1109/ICALT.2001.943928.

The notion of “computational crafting” focuses on the numerous ways in which computational media may be used to expand the expressive range of traditional educational crafts. One important dimension of this approach involves a close re-examination of an issue often taken for granted in educational technology – namely, the design and use of I/O devices. The next decade is likely to produce a fascinating array of novel I/O devices and technologies; these in turn offer substantial promise of augmenting the power of computational tools for children’s craftwork. This paper describes initial work toward developing an educational crafting application for the design of mechanical toys and automata. Our application, MachineShop, is intended to allow students to create mechanical parts (e.g. cams, gears, and shafts) that may be customized and simulated on the computer screen, and finally “printed out” on a laser cutter for realization in materials such as wood and foam core. We describe the current (early) state of the application and discuss its implications for the design and use of novel or unorthodox I/O devices in educational technology.


Wrensch, T., Eisenberg, M., and Blauvelt, G.  2001. Computationally-Enhanced Craft Items: Toward ‘Programmable Parts’ for Educational Robotics.  In AAAI Spring Symposium on Robotics and Education, March, Palo Alto, CA.


Eisenberg, M.  2002.  Output Devices, Computation, and the Future of Mathematical Crafts.  International Journal of Computers for Mathematical Learning, 7(1): 1-44.  https://doi.org/10.1023/A:1016095229377

This paper argues that the advent of powerful, affordable output devices offers the potential for a vastly expanded landscape of computationally-enriched mathematical craft activities in education. While mathematical crafts have a venerable history in classrooms, they have also suffered from a reputation of being both intellectually marginal and technologically retrograde. Nonetheless, this paper argues that craft activities have both intellectual and emotional affordances that are relatively lacking in ‘traditional’ computer-based education; and that the combination of crafts and computation (facilitated by novel output devices and materials) can render such activities still more valuable. As springboards for discussion, the paper describes three software applications geared toward computational crafts (HyperGami, HyperSpider, and MachineShop). Each of these systems highlights its own particular set of issues relevant to the development of output technologies. Using these three systems as objects-to-think-with, the paper describes a wide variety of possible craft activities that could be invented or pursued in the near future with the aid of appropriately designed output devices.


Eisenberg, M., Eisenberg, A., Gross, M., Kaowthumrong, K., Lee, N. and Lovett, W. 2002. Computationally-Enhanced Construction Kits for Children: Prototype and Principles.  Proceedings of ICLS (International Conference on the Learning Sciences), Seattle, WA, pp. 79-85.

Construction kits—toys designed for the building or assembly of physical models—often play an important educational role in children’s lives. While such kits have tremendous strengths (e.g., they permit children to build three-dimensional models and to learn through tactile experience), they also have interesting limitations. Traditional construction kits offer little in the way of direct communication with their users—for example, a traditional kit cannot offer a student information or advice about how to proceed in building a model. More generally, traditional constructions—i.e., the models produced—tend to be aesthetically and behaviorally limited. This paper argues that through the use of embedded computation, pieces within a construction kit may communicate with each other, with desktop machines, and with their users; and overall, by integrating construction kits with computation, the educational power and expressiveness of these kits can be greatly increased. As an example of many of the ideas presented here, we describe a prototype of a computationally-enhanced construction kit: a set of speech-enabled alphabet blocks. We conclude by discussing a variety of related research efforts and directions for future work.


Blauvelt, G. and Eisenberg, M.  2002. Printing Reconsidered: Exploring New Directions for Output Devices in Educational Technology.  Proceedings of ICLS (International Conference on the Learning Sciences), Seattle, WA.


Eisenberg, M.  2003.  Mindstuff: Educational Technology Beyond the ComputerConvergence, 9:2 (Summer 2003), pp. 29-53. https://doi.org/10.1177/135485650300900205

Seymour Papert’s book Mindstorms, first published in 1980, has had a profound impact on the ideas (and lives) of a generation of educational technologists and designers. This paper re-examines several of the most compelling ideas from Mindstorms in the light of recent advances that blend computational technology and materials science. In some respects, this growing détente between the physical and virtual lends greater force to Papert’s ideas than did the original examples in the book, centered as those ideas were on the then current portrait of the desktop computer.


Eisenberg, M., Eisenberg, A., Hendrix, S., Blauvelt, G., Butter, D., Garcia, J., Lewis, R., and Nielsen, T.  2003.   As We May Print: New Directions in Output Devices and Computational Crafts for Children.  In Proceedings of Interaction Design and Children 2003, Preston, UK, pp. 31-39.  https://doi.org/10.1145/953536.953543.

In recent years, educational technologists and designers have begun to explore a variety of ways in which physical and computational media can be integrated-for instance, through the design of “intelligent toys” for children . This paper describes our ongoing efforts at exploring a different sort of physical-computational integration, focusing on children’s design activities, output devices, and the notion of “printing out” more generally . We describe several representative systems under development in our group; each of these systems highlights particular possibilities for exploring and experimenting with output devices for children’s crafts. We also present a set of design educational range and heuristics-useful techniques for those designers interested in expanding the expressiveness of craft activities for children .


Butter, D., Eisenberg, M., Garcia, J., Lewis, R., and Nielsen, T.  2003. Three-Dimensional Printing on a Budget: a Classroom-Friendly Technique for Viewing and Visualizing Solid Objects.  In Proceedings of ED-MEDIA 2003, Honolulu, HI, pp. 990-993.

Representing and understanding three-dimensional structures is a central problem in mathematics and science education. This paper describes a software system, Spectre, that can be used to print out a series of horizontal “slices” of three-dimensional objects onto transparency sheets. These transparencies may then be used in a (largely forgotten) half-century-old homemade device for displaying solid forms. We describe our software (and the accompanying physical device); discuss the advantages and drawbacks of our technique for three-dimensional representation; and outline directions for continuing and future work.


Eisenberg, M.  2003. Creating a computer science canon: a course of “classic” readings in computer science.  In SIGCSE ’03: Proceedings of the 34th SIGCSE Technical Symposium on Computer Science Education.  February 2003, 336–340.  https://doi.org/10.1145/611892.612002.  Also published in ACM SIGCSE Bulletin: Volume 35 Issue 1, January 2003.

Computer science has a reputation of being a discipline in a perpetual state of accelerated progress—a discipline in which our techniques, our hardware, our software systems, and our literature rarely exhibit a staying power of more than several years. While undeniably exciting, this state of continual intellectual upheaval can leave computer science students (and faculty) with a disturbing sense that there is no essential core of great work within the discipline. This paper describes a readings course entitled “Computer Science: the Canon” whose purpose is to counter this perception by exploring a set of “great works” in computer science. We describe our own (undoubtedly idiosyncratic) reading list used for the course, and discuss several central issues involved in offering such a course within a computer science curriculum.