Building complex game logic to teach programming with Spark AR
Since graduating high school in 2013, Harry Banda has been learning how to code. After teaching himself the basics of Java in 2014, he began participating in local hackathons, and in 2015 enrolled at the Zambia Center for Accountancy Studies to study computing. Since completing that course, Harry earned an NCC International Advanced Diploma in Computing and began his career as a full-stack software developer. In addition to his full-time work, he continues to hone his programming tools and is a member of Facebook Developer Circles in his hometown, Lusaka.
Creating an Educational Programming Game with Spark AR
Harry first heard about Facebook's Spark AR platform , and its AR creation software, Spark AR Studio, during a demo session at a Developer Circles meetup. He was intrigued by the technology, especially because of its low barrier to entry. “I have always been interested in games and game development, so the first thing I wanted to do was build a game with Spark AR studio,” Harry said.
Inspired by Scratch programming, Harry wanted to use Spark AR Studio to develop an augmented reality game that would help people learn the basics of programming. He said, “I feel tools and games can help people gain interest in software engineering, and that augmented reality is a great way of doing it.”
Overcoming Challenges by Turning to the Developer Community
As Harry worked on developing the Spark AR-powered game, he knew his goal was to submit it to a Facebook Hackathon. But using Spark AR to build a game with complex logic came with challenges. “I know Spark AR is not a game engine, but I had to try,” he said. The challenges motivated Harry, and when he got stuck, he would reach out to the Spark AR community on Facebook for advice. “They are very active and helpful,” Harry said. “When I could not make sense of the Spark AR documentation or when I was missing information, I would turn to the Facebook group for help.”
After three weeks of conceptualising ideas and building, Harry’s game was complete. The finished product, Rabbit Coder, is an augmented reality puzzle game based on coding that teaches programming logic as it is played. Harry designed it with first-time coders in mind to help them improve their problem-solving skills with logic and puzzles. With 10 levels, Rabbit Coder introduces new programming concepts as players progress, and helps users learn about sequences, loops and Boolean logic.
Building a Successful – and Impressive – Game
After winning the Facebook Hackathon with Rabbit Coder, Harry and his Spark AR-powered game were featured on a Facebook blog as well as the Facebook Developer Circles page. Because of this, Harry has gained recognition as a developer and has even received part-time offers to build innovative software. Beyond this, though, the success of Rabbit Coder has cemented for Harry that teaching programming through augmented reality not only works, but that it can be a fun way for beginners to develop basic programming skills.
“Developer Circles has helped me deepen my knowledge of Facebook tools through online and offline meetups, and the online Facebook Hackathons and challenges have been a great way to guide my implementation of new tools and technologies. Since joining Developer Circles, I’ve taken part in a range of competitions and have learned how to create mobile and web applications with React Native, Messenger experiences with Wit.ai, and now augmented reality experiences with Spark AR. The balance of competition and collaboration within the hackathons motivates me to become a better innovator.”