Inspiration

I attended the Hack-a-Tips Workshop by JP Morgan Chase, and they talked about a coding challenge they posed for us, which is to create a game to teach elementary schoolers how to code. They talked about how the demand for computer science jobs is growing, and if we don't educate the future (elementary school kids), we won't see the innovation and change that we've seen in our generation.

What it does

Zoom Through Code teaches young kids the basic concepts of computer science by having an easy-to-use user interface. Additionally, the program will show kids what code is being generated based on how the user interacts with the interface (in this version, the code is based on which buttons are pressed). Lots of programs use drag and drop methods or completely graphical interfaces that never show kids what the code actually looks like, or how that code relates to what they are doing on the screen. Zoom Through Code shows kids the code so that they can get used to seeing how objects are related to each other, and how code influences what we see on the screen.

How I built it

I knew I wanted to create a theme that elementary schoolers would like, and I definitely wanted to make sure it was appealing to both girls and boys. I started with a superhero theme, (since kids always have a favorite superhero) and in the future I would create multiple options of superhero characters to choose from. I also wanted each of the scenarios to be related to superheroes, to retain young kids' interest. Once I made some graphics to start with and designed the program with kids' interests in mind, I coded the functions of the Flash moving through the path based on the direction that the user chose. Even the best coders learn from their mistakes, so when the user ventures off the path, they can easily get back on without ending the game or losing points. I used Java to code the game. This involved Swing timers (for the Flash's movement through the path), ActionListeners, and LayeredPanes. How the program looks is a very important part of it because kids are drawn to interesting displays, so I spent time making sure the game has a colorful interface and is divided into sections that are easy to navigate.

Challenges I ran into

I ran into a few challenges regarding the design and graphics of Zoom Through Code. Making the game appealing to young elementary schoolers involved putting a lot of thought into the design and aesthetic.

Accomplishments that I'm proud of

Making a viable product that I believe approaches the problem of teaching boys and girls coding at a young age.

What I learned

I gained more experience with Java, the importance of design and remembering who the customer is, and the trickiness with Swing timers and multiple ArrayLists.

What's next for Zoom Through Code!

I originally planned for there to be three initial stages, Stage 1 would teach the basics of a method and parameters (as shown by the .move(direction) examples that appear in the code section when a player presses the buttons). Stage 2 would teach if-else statements, through a choose-your-own-adventure scenario from the perspective of the superhero. Stage 3 would teach for loops through a scenario where the Flash had to search through all 5 of the apartment buildings in all 10 of the neighboring cities for a lost dog. The player would have to create the for loops from dropdown menus and help the Flash search for the lost dog.

Built With

Share this project:

Updates