Stacy Bressette

Return to: ETAP 623 Fall 2020 (Zhang) |Teaching Kids to Code (When You're Not Quite Sure How to Code Yourself)

Stacy Bressette

About me

I am currently a student in the Curriculum Development and Instructional Design program at the University at Albany. I am also a Program Manager for AlbanyCanCode where I design, implement, and manage K-12 and workforce educational programs in web and software development for children and adults.

I earned a B.A. in English Literature from Humboldt State University in 2004, and subsequently meandered into the tech sector, where I was ultimately able to earn a salary writing and teaching as the head of the Education team for a healthcare IT start up company in Vermont. After moving to the Albany area, I discovered AlbanyCanCode, and have since been fortunate enough to work in a position where my job description matches my life's purpose. Whether I'm supporting students working through difficult life circumstances, or dressing up as a duck to motivate students to make it to graduation, my passion lies in creating moments where students accomplish things they never thought possible, and leave their classes emboldened to dream bigger than they did before.

My teaching experiences include subjects like academic writing, general biology, physical anthropology, software, and computer science, and if there's one thing I've learned, it's that making our students successful depends more on our support for their learning and development than it does on our accumulation of background knowledge or expertise.

In my course, I'm going to share tips, tricks, and projects I've learned teaching K-12 students how to code (along with dozens of teachers, administrators, librarians, media specialists, and teacher's aides).

My Topic and Purpose

My course will guide teachers through introducing coding and computational thinking lessons to students in their classrooms, even (and especially) when they have very little experience themselves. Together, we will explore important questions like

  • Why are coding skills important for my students?
  • What coding concepts can I teach to my students, and how?
  • How can I learn enough about coding to support my students?
  • How can I incorporate coding lessons into my existing lesson plans?

Learning Outcomes

After completing this mini course, learners will be able to:

  • Explain the four components of computational thinking and give both digital and unplugged examples.
  • Implement unplugged activities and strategies for developing their students' computational thinking skills in the classroom.
  • Explain basic programming concepts, including variables, loops, functions, conditional statements, comparison operators, data types, and algorithms
  • Build their first projects in MIT's Scratch platform.
  • Support students developing self-efficacy and independence as they learn to test and trouble-shoot their projects.

Needs Assessment

The Problem

As our society continues its transition to a knowledge economy where expertise is prioritized as a tradeable asset, our schools are falling behind in preparing students to compete in the jobs of the future. In the technology sector especially, there is a persistent deficit of qualified applicants to fill job openings while many people in our communities struggle to find employment opportunities with the skills they received in our public schools. As the authors at Teaching Certification note, “[the] U.S. Bureau of Labor Statistics predicts jobs for software developers will grow 30% by 2020. The demand will be high for workers who are both interested in computing and have the expertise to work with it” (p. 1). The New York State Education Department adds in their draft of the proposed Computer Science and Digital Fluency Learning Standards that “for all other occupations, the number of jobs that require medium-to high-level technology skills are growing, and the number of jobs requiring no technology skills are shrinking” (2020, p. 3).

While the State of New York is taking important steps, including developing a new teaching certificate in computer science (NYSUT, p. 1) and curriculum standards now in progress (New York State Education Department, p. 3), there remains a lack of training opportunities in computer science for pre-service and in-service teachers to support the teaching of the skills stipulated in the standards.

What is to be Learned

The proposed curriculum standards address five main areas of competency:

1) Impacts of Computing 2) Computational Thinking 3) Networks and System Design 4) Cybersecurity 5) Digital Literacy

While this mini-course will not address all of these areas, the included lessons provide different ideas for introducing computational thinking to elementary and middle school children, as well as opportunities for discussing the foundational ideas of digital literacy and citizenship, digital accessibility, and the ways that digital technology impacts our culture and society.

The Learners

This mini-course is designed for K-12 educators with little or no experience in learning or teaching computer science. Further, this course is designed to facilitate the incorporation of technology into existing lessons and curricula to enable teachers to provide their students with learning opportunities in digital literacy and computer programming without having to displace other learning goals, since teachers are under heavy requirements to meet curriculum standards for a wide spectrum of educational subject areas.

Task Analysis

Module One - Why teach coding?

  • Learners will read the proposed Digital Fluency Curriculum Standards for the State of New York.
  • Learners will review their experiences and questions relating to coding, and share their questions and thoughts with others on the forum.

Module Two - What is computational thinking, and how does it help my students?

  • Learners will familiarize themselves with the four basic components of computational thinking:
  1. Problem Decomposition
  2. Pattern Recognition and Matching
  3. Abstraction
  4. Algorithms
  • Learners with play Journey to the Master Coding Academy to learn more about computational thinking.
  • Learners will try the Scratch Activity Quiz to practice matching unplugged computational thinking activities with the appropriate component being utilized.

Module Three - How do I learn to code, and teach my students how to code?

  • Learners will build a teacher's account in Scratch.
  • Learners will use the video tutorial provided, or another linked tutorial, to create their first Scratch project.
  • Learners will reflect on the process.
  • Learners will discuss their experience building their first project with other learners on the forum.
  • Learners will share questions and ideas with other educators in the forum for how they might introduce Scratch to their students.

Module Four - How does coding fit into our curriculum?

  • Learners will post four ideas to the forum for how to incorporate Scratch into lessons teaching:
  1. English/Language Arts
  2. Math
  3. Science
  4. Enrichment
  • Learners will share feedback with other learners on the forum when possible.

Module Five - What's next?

  • Learners will reflect on the forum about how their approach to coding lessons can help their students build tenacity during coding.
  • In their post, learners will also identify three things they can do to cultivate student leadership and collaboration during coding lessons.

Curriculum Map

Screen Shot 2020-04-30 at 10.00.35 PM.png

Module One: Why Teach Coding?

  • Coding teaches fundamental problem-solving, critical thinking skills, and tenacity that will help students regardless of what they do after their K-12 education is finished.
  • Learning to code provides students with the skills they need to compete in the modern workforce.
  • New curriculum standards have been provisionally accepted by the NY Board of Regents for initial implementation in Fall of 2023.

Module Two: Computational Thinking and How to Teach It

  • The four components of Computational Thinking:
   1) Decomposition
   2) Pattern Recognition
   3) Abstraction
   4) Algorithms
  • Unplugged activities
  • Digital activities

Module Three: Coding to Learn and Learning to Code

  • What is it actually like to code?
  • What is it like to learn to code?
  • Some fundamental coding concepts
  • Your First Scratch Project
  • Troubleshooting (on your own and with students)
  • Peer collaboration
  • Building student self-efficacy

Module Four: Integrating Coding Lessons into the Curriculum

  • Coding as a Tool Set (Not a subject!)
  • Coding as Creativity
  • Coding as Authorship
  • Coding as Play
  • Putting Math and Science into Action
  • A Classroom Full of Teachers (Part I)

Module Five: Reflections and Next Steps

  • The Best Answer You Can Give
  • "Failing" to Create Safe Space
  • A Classroom Full of Teachers (Part II)

Begin Here: Teaching Kids to Code (When You're Not Quite Sure How to Code Yourself)