STEM Education for All Educators: What is Block-Based Coding?

Teaching Block Based Coding to Young Students

App-Based Blockly Programming

Welcome to Beyond the Hour of Code, the podcast to help you use programming to teach core content. I am Sam Patterson and in today's episode, we talk about blockly-based programming in Apps. For a more detailed discussion check out my new book “Programming in the primary grades: Beyond the Hour of Code

Why Blockly?

Blockly is a tool for building visual programming editors Teachers, once they are familiar with the platform, can spot errors much more quickly than they could find a misplaced semicolon.

Blockly based apps allow students to get programming fast. In a 45 minute class period, a student can complete multiple iterations of a functioning video game, an animation, or a model. The speed of creation is especially astonishing to anyone who has spent time working in a text-based programming syntax. The work the students are doing in Hopscoth, Tickle, and Tynker, during grades 2-4 is preparing them to be productive in Scratch in grades 4-8.

When students work in several different apps that are based on blockly they are able to transfer lessons learned in one programming environment into another. The fluid use of apps also helps students practice learning

Programming in Apps

There are many tablet-based programming apps available and there seems to be more every day for both iOS and Android. Check the last chapter of this text for our annotated bibliography of programming apps. Programming apps are generally categorized as leveled game-style apps or as open studio apps. The leveled apps are designed to teach the user the basic principles of programming through a gamified experience where level by level the challenges become greater.

Open studio apps aim to let the user design and build programs within the app that can often be shared with others using a community within the app or a web-based interface that connects to the app. One style of app is not superior to the other, they just do different things. When you’re deciding which to use in a lesson, think about your learning goals and match the app to fit.

Leveled Programming Apps

Leveled programming apps, like Kodable, Cody's Quest by Tynker, and The Foosuse all of the mechanics of games to guide students through a process of learning tools, commands, and structures available in that platform. These are introduced one at a time in the context of a challenge. These apps can be powerful learning tools to use in whole class instruction as well as individual and choice-based learning contexts.

As a teacher, you will notice that the apps self-differentiate. Students work quickly through the levels they “get” and have to spend more time with others. Even though the leveled apps can be fairly self-contained, using them in the classroom is not a simple matter of handing out iPads. There are a few tricks and structures that can help support student learning and success.

TipsFor Teaching Code with Leveled Apps

  1. Don’tundercut the tutorials. Many of the apps have a good library of built-in tutorials. Ask your students to engage the tutorials and ‘read the screen’, or look for tips and solutions in the app.
  2. Focus on communication and problem-solving. Since the app is going to do the heavy lifting of teaching the programming concepts, this frees you up to teach the important things, like how to ask another student for help, or how to notice when someone needs some help and how to offer it, or how to politely refuse help when you want to work through a problem on your own.
  3. Hang back and watch body language. Observation can yield a great deal of data. A general guide is this: fist pumps = good, face in hands = bad.
  4. Build in some reflection.One of the greatest challenges to teaching with a self-contained leveled app is that it can be hard to tell how the students are doing other than what you observe.

OpenStudio Apps

Open studio programming apps, like Scratch Jr, the create side of Tynker and Hopscotch, require a very different support strategy in the primary grades. An open studio app does not have levels, goals, points, stars, or any built-in motivational supports. Teachers using an open studio app need to create a complete educational experience and use strategies of sharing and communication to keep students engaged and motivated.

Any teacher who has taught writing will be very familiar with one of the greatest challenges in an open studio app, the challenge of the blank white page. When students open Hopscotch or Scratch Jr, they can do anything. This infinite potential can be a huge problem.

Tips for Teaching with Open Studio Apps

Balance direction and discovery.When students figure out something for themselves, they own that knowledge.

Connect the challenge to content.Open studio apps are great for connecting to content.Know the platform.The teacher needs to understand how open studio apps, like ScratchJr, Tickle App, or Hopscotch work. You don’t have to be a programmer, but a basic knowledge of the platform and access to resources is important with an open studio app.

Design a digital learning experience.If the app allows you to do so, prep for a lesson by designing a code project populated with activities. In the learning, through code chapters, you will read some detailed examples of this.

  1. In general, imagine that instead of creating a packet of work for a student to do with a photocopier, the work was created inside the tablet computer. Instead of depending on a software company to design meaningful learning activities, teachers can now build these activities themselves inside open studio programming apps like Hopscotch and Scratch Jr.
  2. Use guided access to protect your learning focus.We cannot restrict our device without restricting the students, and internet filters can be really annoying.
  3. When teaching Kindergarten students with iPads, guided access can help them stay in the app. By disabling the home button and turning off key parts of the screen, teachers can make it much easier for students to stay in the app.

The Role of Programming Apps in Learning

As a teacher, you don’t have to be a programming expert, but you should know each platform well enough to help the students transfer understanding from one app to the other.

Thanks for learning with me today. I hope you will visit and join the community of teachers working to use programming as a model of creative academic expression. Click HERE to order my book.

About the author, Sam

Sam is Makerspace coordinator at Echo Horizon School, the nicest little school on Los Angeles' West Side. In the classroom since '02 Sam has taught grades PreK-12. Every lesson is a writing lesson.