In the last month I’ve replied to a few Tweets from people asking for my opinion about whether they should use or Blackbird to help them teach their students how to code. As you might expect, there isn’t a one-size-fits all answer to that question. In this post I’ll share my experience using both in my classroom (9th grade Intro to Programming). Hopefully, my experiences will help you decide which is best for your students. CS Principles’s CS Principles is a very scripted curriculum that you can use to teach an introduction to programming and basic networking concepts. If you have never taught coding or programming, the CSP curriculum is helpful because it lays out a step-by-step, day-by-day plan for you to follow. Throughout the lessons students use’s Code Studio to practice using the skills taught in each lesson.’s Code Studio provides a block programming interface. Each block represents a piece of code. Students drag and drop the blocks to construct programs. As they get better or more familiar with programming students can switch from block programming to writing code in a text editor in the Code Studio. My students and I both found Code Studio’s user interface a bit crowded when displayed on 13” Macbooks and very crowded on 11” Chromebooks. That doesn’t mean Code Studio doesn’t work on those smaller screens, it just means that we always felt like there was something either hiding in the UI and or that there wasn’t enough space to really see the full picture of what you’re working on. It’s kind of like using Google Docs on a phone screen in that it works, but it’s better on a larger screen.

The CSP lessons often include video segments that are designed to provide some “real world” context for the skill or concept taught in that lesson. For the most part, my ninth grade students reacted to these videos with expressions ranging from “oh, now I get why…” to “blah” to “this is cheesy.” I ended up using my own “real world” examples as supplements or replacements for the included video segments.

CSP is more than just coding lessons. There are lots of lessons about networking and how the Internet works. It really is kind of a Whitman’s Sampler of all things related to computer science. It was good for giving students some broad exposure to the many directions that they can go in with computer science. That said, there were times when students who had some previous coding experience in middle school got a bit annoyed or frustrated by the Code Studio experience.

Blackbird Code
In contrast to Blackbird doesn’t have any kind of block programming interface. From the first lesson students do all of their programming in a text editor. In other words, they learn to write Javascript and see what each line they write does. On the whole, my students preferred doing that to dragging and dropping in a block programming interface.

When I used Blackbird with my students there was just one curriculum to follow and there was a workshop space where students could work on anything they wanted to while I could observe that workshop space remotely. Today, Blackbird offers four curricula to choose from along with a workshop space in which students can work on independent projects.

The four curricula in Blackbird are Games and Animations, Expressions and Equations, Magnet Rocket, and Ratios and Proportions. Whichever curriculum you choose, Blackbird works in the same manner. That manner is to start with a simple activity that makes a point or line appear on the screen. Students then see a split screen lesson that shows them some brief instructions on the left side of the screen and a code editor on the right side of the screen. It’s in the split screen environment that students write their lines of code.

Blackbird provides help and tutorials that students can access while writing their Javascript programs. There is a helpful “show me” button that students can click when they get stuck on a lesson. Clicking “show me” reveals the solution and its explanation. However, students still need to actually type the code in order to complete the lesson.

When I used Blackbird with my students they thought the first few lessons were “too easy” and they breezed right through them (to be fair, they all had some prior coding experience). By the time they got to the fourth or fifth lesson, they didn’t feel that way. At that point they started to use the “show me” button in Blackbird to get a little help writing their code. All of the students felt like there was a lot of repetition which, as one student pointed out, is a good way to learn the language.

If you don’t have any prior experience teaching programming, Blackbird does have some good resources for you to follow. That said, it’s not quite as scripted as That’s a good thing because I’d rather put my own spin on lessons than follow someone else’s scripted lesson plan.

Which one should you use?
If your focus is on teaching coding to middle school and high school students, my pick is Blackbird. If your class is a bit broader in scope start with CSP then transition to Blackbird when your students have outgrown using Code Studio.