Talking with Joan Peckham about computational thinking

When Phil Windley pointed me to Jeannette Wing’s manifesto on computational thinking, she had me at hello. The intellectual tools of computer science, she argues — including the ability to work at multiple levels of abstraction, to automate repetitive processes, and to make and use state machines — are really “a universally applicable attitude and skill set that everyone, not just computer scientists, would be eager to learn and use.”

In 2007 I interviewed Jeannette Wing for my Innovators show. Since then she has moved from Carnegie Mellon to the National Science Foundation, where she is — among other activities — working to define, promote, and bootstrap the teaching of computational thinking.

On this week’s show I spoke with Joan Peckman, a University of Rhode Island professor of computer science who’s on leave to work with the NSF on that mission.

Toward the end of the podcast, she relates this delightful anecdote:

At the first CSTB workshop on computational thinking for everyone, someone from the University of Indiana showed a video on how he was teaching science. We all looked at it and thought: “But it’s also computational thinking!”

In the course of teaching elementary school students about honey bees, he took them out on the playground and asked them to act out what the honey bees did: leaving the hive, finding the pollen, giving directions to the other bees. Then he brought them back into the classroom, went to a whiteboard, and engaged them in activites that I would identify as modeling, debugging, and drawing finite state diagrams. He didn’t call them that, but that’s what they were.

Yes he was teaching them science, but the way he was analyzing the subject, and engaging them in analysis, clearly involved a set of computational constructs.

In my own recent writing and speaking, I’ve suggested that feed syndication and lightweight service composition are aspects of computational thinking that we ought to formulate as basic principles and teach in middle school or even grade school.

We tried, but failed, to come up with a phrase that embellishes computational thinking with connotations of flow, orchestration, and connectedness. Syndication-oriented architecture. gets partway there, but will never fly in the mainstream. Maybe connected thinking? But you don’t want to leave out what computational connotes. Perhaps computational and connected thinking? Nah, too wordy. I’d love to hear suggestions for a tagline that concisely captures both aspects.

For more background on computational thinking, here are Joan Peckham’s show notes:

The CSTB (Computer Science and Telecommunications Board) of the National Academy of Sciences is holding Computational Thinking for Everyone: A Workshop Series in 2009. Monitor their website for developments and reports: http://sites.nationalacademies.org/cstb/CurrentProjects/CSTB_043590

Previously awarded CPATH projects (only some of which address computational thinking directly … although the current solicitation requires it):

2007 award portfolio – http://www.nsf.gov/cise/funding/CPATH2007awardsfinal.pdf

2008 award portfolio – http://www.nsf.gov/cise/funding/CPATH2008awardsfinal.pdf

