Potato Pirates is a strategic tabletop card game perfect for classrooms, family time, and game night with friends. It teaches anyone aged 6 & up, over 10 hours worth of programming concepts in 30 minutes, all without a computer. Raising over S$250,000 from more than 5000 backers worldwide on Kickstarter, Potato Pirates is the most funded tabletop game project from Singapore. It is available as print-and-play copies in 21 different languages!
Computer programming has become an essential 21st-century skill, however, computers may not be as easily accessible to children in other parts of the world and certain schools lack the resources to give students access to these computers or tablet devices to learn programming. Using Potato Pirates, children from all over the world can learn fundamental computational thinking concepts through a fun, accessible, and interactive way by playing a game with their friends and family.
Detrimental effects of excessive screen time to children has always been a major concern for parents and educators. Potato Pirates eliminates that worry by delivering a 21st-century skill in an offline and social manner. As a tabletop game, Potato Pirates is the catalyst for kids and parents, students and teachers, beginners and experts to come together and have fun while learning from one another, maintaining face-to-face, offline connections in the digital era.
Potato Pirates guarantees both educational value and re-playability. Based on surveys results contributed by over 280 participants of all ages and profession, 9 in 10 people have shown an improvement in the understanding of fundamental programming concepts after just an hour of play. Additionally, 78% indicated an increase in confidence in learning programming with 85% rise in interest in learning programming. This is especially important as virtually every sector in the industry is now disrupted by computation. As we strive towards a smart nation, our future generations have to be equipped with the fundamentals of computing and that is the mission of Potato Pirates, to be the most accessible first step into the world of programming for anyone!
When we first conceived the idea of Potato Pirates, we wanted to use card games as a social medium to bring kids and parents, students and teachers, beginners and experts together so that they can have fun while learning something meaningful — programming.
Our idea was inspired by two trends we observed: the resurgence of tabletop games and the growing popularity of using unplugged methods to teach coding. We combined these two observations and developed a gamified yet offline method to teach programming.
More and more schools are starting to teach students programming but parents and educators are wary of prolonged screen time and lack of social interaction between children. Many learners often feel discouraged as they have difficulty juggling between learning computational thinking logic and language-specific syntax (grammar).
Unlike traditional curricula and mobile applications that are designed for specific age groups, a card game appeals to all ages. Instead of learning the game and concepts on the iPad alone, children can play with their older siblings, friends, teachers, parents, and even grandparents. This forms a social learning support network that spreads the joy of learning programming and brings it beyond classrooms. It guarantees both educational value and re-playability as the game dynamically changes depending on who you play with.
The first step we did was to list down the essential computational thinking concepts that beginners learn: conditionals, loops, variables, and sequential logic. Once we had a list of concepts to incorporate, we started making our first prototype, using poker cards. We scribbled words on those cards and used crushed pieces of scrap paper as HP counters. Within 45 minutes, we began play-testing our game. The mechanics were simple. You can attack other players using attack cards. Coding cards like 'for', 'while' and 'if-else' enabled the use of your attack cards multiple times. The objective is to destroy the altar which has a variable health.
In that 3-hour rapid prototyping session, we managed to figure out the upper and lower bounds of the starting health of each player, the variation of each card type (e.g. for 2 times, for 5 times) and what are the actions that each player can take during a turn. The coding mechanics felt right, but there was more to making a card game than we had realised.
The top 3 considerations we had when developing the card game was:
1. Game World
What is the story? What is the objective? Who are the characters? What are their abilities? How do you link the cards to the theme of your game?
2. Artwork & Production
Is it possible to outsource? What is a reliable source? Where or how can you prototype your card designs game and at a cheap price?
3. Game mechanics
To what extent is the game dependent on luck? How do players win? What actions can players take? Are there opportunity costs for every action? How do players interact with one another?
In order to answer all three considerations above. We needed characters that were original and memorable. To get the ball rolling, we used a design method called Collaborative Sketching to generate and add on to one another's idea as a team.
Our team sat down at a table and each person takes 15 minutes to draw 3 different ideas on the paper, using a unique marker colour. Once the time is up, we pass the paper to the next person on the left and we have 5 minutes to build upon the previous person's ideas. This process is repeated until you get your own paper back. After the whole activity, we were able to review and synthesise 12 unique ideas in after just 30 minutes.
This activity unlocks our imagination and at the same time, forces us to interpret and build upon the vague drawings from team members. Silence is golden; it defers judgement of ideas, letting everyone express themselves freely. Ideas are fragile — we want to let them grow before trampling on them. With this design method, we were able to come up with an overall concept of the theme and artwork of what the game could look like and this was when Potato Pirates came into the picture.
We started our game testing once we had the preliminary artwork drawn by freelance artists. Over an entire year, we have tested multiple versions of our game with elementary school students, educators, families, professional poker players, computer science students, advertisers — basically people from myriad backgrounds. Each time we test the game with people, we keep track of the variations on the number of players, the card sizes, the card count, card types, and the different winning conditions.
What we did to test and improve our game:
1. Focused on our lead users.
Initially, the game included coding concepts such as classes and inheritance. It made the rules too cryptic for kids, and we revamped the gameplay entirely after conducting workshops and testing it with them. Now, it is leaning towards a functional programming approach. Besides kids, the accuracy of the concepts also appealed to our other target audience: parents, educators and geeks.
2. Made multiple iterations on the balance of cards.
We tried to strike a good balance on the number of cards in a deck and the ability of each card type. Thinking about the worst-case scenarios: What is the probability that a player will be out of the game in the first round? We had a lot of one-hit KO combos, which we eventually nerfed so that everyone could enjoy the game. Moreover, the more players that stay in the game, the more interesting the dynamics would be. We used an excel sheet to map out the probability of drawing each card and varied the probability table based on the number of players.
3. Get multiple perspectives and professional opinions.
By sending our game out to game reviewers and educators, we were able tapped on their wealth of experience and expertise to provide their honest feedback on that game. We would further reevaluate certain concepts and game mechanics to balance out the game accordingly.
4. Conducted pre and post-game quiz.
As we tested the game with our various users, we set up a pre-game and post-game quiz to assess participant's knowledge in programming prior to any exposure to the game. Our data collected from over 280 participants showed that the game not only eased the learning curve of picking up computer programming, participants' interest and confidence in learning programming also rose by approximately 80%. This helped to reaffirm the game's learning objectives from time to time.
Through the countless test sessions and over 50 iterations, our design evolved from a highly technical coding card game to a game that has a good balance of excitement, strategy and meaningful coding concepts.
We launched our project on Kickstarter last year and reached our funding goal in 10 hours. Our 35-day campaign raised S$250,000 from over 5061 backers worldwide. We produced and shipped the game within 5 months after our campaign ended.
Many of our backers wrote in to request us to produce the game in multiple languages such as French, German, Spanish, and many more. The reason was that elementary school children have not mastered English, in order for them to play the game it has to be in their first language. With the help of our backers, we have successfully crowdsourced the translation of our cards into 21 different languages. It is made available to our backers as a print-and-play copy. Now, children all over the world are able to learn the fundamentals of programming regardless of the language they speak.
Potato Pirates is just the first step. We did not want the learning to stop there, we want to empower more people to kickstart their journey into programming. We developed introductory learning resources for different age groups in programming languages such as Scratch, Python, and Java. By using the learning resources, learners will be able to apply what they learnt in the game into actual code and program.
Keeping in mind of educators who would like to introduce computing to their students, we created a 12-hour Potato Pirates x Python curriculum. It includes slide decks and teachers' manual. They can easily teach the class without having to spend too much time creating content and learning objectives. This is especially useful for teachers who have no programming background looking to propagate computing education.
Ultimately, with Potato Pirates, we want parents, children, and educators to realise that learning programming is not just about picking up desirable skills for the future, it is also about soft skills learners develop in their programming odyssey. The programs they write often fail because of errors and bugs. They need to have the patience and discipline to correct these errors in their program. As a result, they learn how to be comfortable with failing. The more they fail, the more likely they learn how to succeed in programming and in other aspects of life.