In last Friday's Lego programming class, we added sound, lights and button press sensing to our robot's programs. The kids learned that the Wait block can wait for many types of events. And lastly we learned about friction: how large surface area increases friction and tiny ridges on the Lego Pegs can change how two Lego Beams connect.
In today's kids coding class we worked in our first Lego robot. Since this is our first one, we made a crawling robot. We started with just a motor and arms and once we got that working, we added the Mindstorms Brick. I encouraged the kids to engage in “problem finding”, not just problem solving. We would look at what they made and ask “Does this work the way we want?” or “What would make the robot better?”
In this week’s coding class, we continued to learn more about Unity. Our game menus use UI canvas to overlay the game space. And we learned how to import images and position them precisely in the camera view. We also programmed our music player to play continuously through level changes using a singleton pattern and static variables.
In yesterday’s kids coding class, we started our final Scratch program, a multi-level game where the player avoids guards, unlocks doors and collects treasure. We learned how to have sprites only appear on certain levels and how to control which level we are on. We haven’t the first level yet, but hopefully we’ll finish all 3 levels next week.
In last Friday’s kids coding class, we finished our Catch the Dots game. For some tasks, I asked the kids to program without showing them the specific steps they needed to take, letting them figure out their own solution based on what we did before. They added functions (custom blocks) and variables. And they were able to change the difficulty of the game over time by adjusting the values of their variables.
In the last C#/Unity coding class, we started class by discussing Finite State Machines, which can be used to keep track of a game’s state. We then started to make our first project, a clone of the 1976 arcade classic, Breakout. We added font and image assets, learned to use Gimp for image editing, and created our first menu screen by adding a button. Next time we’ll start adding C# to the project so the menu will be interactive.