The mission of the Carnegie Mellon Center for Computational Thinking is “to advance computing research and advocate for the widespread use of computational thinking to improve people’s lives.” Jeanette Wing, the center’s director, has a vision for the 21st century whereby computational thinking is as fundamental to education as reading, writing and arithmetic.
Wing describes computational thinking as a way of solving problems, designing systems and understanding human behavior using techniques from computer science such as algorithms, recursion, abstraction, decomposition, modularization, caching, redundancy, error correction, contracts interfaces, heuristic reasoning. While these techniques may seem too technical to be practical beyond computer programming, Wing includes everyday examples:
When your daughter goes to school in the morning, she puts in her backpack the things she needs for the day; that’s prefetching and caching. When your son loses his mittens, you suggest he retrace his steps; that’s back-tracking. At what point do you stop renting skis and buy yourself a pair?; that’s online algorithms. Which line do you stand in at the supermarket?; that’s performance modeling for multi-server systems. Why does your telephone still work during a power outage?; that’s independence of failure and redundancy in design.
(see: J.M. Wing Computational Thinking CACM, vol. 49, no.3 March 2006, pp. 33-35.)