Microworlds, Objects First, Computational Thinking and Programming

Research output: Chapter in Book/Report/Conference proceedingChapter

1 Citation (Scopus)

Abstract

Teaching of programming has long been dominated by language oriented approaches, complemented by industrial design techniques, with little attendant pedagogy. An influential alternative has been Papert's constructivism, through playful exploration of constrained microworlds. The archetypal microworld is based on turtle graphics, as exemplified in Papert's Logo language. Here, students compose and repeat sequences of operations to steer and move a turtle that leaves a trail behind it. Contemporary graphical environments, like Alice and Scratch, augment the turtle world with colourful interacting animated avatars.
However, the microworld approach scales poorly to systematic programming driven by problem solving. Many students find the transition from novice coding to problem solving oriented programming problematic (Moors and Sheenan, 2017). Furthermore, microworld languages tend to be relatively impoverished, lacking types and data structures.
Objects First is a contemporary approach to teaching programming through object orientation, which seeks to bridge microworlds and systematic programming. Here, students explore, modify and extend pre-formed objects analogous to microworlds, in constrained subsets of full strength languages, typically Java. However, there is growing evidence that, as with the original microworlds, some students find the transition to problem solving based programming difficult.
Computational thinking (CT), as popularised by Wing, offers an approach to problem solving in which programming is the final stage. CT has been widely heralded as a new pedagogy of programming. However, interpretations of CT vary widely from a loose assemblage of techniques to a systematic discipline.
In this chapter, I will argue that both microworlds and Objects First build superficial programming skills at the expense of deeper competences in problem solving. I will further argue that systematic CT, driven by seeking patterns in concrete instances, offers a way to refocus on problem solving for programming.
Original languageEnglish
Title of host publicationComputational Thinking in the STEM Disciplines
Subtitle of host publicationFoundations and Research Highlights
EditorsMyint Khine
PublisherSpringer
Chapter3
Pages31-48
Number of pages18
ISBN (Electronic)978-3-319-93566-9
ISBN (Print)978-3-319-93565-2
DOIs
Publication statusPublished - Aug 2018

ASJC Scopus subject areas

  • Computer Science(all)

Fingerprint Dive into the research topics of 'Microworlds, Objects First, Computational Thinking and Programming'. Together they form a unique fingerprint.

  • Cite this

    Michaelson, G. J. (2018). Microworlds, Objects First, Computational Thinking and Programming. In M. Khine (Ed.), Computational Thinking in the STEM Disciplines: Foundations and Research Highlights (pp. 31-48). Springer. https://doi.org/10.1007/978-3-319-93566-9_3