Everyone knows there is good and bad in everything we do. Technology for example. It has revolutionized the world in amazing ways and overall has made our lives easier.
At the same time technology has had some unforeseen consequences in the way we live our lives. Kids nowadays are given their own iPad by the time they’re five years old and by the time they’re five and a half they’re more knowledgeable with technology than the parent who gave it to them.
Mindless hours playing games and watching movies can create some unwanted side effects with these kids, which is why Graig Peterson, former teacher and author, had a goal to provide kids, grades 3–7 with a creative outlet to minimize screen-time, and maximize creativity. This is through an application called Story Squad.
A quick rundown of the flow of this game goes as follows:
- To start the child will be presented with a story to read.
- From there they will be prompted to create a ‘side quest’ where they will handwrite a side story based on the prompt. They will also need to include some hand-drawn illustrations with the side quest as well.
- Then, students will upload a photo of their work and be paired up with a teammate.
- Once they’re paired up they will be able to judge and score another team’s work to ultimately determine a winner based on a point system.
Going into this project, the thing we were most worried about was coming across new technologies and tools that we were unfamiliar with, as well as having to decipher the previous code base from the developers before us, and then making some important contributions of our own, all within the allotted time period we were given which was about a months time.
So what do you do when faced with the unknown? Make a plan! So as a team we went step by step through the app, starting at the beginning of the user experience, and each time we came across a feature that was incomplete or non-existent, we put that on the to-do list and proceeded to break each of those features into tasks on how we were going to implement those. Our trello board was an essential part of this planning.
In this example, the user can give points to their teammate and also receive points themselves from their teammate, based on their work. This part of the app is an essential feature because this is how you will determine who wins later on in the game based on the amount of points allotted. We had a lot of work to do on this page and between the four of us developers, we each took a task and worked until the card was complete and we could then move onto the next one in our list. Following this pattern until the end.
Working with the unexpected
As with any project you decide to undertake, there are bound to be bugs, glitches, and unforeseen challenges that arise when you’re in the process of building out each individual feature. Another reason why it is so critical to take it small steps at a time. The smaller pieces you break it into, the easier those bugs and blockers will be to find and deal with. In our case we were able to add some features that weren’t originally part of the project.
A few of the missing features / bugs we were able to find, fix, and implement into Story Squad was:
- Being able to vote on 3 stories and pictures from teams, other than your own and our competing team.
- Distributing the superhero avatars throughout the app. The avatars act as your game character and make the kids feel like they’re the hero of their own story.
- Creating information buttons in the header and making them render a modal of instructions on the pages that need clarification on what needs to be done on that particular day.
These additions to the overall project helped to provide more clarity on the game flow and a better overall user experience in general.
One of the main challenges we faced within these features was the logic behind being able to vote for stories outside of the two teams in your group. The reason behind this is so there won’t be any bias in the voting. You’ll have other users from other teams voting on yours and your competing teams stories and that way it’ll be fair. We were able to come up with a viable solution by grabbing only stories from different cohorts. That way you avoid the mistake of voting on someone's within your own group.
The Here and Now
I’m very proud of what our team has been able to accomplish in the last month of working on Story Squad. It started out as an intimidating challenge where we had no idea what was already working, and what needed to be worked on. By the end of the time we were given (approximately 1 month), we’d learned the code base, located what needed to be done, and implemented features that we were proud to show off to the stakeholder, which he was very happy with.
There is still a lot of work to do until this app is ready to be shipped and deployed but I am so excited to see how this product turns out when it is ready. With the App being 2/3rds of the way done it won’t take long to to flush out the last third of the game and work out the bugs in-between. The most important thing needed right now is the big winner reveal after everyone’s stories and uploads have been voted on. And after that I can picture a few of these features being great additions:
- Single player mode in case you’re more of a solo player.
- The implementation of the trophy room where kids and parents can see awards and badges won during the game.
- The ability to choose your own teammates instead of having it randomized.
The experiences I’ve had and the lessons I’ve learned while on Story Squad have been above and beyond what I could’ve hoped for.
- I learned the importance of having a great team. We all have a passion for programming and making this the best product we could and it really showed in the way we worked together.
- I came to understand exactly what Senior Developers meant when they say you’ll spend way more time reading code, than actually writing it. All too true.
Most importantly though, I was again reminded of how little I know. But despite my lack of knowledge, I gained the well needed confidence that even if I don’t know something, I have the skills to search, learn, and get it done anyway. There’s a challenge in everything, but the solution is always just taking that next step forward.