The object of Cargo-bot is to write programs that control a robotic arm to move, sort, and stack colored crates. The computer language is a simple instruction set consisting of of squares that tell the arm which direction to move, and whether or not to perform an action based on the color of the crate. You write the programs by dragging and dropping the instruction squares into a sequence that causes the arm to perform the assigned task. You can also write programs that execute other programs you've written. (This is important because each program has space for just 8 squares, so you need to be able to write efficient code to complete the challenges). The challenges start out easy but become maddeningly difficult as you progress. With subroutines, if-then statements, and plenty of opportunities to practice debugging, it's a good way to get kids to think like a programmer. You can also record a video of your program in action and share it to YouTube.