Learn Basic Programming While Playing with Cargo-Bot for iOS

Share this article

Do you know a programming language? Is it JavaScript? Python? Ruby? PHP? Within the past year or so, there has been a huge interest in teaching people how to code using gamification methods. Badges, achievements, leader boards, progress bars…all of these are employed to motivate the player and give the user a sense of accomplishment after slogging through a few introductory code examples. But, do they work?
Cargo-Bot Cargo-Bot is an interesting variation on this theme because it’s a game disguised as a way to teach programming. The premise is simple: just use the crane to move boxes back and forth between platforms. It sounds easy, but with any simple game, the devil is in the details. Let’s have a closer look.

Home Screen

On first run, you’ll see the Cargo-Bot loading screen. One of Cargo-Bot’s main draws is that it is the first game that was designed and programmed entirely on the iPad. Rui Viana, an Australian game developer, built Cargo-Bot using Codea, a touchscreen-based code editor. You can tap anywhere on the screen to start your game.
There are six level packs to choose from: Tutorials, Easy, Medium, Hard, Crazy, and Impossible. Each level pack is comprised of six different puzzles, and you can earn anywhere from one to three stars based on your efficiency in completing the level. While you may be tempted to start off with the easiest level pack, you should definitely run through the tutorial levels first. Here we go!


By now, you’re probably wondering what stacking boxes using a construction crane has to do with programming. The straightforward answer is that Cargo-Bot will not explicitly teach you how to program. Rather, Cargo-Bot can make you more familiar with certain programming concepts like loops and conditionals, which are standard across a number of scripting languages. Programming, after all, is about learning how to solve problems. And what easier problems could there be to solve than stacking boxes in order? The key for Cargo-Bot is teaching you efficiency, so you can do more with less time and fewer actions. The crisp retina graphics do a great job of drawing you into the game, and the Yann-Tiersen
-style music helps you concentrate without driving you crazy. And, you’ll need that concentration in order to start grasping the basics of Cargo-Bot. The basic Cargo-Bot programming interface is comprised of four rows for commands (three rows have eight slots and the last row only has five slots) and a big green play button at the bottom of the app to process all the commands in the rows. To the right, you have a toolbox which has directional tiles for the crane (left, right, and down), four “loops” for each row, and a button to clear all the slots in the rows. The goal of the level is listed at the top of the app, and there are buttons to show you hints, advance forward through the rows one step at a time, fast-forward the crane’s movement, and return to the main menu. One thing I love about Cargo-Bot is that puzzle solutions can be saved to the iPad for sharing on social networks like YouTube or emailing to a friend.
The first four levels — “Cargo 101,” “Transporter,” “Re-Curses,” and “Inverter” — are fairly easy to accomplish. Once you start “From Beneath,” four additional commands are added to your Toolbox which handle conditions for the crane. You have a yellow flag, a blue flag, a rainbow flag, and a gray None flag. Using these flags on top of any command tile or loop tile, you can add a condition to control the crane if it is holding a box of a specific color, of any color, or if it’s not holding a box at all. In “Double Flip,” you gain a green flag and a yellow flag. Not every puzzle gives you these flags to use, so you have to be pretty creative with some levels. Soon, you’ll be creating subroutines, recursive functions, and nesting commands with ease…but it will take you a while to get the hang of it.


Despite the basic appearance and simplicity of Cargo-Bot, this game is anything but child’s play! It’s hard to call this a drawback though. The game only has 36 levels, but I guarantee you’ll have a hard time getting through them all and scoring three stars in each one. The tutorials are there to help you out, and creating solutions are all about planning and efficiency.
Each level contains a Hints button at the top-left corner to give you some direction if you become stuck. These hints aren’t particularly helpful in the later levels, but they can give you a bit of help in the beginning. Aside from this, there’s not much to the game once you’ve progressed through the levels. You gain stars depending on the efficiency of your stacking algorithm, but the stars have no use in the game outside of that. They don’t unlock any other levels or different commands or conditionals. I guess the satisfaction of creating an efficient solution is good enough, especially since many of these puzzles are quite difficult.


