The Coding As Another Language for ScratchJr (CAL – ScratchJr) curriculum introduces powerful ideas from computer science, in conversation with literacy in a playful, structured, and developmentally appropriate way. The Coding as Another Language (CAL) approach, developed by Prof. Marina Umaschi Bers and members of her DevTech Research Group at Tufts University, understands the learning of computer science as a new literacy for the 21st century that supports young learners in developing new ways of thinking about themselves and the world.
The CAL curriculum for Kindergarten has 24 lessons, designed for a total of 18 hours, but can be adapted to any learning setting. Students will learn computer science , develop problem solving and computational thinking in the context of creating their own projects. In addition, to strengthen the literacy connection, the curriculum is integrated with two books, “A Computer Called Katherine” and “Knuffle Bunny.”
View a video of Professor Marina Umaschi Bers describing the CAL ScratchJr curriculum and its pedagogical approach.
Have more questions? See our FAQ sheet.
To view the curriculum in Spanish, visit this page. A special thank you to the Varkey Foundation and Comunidad Atenea for translating the curriculum to Spanish.
The CAL curriculum is implemented following the pedagogical approach developed by Prof. Marina Bers that can be found in her books Coding as a Playground: Programming and Computational Thinking in the Early Childhood Classroom, Second Edition and Beyond Coding: Teaching Human Values to Children. This pedagogy has four main frameworks:
Coding as a Playground: When engaging children in a computer science learning experience, we welcome 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 6C’s are further explained in the PTD theoretical framework in Marina Ber’s book, and are highlighted in the activities throughout the curriculum with their respective icons:
|Content Creation by designing a ScratchJr program and programming its behaviors. The engineering design process of building and the computational thinking involved in programming foster competence in computer literacy and technological fluency.|
|Creativity by making and programming personally meaningful projects, problem solving in creative playful ways and integrating different media such as recyclable materials, arts and crafts, and a tangible programming language. Final ScratchJr projects that represent a theme found in the overall early childhood curriculum are a wonderful way to engage children in the creative process of learning.|
|Collaboration by engaging children in a learning environment that promotes working in teams, sharing resources and caring about each other while working with their ScratchJr programs. Collaboration is defined here as getting or giving help with a project, programming together, lending or borrowing materials, or working together on a common task. While working on their final projects, children create a collaboration web: a tool used to foster collaboration and support. Children can write or draw “thank you cards” to the other children with whom they have collaborated the most.|
|Communication through mechanisms that promote a sense of connection between peers or with adults. For example, technology circles, when children stop their work, share their ScratchJr creation, and explain their learning process. Technology circles present a good opportunity for problem solving as a community. Some teachers invite all the children to sit together in the rug area for this. Each classroom will have its own routines and expectations around group discussions and circle times, so teachers are encouraged to adapt what already works in their class for the technology circles in this curriculum.|
|Community Building through scaffolded opportunities to form a learning community that promotes contribution of ideas. Final projects done by children are shared with the community via an open house, demo day, or exhibition. These open houses provide authentic opportunities for children to share and celebrate the process and tangible products of their learning with family and friends. Each child is given the opportunity not only to run their program, but to play the role of teacher as they explain to their family how they built, programmed, and worked through problems.|
|Choices of Conduct which provide children with the opportunity to experiment with “what if” questions and potential consequences, and to provoke examination of values and exploration of character traits while working with ScratchJr. As a program developed following the PTD approach, the focus on learning about coding is as important as helping children develop an inner compass to guide their actions in a just and responsible way.|
Coding as Another Language: Characterizing coding as a STEM activity is limiting. Instead, if we position the teaching and learning of programming as a new way of thinking and expressing ourselves, we are in the domain of language. Mastering a symbolic system of representation with communicative and expressive functions, opens up many opportunities. Learning to code becomes a creative, expressive activity, to produce something meaningful and shareable, and not only a problem-solving skill set. The CAL pedagogy promotes the exploration of the similarities and differences between natural and artificial languages for the creation process, their syntax and grammar, and their potential to empower individuals. When coding is taught as a language, and not only as STEM, the human dimension comes into play.
Coding as a Bridge: Programming is a semiotic act, a meaning making activity that uses and combines symbols to represent abstract ideas. When we learn to code, we learn a new language. Languages can create or destroy, and can serve to build bridges or walls. In the coding playground, the intention is to build bridges. CAL proposes that by learning the artificial language of machines, we can also learn the human language that serves us to interact with others, to connect in deep ways and to create meaningful relationships. The metaphor of coding as a bridge promotes dialogue and meaningful encounters with others and situates coding as social-emotional learning, and not only a cognitive activity.
Coding as a Palette of Virtues: Any human activity involves human values. Making choices to engage in some behaviors and not others. Understanding and taking on responsibilities and consequences. The coding playground, through the CAL pedagogy, provides an intentional opportunity to teach and learn values. The metaphor of a palette of virtues recalls the painter’s palette. Like the artist who makes her palette with new colors and mixes and matches them, the coder also has a dynamic virtues palette that she puts to use. In the coding playground, ten of these values are explicitly explored: Curiosity, Perseverance, Open-Mindedness, Optimism, Honesty, Patience, Generosity, Gratitude, Forgiveness, Fairness. However, new ones can be added. Creative programming can be a pathway for character development, for exploring the social-emotional dimension and ethical dimension of learning. Ultimately, to understand that our actions, like the actions of anyone who creates, have consequences.
|A strong desire to know or learn something; novelty seeking.||Star and a Wish|
|Persistence in a course of action in spite of difficulty or adversity; determination in pursuing goals; firmness of purpose; grit; belief that we can improve.||Debugging Board|
|The capacity to accept or tolerate delay, trouble, or suffering without getting angry or upset||Debugging Board|
|Hopefulness and confidence about the future or a successful outcome; expecting the best.||Star and a Wish|
|The quality of being honorable; rectitude; uprightness; integrity||Debugging Board|
|Impartial and just treatment without favoritism or discrimination; justice||Relaying the Rules|
|The quality of being kind; giving and receiving, helping self and others||Making a Web|
|The quality of being thankful; readiness to show appreciation; being aware of good things||Star and a Wish|
|The action of pardoning and accepting, giving a second chance to self and others||I am a CODER|
|the quality of being willing to consider ideas, opinions and feelings that are new or different from your own; flexibility in taking different perspectives.||Debugging Board|
The curriculum is organized around powerful ideas from both computer science and literacy. The term powerful idea refers to a central concept or skill within a discipline that is simultaneously personally useful, inherently interconnected with other disciplines, and has roots in intuitive knowledge that a child has internalized over a long period of time.
The powerful ideas from computer science addressed in this curriculum include: algorithms, design process, representation, debugging, control structures, modularity, and hardware/software The powerful ideas from literacy that will be placed in conversation with these powerful ideas from computer science are: sequencing, the writing process, alphabet and letter-sound correspondence, editing and audience awareness, literary devices, phonological awareness, and tools of communication and language. (see Table 1).
Table 1: Powerful Ideas
|Powerful Ideas from Computer Science||Powerful Ideas from Literacy||Connecting the Powerful Ideas|
|Emphasis on “order matters,” and that complex tasks can be broken down into step-by-step instructions in a logical way.|
|Creative, iterative, cyclic processes that involve imagining, planning, making, revising, and sharing, with different starting points.|
Alphabet and Letter-Sound Correspondence
|Symbols have different attributes (color, shape, sound, etc.) in order to represent something else.|
Editing and Audience Awareness
|Systematic analysis, testing, and evaluation to improve communication to the intended audience (computer or person). Whenever miscommunication occurs, the programmer or writer uses a variety of strategies to solve the problem.|
|Advanced strategies to communicate a set of ideas using repetition, patterns, conditionals and events.|
|Decomposition, or breaking down a complex task into smaller tasks and re-using those new modules.|
Tools of Communication and Language
|Communicating abstract ideas through tangible means. Just like hardware and software work together, the expression of thoughts through language requires a medium for communicating to the outside world, such as spoken or written word.|
The most important skills from ScratchJr used in each lesson are as listed below (see Table 2). Note that this is not a complete list because each activity is meant to be creative and typically open-ended. This table is meant to indicate which skills it would be difficult to complete a lesson without. children are always encouraged to use any blocks or skills they learn in class or on their own on any project.
Table 2: ScratchJr Skills
* This lesson contains the introduction or tutorial for the associated ScratchJr concept.
|ScratchJr Skills||Relevant Lessons|
|Start on Green Flag Block||5*, 7, 8|
|Start on Tap Block||15*|
|Move Right Block||5*, 7, 8|
|Move Left Block||5*, 7, 8|
|Move Up Block||5*, 7, 8|
|Move Down Block||5*, 7, 8|
|Turn Right Block||5*, 7, 8|
|Turn Left Block||5*, 7, 8|
|Hop Block||5*, 7, 8|
|Go to Start Block||16*|
|Reset Size Block||13*|
|Play Recorded Sound Block||17*|
|Set Speed Block||16*, 18|
|End Block||5*, 7, 8|
|Repeat Forever Block||11*|
|Go to Page Block||12*, 21, 22|
|Saving Project Name||4*|
|Grid tool||12*, 16|
|Add Text tool||6*|
|Paint Editor tool||7*, 10, 20|
|Starting a new project||4*|
|Add Characters||6*, 7, 10, 20, 21, 22|
|Add Backgrounds||11*, 21, 22|
|Add Page||12*, 21, 22|
|Creating a program||5*|
|Deleting a character||6*|
|Deleting a page||12*|
|Adjusting Parameters||8*, 12, 13|
The CAL approach allows students to make connections between coding and literacy, as well as between coding and math. This curriculum encourages students to express their thoughts, ideas, and learning through ScratchJr activities. The curriculum is designed for a total of 18 hours, but can be adapted to particular learning settings. Each lesson contains a variety of activities, including:
- Warm-up activities to playfully introduce or reinforce concepts
- Opening/Closing Technology Circles to discuss, share, and reflect on activities and concepts
- Structured Challenges with ScratchJr to introduce the powerful ideas from computer science
- Expressive Explorations with ScratchJr to practice the skill in a creative, open-ended way
- Unplugged Time Games/activities to promote social interactions and movement
- Word Time to introduce the powerful ideas from literacy
The culmination of the unit is an open-ended project to share with family and friends. Just as young children can read age-appropriate books, computer programming can be made accessible by providing young children with appropriate tools such as ScratchJr. This curriculum provides integration between computer science and programming in the context of literacy. Students will learn to explore two books A Computer Called Katherine: How Katherine Johnson Helped Put America on the Moon and Knuffle Bunny to write creative, fun programs on ScratchJr.
This is an 18-hour curriculum unit divided into approximately 45 minutes lessons. Some students may benefit from further division of the activities into smaller steps or from more time to explore each new concept before moving onto the next, either in the context of free-exploration or with teacher-designed challenges. Each of the powerful ideas from computer science in this curriculum can easily be expanded into a unit of study which will extend the curriculum and allow students to explore a range of different activities.
Since this curriculum is based on ScratchJr the main material necessary for the children is iPads, Androids or Chromebooks (check here https://www.ScratchJr.org/about/faq for devices compatible with ScratchJr) so children are able to code. In addition, there are ScratchJr block pages that can be printed to help with child comprehension. More information is provided in lessons that use these pages. This curriculum also uses the books, A Computer Called Katherine: How Katherine Johnson Helped Put America on the Moon by Suzanne Slade (ISBN-13: 9780316435178) and Knuffle Bunny by Mo Willems (ISBN-13: 9780439801980).
Other materials used in the curriculum are inexpensive crafts and recycled materials. The use of crafts and recycled materials, a practice already common in other domains of early childhood education, provides opportunities for children to use materials they are already comfortable with.
During the CAL curriculum, children will be singing, moving, talking to each other, showing each other work, and asking questions. The CAL pedagogy offers guidance for developing positive classroom behaviors through these and other coding and technology-related activities. The Positive Technological Development framework includes Choices of Conduct, which encourages children to make positive choices for themselves and their community members. Additionally through teaching Coding as a Palette of Virtues, teachers are encouraged to embed the language of the virtues and foster discussion regarding virtues within classroom activities. We suggest using this language when guiding children to make positive choices during coding activities. More information on Positive Technological Development and Coding as a Palette of Virtues, including activities to promote these, are included in the description of our Pedagogy above.
The curriculum refers to whole-group versus small group or individual work. Whether small groups or centers are feasible depends on the number of teachers available to supervise the groups and the capabilities of the technology, which may be limited for a number of reasons. However, an effort should be made to allow children to work in as small groups as possible, so that they have a chance to actively participate. If small groups are not possible, individual work sessions should be encouraged throughout the class time. Teachers can be present for the whole class while everyone works on their own device, and will be available for questions as needed. At the same time, the curriculum includes numerous opportunities to promote conversations which are enriched by multiple voices, viewpoints, and experiences. Some classes may have these discussions as a whole group. Other classes may be able to break up into smaller groups to allow more children the opportunity to speak and to maintain focus. Whether in small groups or whole class discussions, communication must be emphasized throughout. When learning to code, children are learning to express their ideas. Being able to verbalize those ideas and connect with other children is an integral piece of the curriculum.
The CAL ScratchJr curriculum fosters young children’s general technical skills, computational thinking, and engineering abilities. It also supports foundational math, reading, and language arts skills that are commonly taught in early childhood classrooms. The curriculum is specifically aligned with the K-12 Computer Science Frameworks, ISTE Standards for Students, as well as Common Core Math & English Language Arts (ELA) Frameworks. The table below provides examples of how lessons in the Kindergarten CAL ScratchJr curriculum are aligned with particular K standards and frameworks.
Table 3: Alignment of Academic Framework
The full document can be downloaded here.
|nterISTE Student Standards||K-12 Computer Science Frameworks||Common Core K ELA Standards||Common Core K Math Standards|
|ISTE Student Standards #1
Empowered Learner- 1a, 1c
ISTE Student Standards #4
Innovative Designer- 4a, 4b, 4c, 4d
ISTE Student Standards #5
Computational Thinker -
5a, 5c, 5d
ISTE Student Standards #6
6b, 6c, 6d
K–2.Computing Systems.Hardware and Software
K–2.Algorithms and Programming.Control
K–2.Algorithms and Programming.
K–2.Algorithms and Programming.
The CAL curriculum understands assessment as a critical component of the teaching and learning process. It is a chance to stop the work and evaluate how things are going. Assessment provides opportunities for revisiting ideas, content and skills, to adjust and modify instructional practices, and to gather the needed information to communicate with parents. It can serve to eliminate achievement gaps and to modify pedagogical strategies. CAL assessments are rooted in the observation of children’s behaviors, the listening of children’s stories and reasoning, and the analysis of the work they produce. CAL includes both formative assessments that are integrated throughout the lessons (these are called Check for Understanding and can be found in lessons 6, 8, 12, 16, 19) and summative assessments (called Show What You Know) that are conducted at the end of the curriculum. In addition, children’s projects are evaluated following the ScratchJr project rubric to identify coding skills as well as the expressiveness and purposefulness of the created projects. (Rubric for teachers, which includes instructions, etc).
When CAL is used in the context of research projects there are three other forms of assessments commonly used.
First, the Coding Stages Assessment (CSA) which happens before starting the curriculum, and after its completion. The CSA assesses progress in learning the ScratchJr programming languages (Bers, 2019). This assessment is conducted one-on-one by asking the student interactive and open-ended programming questions. The assessment probes the five Coding Stages (Emergent, Coding and Decoding, Fluency, New Knowledge, and Purposefulness) that children go through when engaging in the CAL curriculum. CSA is administered as a game before and after the CAL curriculum and takes under 45 minutes to complete.
Second, TechCheck (Relkin, de Ruiter, Bers, 2020) is an “unplugged” assessment of Computational Thinking (CT) that presents children with challenges analogous to those that arise in the course of computer programming but does not require coding experience to complete. The assessment probes six domains of CT described by Bers (2018) as developmentally appropriate for young children (Algorithms, Modularity, Hardware/Software, Debugging, Representation, and Control Structures). The format is multiple choice and the assessment can be administered individually or to groups in 20 minutes or less. TechCheck is administered before and after the CAL curriculum.
Third, The PTD checklist evaluates six positive behaviors (“six C’s”) supported by programs such as CAL that implement educational technologies. These are communication, collaboration, community building, content creation, creativity, and choice of conduct (Bers, 2012; Bers, 2020). The PTD checklist is divided into six sections, each one representing a behavior described in the PTD framework. It is scored on a 5-point Likert scale based on approximately 20-30 minutes of observation. The PTD checklist is used at various points throughout the CAL curriculum to rate the extent to which learning environments/facilitators and child behaviors are contributing to positive technological development.
In addition, math and literacy assessments as well as other standard assessments might be collected.