FROG SQUASH: #FirstFriday Guided Lesson
May 7th is around the corner and with it Terminal Two’s First Friday Play, Practice, Code Event!
As a community-building exercise, Terminal Two has launched this monthly free recurring event designed for students, parents, and teachers to spend time learning and reinforcing coding skills while navigating Terminal Two’s quests.
By RSVP’ing to the event via Terminal Two’s Facebook Page and sharing their experience on social media, participants may even be entered to win prizes and random drawings.
The Terminal Two collection of quests includes two beginner-friendly modules, The Core of Code & Thinking Logically. Players will learn to think like a programmer, interacting with basic concepts and advancing to writing their own code. For the intermediate and advanced, Artificial Intelligence Through the Levels & Developing Code Fluency will lead players through designing A.I. and gaining fluency with code syntax.
Upcoming dates:
May 7th | June 4th | July 2nd | August 6th |
This Friday Play Frog Squash!
During gameplay, you can support your kids' journey by following the outline below. The exercises include multiple-choice questions, discussion prompts, and tips for guiding the game’s learning progression.
Frog Squash is an arcade-style game inspired by the classic Frogger. The game’s mechanics teach three fundamental code concepts: order of execution, loops, and conditionals. Players use code blocks to design an AI that survives as long as possible while finding treasure and avoiding being squashed.
THE FROG SQUASH EXPERIENCE OBJECTIVES
Players will be able to:
- Understand and use conditional statements by telling the frogs how to move through code blocks.
- Understand and use a Repeat, or loop, block.
Preparation
Follow this link to Frog Squash’s page: https://terminaltwo.com/dashboard/play/frog-squash.
Allow players some time to load the game on their browser.
WarmUp Time:
A good way to introduce and reinforcing coding concepts is by giving calling them by their name. In this game, we are going to be working with the following vocabulary and getting them pumped by watching the video above!
Frog Squash Code Vocabulary
Order of Execution: The order in which code commands are read by the computer, usually top to bottom.
Loops: Code inside of a loop repeats a specified amount of times.
Conditional: A test that decides if code does or does not do a task; these may be a statement or a loop.
If-Else: A type of conditional that decides: if x is true, do y; else, do z.
When all players have loaded the game, ask them to play the introduction; after they press the Run button once, wait for everyone to be ready before asking Q1.
Question 1!
When code runs, where does it start?
- From the bottom
- From the top
- From the Start( ) function
Hint 1) Try playing the game without using any Repeat blocks or If_Else blocks! Let players experiment with the game under these constraints for a few minutes, then provide a hint:
Now use Repeat blocks to repeat an action multiple times with one line!
The correct answer is 2! Here is why:
Basic code runs in “order of execution”, which means it runs from top to bottom and from left to right. There are a few exceptions that interrupt the top-to-bottom flow, such as using a loop or calling a function.
Extra Details:
If the first line of code at the top of the program was a function called Start( ), C would be a valid answer. However, every programmer has their own style. You can never be sure what code will look like unless you write it yourself.
Hint 2) Give players 5 more minutes of play time, then provide a hint:
Now use Repeat blocks to repeat an action multiple times with one line!
Continue playing for a few more minutes without using If_Else blocks. Then, ask players to pause and discuss Q2.
Question 2!
What is the purpose of a loop?
- Making a game character do flips
- Stay in one section of the code forever
- Repeat a command more than once without rewriting it
Hint 2) Give players 5 more minutes of playtime, then provide a hint:
Now use if-else blocks to make your animal react to objects in the world!
The correct answer is 3! Here is why:
Writing a loop allows you to repeat an action as many times as you want. For example, if you want an AI to take 10 steps forward, you can loop over the StepForward() command. Otherwise, you would have to write 10 identical lines of code in a row.
Extra Details
A loop could cause your code to stay in one section of the code forever, creating an infinite loop. Infinite loops crash programs; if you’ve ever seen a blue screen of death, an infinite loop may have been the culprit.
FREE PLAY!
Question 3!
Will the result of a conditional ever change?
- Yes, if the variables that it uses change
- Yes, it swaps between true and false every time it is checked
- No, a conditional will always have the same answer
Extra Details
A conditional might always have the same answer if the values being checked never change, but you can’t guarantee this case. Therefore, C is only correct for particular conditionals, not all.
The correct answer is 1! Here is why:
Conditionals make decisions in code: do a task or skip over a task. This decision can change depending on other parts of the code. For example, a player can move in and out of an AI’s line of sight; a conditional may run code to chase and attack the player only if they are in range.
Time to wrap up!
Here are a few post-play discussion questions you may want to ask:
- Could you play better than your code? Why or why not?
- What are some advantages and disadvantages of using repeat loops?
- What are some advantages and disadvantages of using if-else conditionals?