The Rethinking CS101 Project

While-True-Echo Logo

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.

More Info

Start Using

Supporting Materials

Contact Us

If you are an instructor interested in using these materials in your class, please contact us via email ( 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
Valid HTML 4.01!
Valid CSS!
Last modified: Monday, December 5 2005 at 5:19 AM EST