CS Concepts in Elementary Grades

2018 January Tech Expo LOGOThis last week I led a professional development session titled “CS Concepts in Elementary Grades” for my district’s Tech Expo.  It was one of several dozen sessions available for teachers during the day. I had just a handful of teachers at my session.


I started with this video from Code.org. It introduces “why CS?” better than I can.

Next, we took a quick look at the CS Standards at http://www.csteachers.org/page/standards, just to see that there are standards and where to find them.

Then it was on to try out Scratch.  (One teacher had mentioned this is why she signed up for my session.  She wanted to learn Scratch.)  I introduced Scratch by going over these concepts:

    1. Stage
    2. Sprites
    3. Script, Costume, Sound tabs
    4. Block menu

Then I let them try out the Virtual Pet project using the Scratch cards from https://scratch.mit.edu/tips.  I picked the Virtual Pet project as it hits all the concepts I wanted to introduce.


Screen Shot 2018-01-22 at 7.36.58 PM

Code from a student-made Virtual Baby project


These are the concepts I think are important for elementary students to be introduced to:

    1. Computational Thinking
    2. Algorithms
    3. Commands
    4. Events
    5. Initial Conditions
    6. Decisions / Conditionals
    7. Iteration, Loops and Forever
    8. Coordinate knowledge
    9. Data and variables
    10. Debugging – Checking for errors

I had one Kindergarten teacher attend my session, so I handed her an iPad with Scratch Jr. on it.  She had a great time playing and exploring Scratch Jr. while the rest of us working on our Virtual Pets.

The Virtual Pet project turned out to be pretty complicated for a first time Scratcher. They had a hard time with Broadcast and Recieve, just like my Code Club members when they tried the Virtual Pet project. I guess I knew this would be a difficult concept but it is so powerful. I like all the things you learn when trying this project out, even if it is a bit overwhelming.

After some success, we moved on and I showed them some student work.  I wanted them to see examples of how to incorporate Scratch into their curriculum.

    1. Intro to Scratch was independently made by one of my former Code Club members https://scratch.mit.edu/projects/177914932/
    2. Infinity and Beyond shows how a research topic (math topic in this case) can be shared using Scratch https://scratch.mit.edu/projects/22933952/
    3. Apple Inventory is another case of using Scratch to demonstrate understanding  https://scratch.mit.edu/projects/66568488/
    4. Math Games by students for Hour of Code week  https://scratch.mit.edu/studios/3616910/
    5. Winter Fun is an introductory project I’ve done with students https://scratch.mit.edu/studios/3664546/
    6. Spirograph Studio (reminiscent of the old Turtle paths play)  https://scratch.mit.edu/studios/3984733/


Screen Shot 2018-01-22 at 7.32.51 PM

Using Scratch to show your math solution.


I have many more, but as we were running out of time I quickly went through some Debug-It projects I found on the Scratch site.  I think it is important that teachers feel confident in helping students when they get stuck.  Knowing how to debug Scratch projects can help.

Debug it

  1. https://scratch.mit.edu/projects/23267245/
  2. https://scratch.mit.edu/projects/24269007/
  3. https://scratch.mit.edu/projects/2042712/

I didn’t really pick the right Debug it projects for my attendees.  These were more challenging for my audience than I thought they would be.  I wish I had chosen easier ones or left this for another session altogether.

I hope my session left them with an idea of how to start using Scratch in their classroom.  I also hope they will reach out to me if they would like support facilitating Scratch projects in their classroom.  I worry that they were a bit overwhelmed with all I presented. They were a pretty quiet bunch, but I guess I’m used to a room full of rambunctious 10-year olds.

Oh, and I also compiled this list of resources:

Resource List

ScratchJr:  http://www.scratchjr.org/

Scratch online: Scratch.mit.edu 

Teacher accounts https://scratch.mit.edu/educators/

Scratch cards & Educator Guides https://scratch.mit.edu/tips

Offline editor https://scratch.mit.edu/download

Starter Projects https://scratch.mit.edu/starter_projects/

ScratchEd online community http://scratched.gse.harvard.edu/

Creative Computing Curriculum using Scratch http://scratched.gse.harvard.edu/guide/

Code.org Teaching Computer Science Fundamentals PD


Code.org Lessons: https://code.org/student/elementary


CS4NH resources:


CSTA K-12 Computer Science Standards, Revised 2017


CS for All Teachers 7 “big ideas”:


CodeClub.org:  https://codeclubprojects.org/en-GB/scratch/

K-12 Computer Science Framework: https://k12cs.org/




Scratch @ MIT 2016

Screen Shot 2016-08-12 at 11.20.28 AM

