Grounding how we teach programming in why we teach programming

Proctor, C., & Blikstein, P. (2016). Grounding how we teach programming in why we teach programming. Constructionism in Action (pp. 127–134). Suksapattana Foundation.

This article extends a 2005 taxonomy of languages and environments for teaching computer programming to the current field of pedagogical programming languages and environments. The original taxonomy organized tools according to the barriers to learning programming they addressed, and the strategies used to surmount or avoid the barriers. Updating the taxonomy was not entirely successful; some strategies have emerged as widely-used best practices. As computers and programming have become more prevalent in everyday life, it has become harder to distinguish programming from non-programming, and harder to distinguish tools for learning from ordinary computational tools. Programming, formerly a specialized activity, has developed into a computational literacy comprising many different forms of cultural interaction. We propose a new taxonomy based on {DiSessa}'s analysis of the structure of literacy. The new taxonomy allows learners, teachers, and designers to ground decisions about how to learn or teach programming in literacy aims expressing why they want to learn to program.

Cite this paper

@inproceedings{proctor_2016_grounding,
    author = "Proctor, Chris and Blikstein, Paulo",
    location = "Bangkok, Thailand",
    title = "Grounding how we teach programming in why we teach programming",
    abstract = "This article extends a 2005 taxonomy of languages and environments for teaching computer programming to the current field of pedagogical programming languages and environments. The original taxonomy organized tools according to the barriers to learning programming they addressed, and the strategies used to surmount or avoid the barriers. Updating the taxonomy was not entirely successful; some strategies have emerged as widely-used best practices. As computers and programming have become more prevalent in everyday life, it has become harder to distinguish programming from non-programming, and harder to distinguish tools for learning from ordinary computational tools. Programming, formerly a specialized activity, has developed into a computational literacy comprising many different forms of cultural interaction. We propose a new taxonomy based on {DiSessa}'s analysis of the structure of literacy. The new taxonomy allows learners, teachers, and designers to ground decisions about how to learn or teach programming in literacy aims expressing why they want to learn to program.",
    eventtitle = "Constructionism 2016",
    pages = "127--134",
    booktitle = "Constructionism in Action",
    publisher = "Suksapattana Foundation",
    year = "2016",
    url = "https://chrisproctor.net/publications/proctor\_2016\_grounding",
    pdf = "https://chrisproctor.net/media/publications/proctor\_2016\_grounding.pdf"
}

And if it's useful to you, I'd love to hear your thoughts!