The Rethinking CS101 Project

Perhaps the most fundamental idea in modern computer science
is that of interactive processes. Computation is embedded in a
(physical or virtual) world; its role is to interact with that
world to produce desired behavior. While von Neumann serial
programming is based on the idea that "computation as
calculation" uses inputs at the beginning to produce
outputs at the end. "Computation as interaction" treats
inputs as things that are monitored and outputs as actions
that are taken over the lifetime of an ongoing process. By
beginning with a decomposition in terms of interacting
computational processes, we can teach our students a model of
the world much closer to the one that underlies the thinking
of most computer professionals.

Contact Us

If you are an instructor interested in using these materials
in your class, please contact us via email
(cs101@lists.olin.edu) to let us know. We are generally happy to know that our material is being used, but appreciate feedback on who is using it, in what capacity, etc. For more detail, see our terms of use.

This page is a part of Lynn Andrea Stein's
Rethinking CS101 project, part of the Computers and Cognition Group
at the Franklin W. Olin College of Engineering.
This material is based upon work supported by the National Science Foundation under Grant No. EIA-0196404. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation