Microworlds, Objects First, Computational Thinking and Programming

Research output: Chapter in Book/Report/Conference proceedingChapter

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

Fingerprint

Students
Teaching
Product design
Data structures
Concretes

ASJC Scopus subject areas

  • Computer Science(all)

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
Michaelson, Gregory John. / Microworlds, Objects First, Computational Thinking and Programming. Computational Thinking in the STEM Disciplines: Foundations and Research Highlights. editor / Myint Khine. Springer, 2018. pp. 31-48
@inbook{7b52fc9e4429441f848e3d6e6b80290b,
title = "Microworlds, Objects First, Computational Thinking and Programming",
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.",
author = "Michaelson, {Gregory John}",
year = "2018",
month = "8",
doi = "10.1007/978-3-319-93566-9_3",
language = "English",
isbn = "978-3-319-93565-2",
pages = "31--48",
editor = "Myint Khine",
booktitle = "Computational Thinking in the STEM Disciplines",
publisher = "Springer",

}

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

Microworlds, Objects First, Computational Thinking and Programming. / Michaelson, Gregory John.

Computational Thinking in the STEM Disciplines: Foundations and Research Highlights. ed. / Myint Khine. Springer, 2018. p. 31-48.

Research output: Chapter in Book/Report/Conference proceedingChapter

TY - CHAP

T1 - Microworlds, Objects First, Computational Thinking and Programming

AU - Michaelson, Gregory John

PY - 2018/8

Y1 - 2018/8

N2 - 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.

AB - 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.

U2 - 10.1007/978-3-319-93566-9_3

DO - 10.1007/978-3-319-93566-9_3

M3 - Chapter

SN - 978-3-319-93565-2

SP - 31

EP - 48

BT - Computational Thinking in the STEM Disciplines

A2 - Khine, Myint

PB - Springer

ER -

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