Programming in Apps with Blockly Ep5

Posted by on Mar 13, 2016 in Beyond the Hour of Code, blog, Podcast

Why Blockly?

Blockly is a tool for building visual programming editors. Students will snap commands together and select options from drop down menus instead of manually counting their own nested brackets and looking up hex codes for specific colors. 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

PlayPlay

There are many tablet-based programming apps available and there seem 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 Foos use 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.  

Kodable

Cody’s Quest by Tynker

Dash takes order from Blockly

Dash takes order from Blockly

The Foos

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.

Tips For Teaching Code with Leveled Apps

  1. Don’t undercut 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.

Open Studio Apps

Open studio programming apps, like Scratch Jr, Tickle, 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.  

ScratchJr

Hopscotch

Tickle

Creative of Tynker

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 Scratch Jr, 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.