Cargo-Bot is a fun yet challenging game that masks the teaching of programming concepts within a simple and attractive gaming interface. The learning curve for beginners is a bit brutal, so it’s definitely a game for kids. If anything, Cargo-Bot is a great example of what Codea can accomplish as an iPad programming app.
Cargo-Bot Cargo-Bot is free in the iOS App Store and requires iOS v5.0 or higher to run. Download the app from the App Store link below or by using the App Store button provided. Download Cargo-Bot

Frequently Asked Questions (FAQs) about Basic Programming Concepts and Cargo Bot for iOS

What is the main purpose of the Cargo Bot game?

The primary purpose of the Cargo Bot game is to introduce basic programming concepts in a fun and engaging way. The game involves moving crates from one place to another using a crane, which is controlled by a set of instructions that the player must program. This helps players understand the logic and problem-solving aspects of programming, making it a great learning tool for beginners.

How can I download and install Cargo Bot on my iOS device?

Cargo Bot is available for download on the Apple App Store. Simply open the App Store on your iOS device, search for “Cargo Bot”, and click on the “Get” button to download and install the game. Make sure your device meets the system requirements for the game to ensure smooth gameplay.

What are the basic programming concepts I can learn from Cargo Bot?

Cargo Bot introduces several fundamental programming concepts, including loops, conditionals, and debugging. Loops are used to repeat a set of instructions, conditionals allow the program to make decisions based on certain conditions, and debugging involves identifying and fixing errors in the program. These concepts are essential in any programming language.

How can I progress in the Cargo Bot game?

Progressing in Cargo Bot requires understanding and applying the programming concepts introduced in the game. Each level presents a new challenge that requires a different set of instructions to solve. As you progress, the challenges become more complex, requiring more advanced programming skills.

Can I use Cargo Bot to teach programming to my kids?

Yes, Cargo Bot is an excellent tool for teaching programming to kids. The game’s visual and interactive nature makes it easy for kids to understand the basic concepts of programming. It also encourages problem-solving and logical thinking, which are essential skills in programming.

Is Cargo Bot suitable for adults learning programming?

Absolutely. While Cargo Bot is designed to be accessible for kids, it’s also suitable for adults who are new to programming. The game starts with simple challenges and gradually introduces more complex concepts, making it a great learning tool for beginners of all ages.

What are some strategies for solving the challenges in Cargo Bot?

Solving the challenges in Cargo Bot requires careful planning and logical thinking. Start by analyzing the challenge and planning your approach. Try to break down the problem into smaller parts and solve each part individually. If your solution doesn’t work, don’t be afraid to debug and try a different approach.

Can I share my solutions with others in the Cargo Bot community?

Yes, the Cargo Bot community is a great place to share your solutions and learn from others. You can post your solutions on the community forum and receive feedback from other players. This can be a great way to improve your programming skills and learn new strategies.

Are there any other games like Cargo Bot that can help me learn programming?

There are several other games that can help you learn programming, including Lightbot, CodeCombat, and Robocode. These games also use gameplay to introduce programming concepts, making learning fun and engaging.

Can I use the skills I learn in Cargo Bot in real-world programming?

Yes, the concepts you learn in Cargo Bot are fundamental to all programming languages. While the game uses a simplified programming language, the logic and problem-solving skills you develop can be applied in real-world programming.

Maurice CherryMaurice Cherry
View Author

Maurice Cherry is a web entrepreneur, freelance technology journalist, and technology consultant for non-profit organizations and politicians. He is best known as the creator of the Black Weblog Awards, the world’s premier event for showcasing bloggers, podcasters, and video bloggers of the African diaspora. Maurice is also Creative Principal at 3eighteen media and an adjunct professor with DeVry University. Maurice is an honors graduate of Morehouse College, and currently lives in Atlanta, GA.

Share this article
Read Next
Get the freshest news and resources for developers, designers and digital creators in your inbox each week
Loading form