Computer Science Unplugged (http://csunplugged.org/) site has a wealth of classroom ready activities.

Rebooting Computing Summit in January 2009 (http://www.rebootingcomputing.org/). Several working groups emerged from this meeting. Some of the groups were concerned with computing education, and in defining and better communicating computing to others.

The Computer Science Teachers Association (CSTA) has a web repository with K-12 computer science teaching and learning materials: http://csta.acm.org/WebRepository/WebRepository.html

The Carnegie Mellon University Center for Computational Thinking site has materials and resources: http://www.cs.cmu.edu/~CompThink/. [ed: Sponsored, I’m pleased to say, by Microsoft Research.]

26 thoughts on “Talking with Joan Peckham about computational thinking

  1. Jeff Young

    The idea of “Syndication-oriented architecture” sounds very close to our work on Linked Data Architecture: http://q6.oclc.org/2009/04/the_union_of_do.html. The latter combines AtomPub, domain modeling, and even throws in Linked Data for free.

    The basics of domain modeling should be within the grasp of middle-schoolers and simplified forms could reach down to kindergartner levels.

    Jeff

    Reply
  2. Andy

    The recording on IT Conversations is playing your interview with Jeannette Wing rather than Joan Peckham

    Reply
  3. Peter Herndon

    Computational and systemic thinking. I think in systems, in collections of components, how they relate, and how they interact. That interaction is, amongst other things, data flow.

    Reply
  4. Jon Udell Post author

    > The basics of domain modeling should be
    > within the grasp of middle-schoolers

    How would you motivate the teaching of the subject at that level?

    Reply
    1. Jeff Young

      Every game has a domain model and agreeing on a domain model is inherently social. It’s just a question of finding games that are age-appropriate.

      I haven’t thought much about it at a middle-school level, but a teacher friend and I have started to discuss ways to present domain modeling in his vocational high school programming classes. Developing this into a “certification program” seems feasible and would help justify it to educators.

      At the middle-school level, domain modeling might be appropriate in the context of a mathematics course. I remember being introduced to Sudoku in a summer grade school math class. I didn’t get it at the time, but the impact lingers.

      Reply
  5. Jon Udell Post author

    > That interaction is, amongst other things,
    > data flow.

    Computational and systemic thinking does surely involve data flow. But it predates networks — well, electronic networks anyway.

    If systemic thinking implies human->human, human->computer, and computer->human communication, in ways that create and exploit network effects, then I agree.

    Reply
  6. Pingback: links for 2009-05-04 « The Wayward Word Press

  7. Pingback: links for 2009-05-04 « GO TO XO

  8. Susan Gerhart

    Very informative interview! I vote for retaining “computational thinking” and get on with the mission. How about a series of podcasts introducing the topics in terms the public can understand?

    Here’s a similar effort a decade ago, Information Fluency, led by Larry Snyder at U. Washington http://courses.washington.edu/benefit/FIT100/

    FITness is more technology oriented whereas computational thinking is more abstract. Here’s a challenge for both approaches: explain SQL in both theory and practice.

    Reply
  9. Laura Dussault

    The honey bee example is definitely how our schools should be teaching. The teacher may have indirectly introduced computational thinking but some students will have the ‘ah ha’ moment further on in their learning. Computational thinking is a model for problem solving and would benefit children today.

    Reply
  10. Pingback: Science in the open » Sci - Bar - Foo etc. Part II - SciFoo - Engaging with the world

  11. Pingback: Pedro M. Rosario Barbosa (prosario2000) 's status on Saturday, 01-Aug-09 15:37:24 UTC - Identi.ca

  12. Reid Albecker

    What we are talking about here is simply modeling. Process modeling. System modeling. System analysis. Design analysis. Engineering. I would never refer to it as computational thinking–what is the point? It would be one thing to say we can look at things in terms of a software development model, but to coin a phrase “computational thinking” is noisy and clutters up the language without adding anything. Time to take out Occam’s razor and kill it right here.

    Better to think in terms of systems modeling, which can be applied universally, rather than trying to force-fit systems modeling into how an academic may view software design processes. This is not to say that we can’t grab useful terms and concepts from software analysis and design, but let’s also grab from natural processes, engineering, and elsewhere.

    Ideally the goal is to facilitate the mindset of a developer in students. But a developer can be a software developer, a business developer, a product developer, a service developer, a land developer, etc. A developer does systems analysis and design with respect to their current project, whatever that may be.

    Reply
  13. Pingback: Interessantes woanders (2009.08.02) › Immersion I/O

  14. Jon Udell Post author

    > This is not to say that we can’t grab
    > useful terms and concepts from software
    > analysis and design, but let’s also grab
    > from natural processes, engineering, and
    > elsewhere.

    I agree. But don’t know what name will capture all of that, plus the key new ingredient of massive interconnectivity and all that flows from that.

    And if part of the goal is to rally an educational movement, there does need to be a good name.

    Reply
  15. Pingback: links for 2009-08-02 « Boskabout

  16. Pingback: Science in the Open » Blog Archive » Sci – Bar – Foo etc. Part II – SciFoo – Engaging with the world

  17. Pingback: A geek anti-manifesto « Jon Udell

  18. Pingback: The New Literacy « Synthesis

  19. Pingback: Seven ways to think like the web « Jon Udell

  20. Pingback: Seven ways to think like the web at techandsoc.com

  21. Pingback: Think like the web or even like Jon Udell | Life's simple, why change it?

  22. Pingback: Writing on the Web / Writing For the Web - CogDogBlog

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s