CodeSnaps: a SAS coding app

CodeSnaps is a free collaborative coding environment designed for K12 classrooms. Students create a code which runs the robot through specific tasks. In a classroom setting, students can be divided into 4-person teams; each student is assigned a role. In this scenario, printed code blocks are used to write the code and then scanned into the app to run the code. Only one iPad and one robot is required. CodeSnaps code can also be created directly on the app by dragging the desired commands into the program. In this scenario, individual students or small groups can create the code directly in the app.

Student Roles

  • Product Manager - Student who devises the steps necessary to navigate the obstacle course.
  • Lead Coder - Student who oversees code development, using information from the Domain Expert.
  • Tester - Student who runs the robot through the course, noting any errors (also known as bugs).
  • Domain Experts - Student(s) who measure the course and write down any additional requirements for completing the course (e.g., changing colors, turning).

A variety of CodeSnap activities are available on the Curriculum Pathways website. Below is a video demonstrating a fun CodeSnaps activity as well as how to run a CodeSnaps session. View the written instruction plans setting up the obstacle course used in the video here: Creating the Obstacle Course Instructions. The obstacle course requires that the robot (the round Sphero is used in the video) moves straight from the starting point to the 18' yellow circle, turns right and moves to the 18" blue circle, turns left and moves to the finish line. Read the steps for the Obstacle Course Activity here. View the Obstacle Course video below:



  • iPad
  • Compatible robot (Sphero, Ollie, SPRK, and SPRK+)
  • Free CodeSnaps iOS app
  • Printable Coding Blocks (optional)

Two printable coding blocks representing "move forward" command with bar codes and arrow pointing up.


  • Obstacle Course: The obstacle course is a physical course, making it accessible. If colors are used, different textures or braille can be added as a modification. Students who cannot see color will need to ask if the robot turns color when on the circle. (In the Obstacle Course activity, the Sphero is programed to flash yellow on the yellow circle and blue on the blue circle.)
  • Printed coding blocks: It is recommended to laminate the printed coding blocks. Once they are laminated, each block can be brailled or a braille tag can be added on top of the coding block. Note: The braille should NOT cover the bar codes!
  • App Accessibility: The app works well with VoiceOver:
    • Drag-and-Drop the coding commands (Double tap and hold, then drag to the right side of the screen. Note: The code blocks are meant to lock together (a click is heard when they do lock together); however, VoiceOver does not give any hints as to what the code block is being dragged over. 
    • There are a couple of minor buttons that are not labeled correctly. (Log in button is labeled as "item button" but the long description includes 'log in dialogue'; increase and decrease size buttons.)
    • When selecting the degrees of a turn, a circular dial pops up and VoiceOver announces, "image". With VoiceOver running, the dial does not turn. However, if you double tap on the dial, "315" is automatically inserted into the command. The "315" can be edited. (OLD REACTION)

Update! When selecting the meters to move forward or the turn degrees, double tap on the "0.0" In the popup menu, swipe right several times to move to the Picker Item. Then adjust the value by swiping up or down. Left swipe to the Done button when finished.

  • Sphero: The only piece of the game that is not accessible for a student without vision is calibrating the Sphero. Calibrating requires vision to align the blue light at the "tail" end of the Sphero ball in order to determine where forward is.

Screenshot of SnapCode app displaying the program screen: left side has command options and right 3/4ths is created program

This video demonstrates how to calibrate the Sphero ball.


CodeSnaps in the App Store

Sphero website

CodeSnaps: SAS Curriculum Pathways website (includes links to additional CodeSnaps activities)

Collage for CodeSnaps


Posted by Diane BraunerMar 26, 2019

When introducing your student to coding concepts, download and print the tangible QR blocks. To make the code blocks accessible, laminate the blocks and add braille or textures. Students can line up the blocks in the desired order. Open CodeSnaps app and use the camera feature to enter the  code blocks into the app. Note: Usign the camera is challenging without vision, as the camera has to move down the blocks and capture each block's QR code - all in one swipe. QR codes cannot be added individually.

Note: Currently the Sphero Bolt (newer Sphero robot) is not compatible with the CodeSnaps app.