Philosophy

"Low floors, High Ceilings, Wide Walls"

- Mitch Resnick

Why Teach Coding?

“On a functional level, a basic understanding of code allows people to understand the design and functionalities that underlie the interfaces, technologies, and systems that we encounter daily. On a political level, understanding code empowers people and provides resources for examining and questioning the design decisions that populate our screens. Finally, on a personal level, everyone needs code for expressive purposes to communicate and interact with others and build relationships”

(Kafai and Burke, Connected Code, 2014, p. 135)


Playgrounds - not Playpens

Dr. Marina Bers describes the Playground vs Playpen mentality.

This clip is derived from her TED Talk here.

Coding as a Literacy

  • “Reading and writing are Technologies of textual literacy, while coding is a technology of computational literacy.” (Bers, 2018, p 24)


  • “Literacy, like coding, assumes the ability to produce an artifact detached from its creator. There is a producer with an intention, with a passion, with a desire to communicate something. Writing, like coding, is a medium for human expression.” (Bers, 2018 p. 28)


  • “The goal of coding is expression, not problem solving. Problem solving is a tool for expression. We have something to say, a project to show, an idea to explore, and we do it through making a personally meaningful project to share with others” (Bers, 2018, p 29)


Computational Thinking

Problem Solving

  • Iteration; Tinkering; Bricolage

Digital Literacy

  • Approach to solving problems that can be implemented with a computer

  • “Computer science is no more about computers than astronomy is about telescopes” Edsger Dijkstra

Disposition

  • Perspective; Habits-of-mind

Communal Participation

  • Expression, Communication