Pedagogical Pillars
Coding as a Playground
When engaging children in a technology-rich learning experience, we welcome and promote play. Through play we can impact all areas of human development: cognitive, socio-emotional, language, moral, physical and even spiritual. The coding playground, in contrast with the coding playpen, promotes opportunities for open-ended exploration, creation of personally meaningful projects, imagination, problem solving, conflict resolution and collaboration. The coding playground engages children in six behaviors that we can also find in the regular playground: content creation, creativity, choices of conduct, communication, collaboration and community building. These six behaviors are further explored in the Positive Technological Development (PTD) framework.
Coding as a Another Language
The Coding as Another Language pedagogical premise is that coding is a new literacy for the 21st century. As a literacy, coding is perceived as involving a set of skills and knowledge that today’s society highly values. This approach understands the activity of computer programming as manipulating a symbolic system of representation with its own grammar and syntax, to express ideas.This definition applies to learning how to creatively use both natural and artificial languages for expression and communication. Our pedagogical approach, supports the exploration of similarities and differences between natural and artificial languages during the creation of computational projects and applies strategies for teaching alphabetical literacy to the coding playground.
The goal of literacy, as addressed in CAL, is not only for children to master the syntax and grammar of language, but also the meanings and uses of words, sentences, and genres. CAL puts problem solving at the service of personal expression, just as best practices in literacy education place decoding and writing skills at the service of student meaning-making and self-expression. A literate person knows that reading and writing are tools for meaning making and, ultimately, tools of power. The same is true of coding. CAL proposes that programming, as a literacy, engages new ways of thinking, communicating, and expressing ideas.
The CAL pedagogical premise informed the creation of the Coding as Another Language (CAL) Curriculum which are curriculum units for Pre-K to 2nd Grade for both ScratchJr and KIBO robotics.
Coding as a Bridge
How can we teach human values and support character development through computer programming, making and robotics? Can coding serve as a bridge to get to know and collaborate with others who are different from us?
These questions are explored in Marina Bers’ Beyond Coding: How Children Learn Human Values through Programming book published in 2022 by The MIT Press. The book shares stories of children, families and teachers from different cultures, countries and religions, who speak different languages, and come together to make expressive projects by learning a new shared language: computer programming.
Currently, the growing push for STEM education focuses on technical knowledge and skills, but it usually ignores the need to cultivate character virtues alongside technical skills, so we can become better citizens and human beings.
The new generations will engineer smart objects, design smart cities and make bioengineering devices. At the same time, they will need to address the complex ethical questions regarding how those technologies will be used towards a greater good in our complex, pluralistic societies.
Coding as a Palette of Virtues
In her book Beyond Coding: How to Teach Human Values through Programming, Prof. Marina Bers uses the metaphor of a palette of virtues to describe a pedagogical roadmap for teaching coding that encompasses the cultivation of character along with technical knowledge and skills. This metaphor recalls the painter’s palette, and the agency associated with being intentional about the human values we develop and put in practice as we make creative coding projects. Our palette of virtues starts with ten values. However, new ones can be added.
Within this approach, creative programming can be a pathway for character development, for exploring the socio-emotional and ethical dimensions of learning. Ultimately, to understand that our actions, like the actions of anyone who creates, have consequences.