I was at my first Scratch Conference at MIT Media Lab last week (#ScratchMIT2016). It was fantastic!  I met so many awesome Scratchers, educators, researchers, developers and enthusiasts.  It was wonderful, inspiring…  “I came for the workshops and stayed for the community.”

I met the awesome Scratcher Bubble103 and her mom the very first evening and didn’t even know I was meeting a Scratch rockstar.  I met people from all around the globe and had great conversations in between keynotes and workshops and during breakfast and lunch breaks. I have made so many connections, it is quite awesome.  The Scratch team is brilliant, kind and adorable.

Screen Shot 2016-08-12 at 11.35.09 AM

Dinner was quite fun, too.

Here are some take-aways from the conference that I hope to implement during the (fast approaching) school year.

  • read Seymour Papert’s Mindstorms
  • work on parent involvement plan – the keynote about Pathways to Participation helped me understand that I need to support students beyond the school environment.
  • more collaboration with the art teacher.  This is the year when art and math and code will collide!  I’m going to introduce Beetle Blocks and the watercolorbot.  From Art Alive there was the interacting with art using Scratch and MakeyMakey piece that we might delve into. I hope we’ll do more Scratch animation, too.  STEAM on.
  • introduce the development of cheat codes to help debug Scratch at Code Club.  Rik Cross’ workshop Practical Debugging in Scratch  was super informative. Students will enjoy the idea as well.

    practical debugging

    Photo from a @Raspberry_Pi tweet

  • Scratch Jr and the Writer’s Workshop in 1st grade. Scratch Jr has come along way from the first time I saw it and I’m excited about it again. I already have a homeroom assignment with 1st grade teacher who’s tech savvy so this will not need a big sell.
  • Mathematical Simulations in Scratch.  I know my students are NOT high school math level students but I liked the way Patrick Honner was able to embrace the tools the students knew (Scratch) to work on real math problems.  I’d like to try some math modeling in Scratch -like the Monte Carlo method.  I’m going to have to see what comes up in 4th grade math class and the Math Forum Problems of the Week and see if anything looks like a good candidate to model using Scratch.
  • Continue to develop this community. Now that I’ve met all of these people I want to keep in touch whether on the internets (Twitter, Facebook) or at a ScratchEd meet-up.  I am definitely thinking about visiting Mags in Ireland.  Who knows, maybe there’ll be a Scratch conference in the UK or Europe next year.



This all looks doable and like hard fun.

(Note: there are things I will have to get, too- embroidery machine for TurtleStitch, 3-d printer for Beetle Blocks, more Makey Makey‘s.)

Scratch On!


How to Think like a Programmer

Yesterday was our second Code Club meeting, our second Hour of Code, if you will. It went well. Kids did great. It’s incredible, actually, how much we got accomplished.  I have to remember that, because I want even more and I think the students’ expectations are at least as high as mine.

I had been thinking about what I wanted to introduce this week since Code Club ended last week. What could I introduce at this point that was relevant to where they are in this journey? Too soon to talk about initial conditions.  They’re not ready for elements of game design (although a number of them would tell you otherwise). Explaining what an algorithm is was a definite possibility, but I needed some guidance. So I looked through the Computing at School Primary Guide for some help.

The guide explains how primary teachers can get started with the new curriculum and provides many pointers to excellent resources and ideas for building an innovative and exciting curriculum.

I recommend checking out CAS (Computing as School) for anyone interested in teaching computer science in elementary grades. From there I developed my topic for week 2:  Think like a Programmer  with two key points.  The first is that computer language is different from human language.  The second point is that to think like a computer programmer you need to know how to do 3 things: 1) how write clear algorithms, 2) how to debug, and 3) how to test your program.  I tell you, when I opened with, “Today I’m going to tell you how to think like a programmer”,  I got 100% attention from a whole bunch of my coders.  I think they even forgot about their goldfish crackers and apple slices for a minute. It was like I was revealing some mystery of life.


Felix-and-Herbert – first project from Code Club

I only talked for 10 minutes because I wanted them to have a good 45-50 minutes to tackle our first learning project from Code Club: Felix and Herbert.  I had a printed project packet for each student.  They were to go through the project step by step as best they could.  This is a creative bunch and many whined a bit about having to follow the directions precisely.  I told them these projects would show them how to do things they might want to include in their own programs later.  For a while I wasn’t sure anyone was going to even finish the project. I didn’t print the projects in color so we spent a good bit of time figuring out under which menu button each code block was. Some things were a bit different in our version. Also saving the project can be an issue in our network set up. But it was all productive learning.

scratch menu

Scratch 1.4 menu – color coded

I had a former student email me with an interest in helping out with code club.  I remember when he was in elementary school here.  He was in the chess club I ran back then and I believe he wrote a persuasive essay in 5th grade about why our school needed more, and better, computers. He’s a high school senior now and at least a head taller than me (I’m only slightly taller than a 4th grader). When I introduced him to the students their comment back to me was, “no offense Mrs. Pollard, but you’re old.”  Well, yes I am. He was a great help with the students even though he didn’t know the programming language Scratch.  With three of us, my former student, the snack-bringing parent who stayed and helped, and myself, we managed to field most issues and a number of the students actually finished the project.  Some were even able to spend a minute customizing it.  Some didn’t quite finish.  A couple of students wanted to take the packet home.

The end of Code Club came so quickly, I didn’t have time to check-in with each student.  A downside of having such a large group and wanting to accomplish so much.