b, a useful tool that students encounter during the study of fractions. Euclid’s classic algorithm, applied to computing gcd( 56, 21), for example, proceeds as follows: ( 56, 21)⇒( 35, 21)⇒( 14, 21) ⇒( 14, 7)⇒( 7, 7). Here, “⇒” is an abstraction of the function l a,b.if a<b,(a,b-a); else (a-b,b). We can compare the efficiency of Euclid’s algorithm to an exhaustive linear search. This comparison further provides a chance to discuss representation and decision. For linear search, a single number captures the complete state since each subsequent state is a unary function of the current state. For Euclid’s algorithm, a pair representation is necessary as each subsequent state is conditioned on both of the current values.

Discussion

Again, note that computers are not explicitly part of this discussion. During the introduction and development of basic CT, students are the computing agents that perform the process execution. Software tools can be used to assist in this, just as they are used in teaching basic language and math skills. But, to reemphasize, the focus here is on developing the computing skills of the students, as computers.c

Through practice and repeated encounters, students will become accustomed to thinking and communicating in the CTL. For students that follow up with more advanced CS courses, starting with programming, the challenge will no longer be in learning to think computationally, but in learning the nuances of new languages, how to formally describe computations in these languages, and in subsequent courses on how such descriptions are executed on a von Neumann machine. For students that do not pursue CS further, their background in computational thinking will be of substantial benefit in their professional careers and in everyday life.

On the issue of enrollment, we suspect that most students major in mathematics, English, and the humanities not for the abundance of career opportunities in these fields, but more for intellectual interests, born out of gradual and sustained exposure. We conjecture

c For a fascinating account of the history of human computing, see .

4

exposure to basic
computer science
will raise awareness
in students of what
Cs might be as a field
of inquiry, leading to
a broader participation
of a wider variety
of students in
our discipline.

that students with similar development in CT will also be more likely to choose CS based on intellectual motivations, and, furthermore, that they will be better prepared for programming and the major curriculum. 1 Exposure to basic computer science will raise awareness in students of what CS might be as a field of inquiry, leading to a broader participation of a wider variety of students in our discipline.

To truly integrate computational thinking into current K– 12 curricula undoubtedly presents significant challenges. It will necessarily be a gradual and evolutionary process, and requires coordination among many constituents of the wider education community. We consider definitive efforts toward achieving broader CT literacy as some of the most exciting, challenging, and necessary next steps in the maturation of the computer science discipline.

 

References

11. carter, l. Why students with an apparent aptitude for computer science don’t choose to major in computer science. in Proceedings of SIGCSE 2006 (houston, tX), 27–31.

2. cohen, a. and haberman, b. computer science: a language of technology. SIGCSE inroads 39, 4 (2007), 65–69.

3. denning, P.J. and Mcgettrick, a. recentering computer science. Commun. ACM 48, 11 (nov. 2005), 15–19.

4. grier, d.a. When Computers Were Human. Princeton University Press, Princeton, nJ, 2005.

5. guzdial, M. Paving the way for computational thinking. Commun. ACM 51, 8 (aug. 2008), 25–27.

6. Wing, J.M. computational thinking. Commun. ACM 49, 3 (Mar. 2006), 33–35.

 

George H.L. Fletcher ( fletcher@vancouver.wsu.edu) is an assistant professor of computer science in the school of engineering and computer science at Washington state University in vancouver.

Calendar
of Events

february 14–19
acM SigPLan Symposium
on Principles and Practice of
Parallel Programming,
Raleigh, nc,
Sponsored: SigPLan,
contact: Daniel a Reed,
email: Daniel.Re ed@
microsoft.com

february 20–21
i Wic ’09: international
Workshop on intercultural
collaboration 2009,
ca, USa,
contact: Pamela hinds,
email: phinds@
leland.stanford.edu

february 27–March 1
i3D ’09: Symposium on
interactive 3D graphics
and games,
boston, Ma,
contact: Manuel Menezes
oliviera neto,
Phone: 55-51-3332-0927,
email: oliveira@inf.ufgrs.br

March 2–6
2nd international conference
on Simulation tools
and techniques,
Rome, italy,
contact: oliver Dalle,
Phone: 33-492-387-937,
email: olivier.dalle@
sophia.inria.fr

March 3–7 the 40th acM technical Symposium on computer Science education, chattanooga, tn, Sponsored: SigcSe, contact: Sue e fitzgerald, email: sue.fitzgerald@ usermail.com

March 9–13
hRi ’09: international
conference on human
Robot interaction,
La Jolla, ca,
Sponsored: SigaRt,
contact: Matthias Scheutz,
email: mscheutz@indiana.edu

March 11–13
acM SigPLan/SigoPS
international conference
on virtual execution
environments,
Washington Dc,
Sponsored: SigoPS, SigPLan,
contact: antony L hosking,
email: hosking@cs.purdue.edu

feBRuaRY 2009 | vol. 52 | No. 2 | CommunICatIons of the aCm

25

References:

mailto:fletcher@vancouver.wsu.edu

mailto:oliveira@inf.ufgrs.br

mailto:mscheutz@indiana.edu

mailto:hosking@cs.purdue.edu

mailto:Daniel.Reed@microsoft.com

mailto:Daniel.Reed@microsoft.com

mailto:phinds@leland.stanford.edu

mailto:phinds@leland.stanford.edu

mailto:Olivier.dalle@sophia.inria.fr

mailto:Olivier.dalle@sophia.inria.fr

mailto:sue.fitzgerald@usermail.com

mailto:sue.fitzgerald@usermail.com

Archives