Jump to Hints
To test the boundaries of developer advocacy - what if we could learn differently?
The inspiration stemmed from my everlasting love for puzzle games, escape rooms, and most recently, a Korean mystery-solving show - Busted! As I was in my attempt to complete one of the rounds of our newly-bought PS4 game, Escape Academy, all I could think about was how clearly I was able to recall my steps of trying to solve the rounds in the game - and this comes as a surprise mostly because of my amazing ability to have limited knowledge retention capabilities. Maybe it was the fact that I had to rack my brain for each step of solving the puzzle, or maybe it was the fact that I felt a strong sense of accomplishment every time I solved a riddle.
Nonetheless, this had me wondering - what if I could help create that platform to allow others to learn differently?
Bringing back the memories of when I was a private online instructor for iD Tech - Rather than teaching the concepts of Game Development with Roblox and LUA using the conventional method, I'd always opt to implement a gamified experience whereby my students learned about sprite modifications while attempting to build a superhero character to ward off evil. This wasn't always the case though - in fact, I started off my teaching journey like how you'd imagine it - concept after concept, with thorough explanations and guidance. That was up until I noticed the boredom in my students when I shifted to cater more personally to each student's likes and dislikes. And this had me thinking - students like to play games...
Speaking of which, I recently had a conversation with someone I look up to fondly, and we discussed how there needs to be a push for learning materials to be catered to aspiring students - especially in the Cloud industry. Combining one and one, I realized that I could help bridge that gap by creating GCP: Trapped in the Cloud.
So I'm back in the stu, and here's what I came up with:
How it's different - The basis is the concept of puzzle games. The learning process is masked with challenging riddles and problems. Rather than a straightforward route to solving tasks, players are presented with a sequence of basic shapes that they have to decipher to reveal the message containing hints on what steps to take to successfully set up a Compute Engine instance.
1. The core
Here's my thought process - I knew that I wanted to cover a very specific concept on GCP, preferably just a section of it, to reduce the incoming workload. The initial idea was to focus on IAM, Compute, or Storage as I believed that these were one of the fundamentals of Cloud Computing imo. Finally, I settled with 'Getting Started with Google Maps API' as I extracted this from a recent workshop that I led with WWCode Python - Building Python Projects for a Resume Booster.
2. The storyline
Rather than a usual Escape Room-esque experience whereby players aren't given directions on where to start off, I decided that for my first prototype, it'd be best for me to enforce the direction of the storyline - to eliminate the risks of bugs, in light of the lack of beta testers. Next, I determined each 'challenge' in alignment with the steps needed to take to set up an API key with the Directions Matrix API
Create an API key --> Challenge #3: Retrieving the key to the machine
With the main idea of having to 'fix the machine', I constructed the player as Yellow Dino, an employee on a mission to save the day. I also wanted to ensure that the scene objects reflected the Directions Matrix API concepts properly
Electrolyte --> API
And that the objects had to make sense - how can I fit 'electrolyte' into the storyline so that it makes sense that if the wrong electrolyte was chosen, it's shown? Naturally, to provide logic to both the concepts and the storyline, I would translate functionality into the plot
Buying electrolyte --> Enabling an API
3. The puzzles
Coming up with the puzzle segments was the fun part - I didn't have any problems coming up with puzzles to fit the challenges in the storyline, as backed up by my ample knowledge of puzzle games. Which brings me to the next topic...
4. The distress
I struggled a lot with the Game Maker Engine :< I opted to use GDevelop as I've come across it during my time at iD Tech as a really great drag-and-drop game engine. After several attempts, I was met with a lot of love and hate for the platform - it was really user-friendly, but the logic didn't fit well with me. I'm one who thinks conditionally; I'm wired to see a flowchart of if-else statements, while loops and try-catch blocks. In the end, I had to revamp the puzzles to a watered-down version, to get them to function, to say the least.
On the other hand, I also wanted to pour my all into making it aesthetically pleasing. It started off well - I created my first 2D wallet pixel art animations in the palette of Google. Things were going smoothly until they didn't - I ran out of bandwidth :') Alas, the prototype consists of both marketplace-ready assets and custom pixel art.
5. the next steps
The prototype on how to get started with the Distance Matrix API is now completed, will Compute be next?
Hints for GCP: Trapped in the Cloud - APIs
Enter Password
You recently just bought a new phone case that's in your favorite color
Your password is entirely lowercase
Folder Selection
Your boss's text has all the necessary information needed
The folder naming format is standard for all: 2 words, capitalized
Card Selection
Your company credit card is in your wallet
Your company credit card number is based on your boss's retro flip phone
Electrolyte Selection
There doesn't exist an electrolyte that's a one-size-fits-all solution, it varies on a case-to-case basis - it is case sensitive
The employee likes to color-coordinate all materials
Enter Employee Number
Your authorized employee card is in your wallet
Your boss once told you that the company logo serves as a map
Program Link
Drag and drop in the correct order
Comments