
Our program empowers children by developing key skills essential for success in the digital age:
Critical Thinking
Through programming, kids enhance their logical reasoning and problem-solving skills, laying a strong foundation for all learning.
Creativity
Coding is more than syntax—it's a medium for expression. Kids turn their ideas into digital creations and build confidence in the process.
Future Skills
With early exposure to technology, children gain the tools they need to thrive in a rapidly evolving, tech-driven world.
In this lecture, students will be introduced to Scratch 3.0, a beginner-friendly visual programming platform developed by MIT. The session will also include guidance on installing and accessing Scratch 3.0. We will begin with a brief overview of its interface, key components (sprites, stage, blocks), and how it enables interactive game creation through drag-and-drop coding.
Learning Outcomes:
By the end of this lecture, students will be able to:
Navigate the Scratch 3.0 interface, identifying sprites, the stage, and code blocks.
Install or access Scratch 3.0 through a browser or desktop application.
In this session, students will explore the concept of variables by designing a fun and interactive Scratch 3.0 game featuring a bear and a car. They will create a Score variable that updates in real-time—increasing when the bear is clicked and decreasing when the car is clicked. Through this engaging activity, students will observe how variables can store and update values based on user interactions. This experience reinforces their understanding of event-driven programming and how logical conditions control gameplay outcomes.
Learning Objectives:
Understand the definition and purpose of a variable in programming.
Create and modify a variable in Scratch.
Apply basic event-driven coding (e.g., when sprite clicked) to trigger score changes.
Analyze how different actions affect game outcomes using variables.
Build confidence in using Scratch for simple game development.
.
In this interactive session, you’ll learn how to build a fun game that teaches key programming concepts—especially variables and event-driven logic. By the end of this lesson, you’ll have your very own scoring game to share with friends and family!
To begin, you’ll define the game’s rules: clicking an apple earns points (+1), while clicking a pufferfish deducts points (–1). You’ll then create visual elements like sprites and a scoreboard, and finally, write the Scratch code to control the game’s behavior—tracking scores, handling clicks, and even setting conditions to end the game.
Learning Objectives
By completing this lesson, students will be able to:
Understand the concept and purpose of a variable in programming.
Create and update a Score variable using Scratch blocks.
In this lecture, students will begin by developing the core logic for the Pufferfish vs. Apple Scoring Game. Through guided brainstorming, they will outline the rules and structure of the game—such as what actions increase or decrease the score, and how the game should respond to user input. This step encourages logical thinking and problem-solving before writing any code.
Learning Objectives
By the end of this lesson, students will:
Learn how to develop and document basic game logic before coding.
Understand and apply the concept of variables for scoring.
Use event-based programming to connect player actions with score updates.
In this lecture, we will implement our "Pufferfish vs. Apple" game step-by-step in Scratch 3.0 using simple event-based logic. Students will first create two sprites—Apple and Pufferfish—and place them at random positions on the stage. A score variable will be introduced to track the player's progress, starting from zero. Whenever the Apple sprite is clicked, the score increases by 1, and the sprite jumps to a new random location. When the Pufferfish is clicked, the score decreases by 1, and it also moves randomly. This lecture emphasizes how straightforward logic and sprite interactions can be used to build a fun and dynamic game in Scratch.
Learning Outcomes:
By the end of this lecture, students will be able to:
Create and place sprites randomly on the Scratch stage.
Define and modify a score variable in response to user actions.
Use click events to trigger sprite movements and score changes.
Develop a simple interactive game using visual coding blocks.
Understand the basics of event-driven programming in Scratch.
In this project, we will develop an engaging game titled "Apple vs. Pufferfish" using Scratch 3.0, aimed at helping students understand and apply If-Else logic through interactive game development. The game features a pufferfish character that must collect good apples while avoiding poisoned ones. Players win by collecting a target number of good apples and lose if they touch a poisoned apple.
By building on a previously developed game, students will modify and expand the logic to include win and lose conditions, gaining hands-on experience with conditional statements in a visual programming environment.
Learning Objectives:
Understand and apply If-Else conditional logic in Scratch 3.0.
Develop and implement win/lose conditions in a game.
Enhance logical thinking and decision-making through programming.
Improve familiarity with event handling, collision detection, and variables in Scratch
In this project, students will engage in the development of the "Apple vs. Pufferfish" game using Scratch 3.0, with a focus on applying If-Else logic to control game behavior. The activity begins with a brainstorming session, where students observe gameplay, discuss mechanics, and collaboratively design the game logic.
Learning Objectives:
Analyze game behavior and brainstorm logical conditions for winning and losing.
Develop a structured If-Else logic flow before coding.
In this lecture, we will implement the logic developed in previous sessions and make the game more intelligent by adding conditional checks using if-else statements. Building on the same game framework from earlier episodes, students will create and position Apple and Pufferfish sprites randomly, define a Score variable, and apply game logic where clicking the apple increases the score and clicking the pufferfish decreases it. Finally, we will introduce a Win/Loss condition: if the score reaches 10, the player wins; if it drops to 0, the game ends. This activity strengthens students' understanding of variables, conditionals, and interactive feedback in Scratch.
Learning Objectives:
By the end of this lecture, students will be able to:
Create and position sprites randomly in the Scratch 3.0 environment.
Define and manipulate a variable (Score) to track game progress.
Apply if-else logic to control game behavior based on player interactions.
Develop interactive gameplay elements that respond to user input.
Implement basic win/loss conditions to complete a simple game loop.
Strengthen their understanding of event-driven programming and logical flow in game design.
In this lecture, students will develop a fun Scratch 3.0 game titled Banana Chase: Cat vs. Bat. They will begin by setting up sprites and background, then program the cat character to collect bananas using keyboard controls. By applying if-else logic, they’ll implement collision detection to update scores and trigger effects. Students will then introduce a chasing bat enemy and use loops and motion blocks for dynamic gameplay. Finally, they’ll add sound, effects, and complete mini challenges like power-ups and level design.
Learning Outcomes
By the end of this lesson, students will be able to:
Set up and customize sprites and backgrounds in Scratch 3.0.
Use motion and control blocks to program player movement.
Apply if-else logic for collision detection and scoring.
Use variables to track score and lives.
Add basic AI using point towards and glide blocks.
Implement sound, effects, and animations for interaction.
Engage in creative problem-solving through extension challenges.
In this lecture, students will begin by analyzing the game concept, including sprites, background, and gameplay logic. They will break down the game into smaller, manageable steps and brainstorm the logic behind each part.
In this lecture, students will implement Step 1 of the game development process in Scratch 3.0 by setting up the core elements of the game environment. This includes adding and customizing the main sprites—cat, bananas, and bat—and selecting or designing an appropriate background. Students will position the sprites correctly and prepare the stage layout to establish a visually engaging and functional game scene. This setup lays the foundation for applying logic and interactions in the next steps.
Learning Outcomes
By the end of this lecture, students will be able to:
Add and customize multiple sprites for a game.
Set up and design a background for the game environment.
Arrange visual elements to support interactive gameplay.
Prepare a complete stage layout to begin logic implementation.
In this lecture, students will implement Step 2 of the game by programming the cat sprite to move using the arrow keys. They will use motion blocks and control loops to create smooth and responsive movement across the stage. This step focuses on developing interactive control using user input and refining sprite motion with continuous checks inside loops for a better gaming experience.
Learning Outcomes
By the end of this lecture, students will be able to:
Program sprite movement using arrow key controls.
Apply loops to create smooth and continuous motion.
Understand how user input controls sprite actions in real time.
Enhance player interaction by improving movement responsiveness.
In this lecture, students will implement Step 3 by adding game logic where the cat sprite earns points by eating bananas. They will use “if-else” conditions to detect collisions between the cat and banana sprites. When a collision is detected, the Score variable increases, and the banana is repositioned randomly on the screen. This reinforces the understanding of conditionals, variables, and sprite interaction in game design.
Learning Outcomes
By the end of this lecture, students will be able to:
Use “if-else” blocks to check for sprite collisions.
Update a score variable based on player actions.
Randomize sprite positions after an event.
Apply logic to make the game interactive and rewarding.
In this lecture, students will implement Step 4 by introducing a bat enemy sprite that actively chases the cat. Using the “point towards” and “glide” blocks, the bat will follow the player, increasing the challenge. Students will also program logic to reduce the player’s lives when the bat touches the cat, enhancing their understanding of sprite tracking, collision detection, and game difficulty mechanics.
Learning Outcomes
By the end of this lecture, students will be able to:
Use “point towards” and “glide” blocks to create enemy movement.
Detect collisions between enemy and player sprites.
Decrease a lives variable upon contact with an enemy.
Enhance gameplay by adding challenge through enemy behavior.
In this final lecture, students will implement Step 5 by enhancing the game with sound effects and visual animations. They will add sound cues when the cat collects a banana or is hit by the bat, and use visual effects like flashing or changing color to signal important game events. This step focuses on improving player experience through audio-visual feedback, making the game more engaging and polished.
Learning Outcomes
By the end of this lecture, students will be able to:
Add and trigger sounds based on specific game actions.
Apply visual effects like flashing or color changes upon collisions.
Enhance player feedback through multimedia elements.
Improve the overall engagement and presentation of the game.
In this lecture, students will learn how to design and develop a simple maze game using Scratch 3.0. They will create a player sprite and a maze background, program movement using arrow keys, and apply if-else logic for collision detection with maze walls. The session will also cover how to define a victory condition when the player reaches the exit and implement a restart mechanism. Through this hands-on activity, students will strengthen their understanding of game development, conditional statements, and event-driven programming in Scratch.
Learning Outcomes
By the end of this lecture, students will be able to:
Design a basic maze game layout with sprites and backdrops.
Use arrow key controls for sprite movement.
Apply if-else logic to detect collisions and define win conditions.
Implement broadcast messages and restart functionality for interactive gameplay.
In this lecture, students will first brainstorm and analyze the game structure of a simple maze challenge. They will break down the game into logical components—movement, collision, and win condition—and plan the implementation step by step. Using Scratch 3.0, students will then apply this logic to create a playable maze game by programming sprite movement, detecting wall collisions using if-else conditions, and triggering a victory message upon reaching the goal. This structured, hands-on process helps develop both computational thinking and game development skills.
Learning Outcomes
By the end of this lecture, students will be able to:
Analyze and deconstruct a game idea into logical steps.
Translate logic into Scratch blocks to create interactive behavior.
Use conditional (if-else) statements for detecting collisions and win conditions.
Apply event broadcasting to manage game outcomes like victory and restart.
In this lecture, we will stepwise develop the first stage of our maze game in Scratch 3.0. Students will design or select a player sprite (such as an arrow or character) and create or import a maze background with clearly defined walls and an exit point. This foundational setup will serve as the visual and structural base for the game. Through this activity, students will learn how to customize sprites, manage stage elements, and set up the environment needed for interactive gameplay.
Learning Outcomes
By the end of this lecture, students will be able to:
Select and customize a sprite to serve as the player character.
Create or import a maze background suitable for gameplay.
Understand the importance of sprite positioning and stage layout in game design.
Prepare the visual elements needed for movement and collision logic in the next steps.
In this episode, students will implement Step 2 of their Maze Runner project by positioning the player sprite at the entrance of the maze. This step introduces learners to coordinate systems in Scratch and reinforces the importance of setting a consistent starting point for game logic and user experience. By using the “go to x: y:” block, students will place the player at a specific location on the stage (e.g., x = -200, y = -150). This foundational skill ensures that every time the game begins, the player appears in the correct position, allowing the maze challenge to proceed as designed. Through this activity, students gain hands-on experience with spatial reasoning, positioning commands, and basic initialization practices in game development.
In this lecture, we will implement Step 3 of our maze game, focusing on programming the movement and collision detection logic. Students will learn how to use arrow key inputs to control the player sprite’s movement across the stage. They will also apply if-else logic to detect collisions with maze walls using color detection or wall sprites, and reset the player’s position upon contact. This step enhances students’ understanding of control blocks, conditionals, and real-time feedback in game interaction.
Learning Outcomes
By the end of this lecture, students will be able to:
Program sprite movement using arrow key inputs.
Detect collisions using conditional (if-else) statements.
Reset the player’s position upon touching maze walls.
Apply real-time logic to ensure smooth gameplay and prevent cheating through wall bypass.
In this final lecture, students will complete the maze game by implementing the victory condition and restart logic. They will check whether the player sprite reaches the defined exit coordinates and, if so, broadcast a "Victory" message and display a “You Win!” screen. Additionally, students will add functionality to restart the game either by clicking a button or pressing a key. This step finalizes the game loop and reinforces how events and messaging in Scratch create dynamic and interactive experiences.
Learning Outcomes
By the end of this lecture, students will be able to:
Detect when the player sprite reaches the maze exit.
Use broadcast messages to trigger a win response.
Display custom victory messages or screens.
Add a restart mechanism to replay the game using button clicks or key presses.
In this hands-on lecture, students will learn how to design and build an interactive calculator using Scratch 3.0. They will begin by creating and customizing button sprites for digits, operations, equals, and clear functions. The session will then guide students step-by-step through coding logic for each button type, including appending numbers to the display, storing operations, calculating results, and resetting the calculator. This lecture emphasizes sequential logic building, interactive design, and application of basic arithmetic operations in programming.
Learning Objectives
By the end of this lecture, students will be able to:
Design and create sprites for number and operation buttons in Scratch.
Implement logic for numeric input handling using Scratch blocks.
Develop condition-based scripts for performing arithmetic operations.
Apply event-driven programming to create interactivity in the calculator.
Reset and control variables to manage calculator memory effectively.
Enhance logical thinking through stepwise problem breakdown and implementation.
In this lecture, we will brainstorm and develop the complete logic for building a functional calculator in Scratch 3.0. Starting from analyzing the calculator's components and behaviors, we will break the problem into simple, manageable steps. Then, using Scratch’s visual programming environment, we will implement each step—from button design to handling user inputs and performing operations—creating an interactive and fully working calculator.
In this lesson, students will begin by developing the foundational logic of a calculator using Scratch 3.0. They will focus on designing the interface, which includes creating the background layout and adding functional buttons for digits and operations. This step builds logical thinking and introduces user interface concepts in a fun and interactive way.
In this lecture, we will implement Step 2 and Step 5 of our calculator development in Scratch 3.0.
? Step 1 and step 5 covers adding logic to number buttons so that each time a number is clicked, it appends that value to the display area using Scratch’s join block.
By the end of this lecture, you will have the interactive number buttons ready for the next logical steps
In this lecture, we will develop and implement Step 3 of our calculator project in Scratch.
? Step 3: Logic for Operation Buttons
When an operation button (+, -, *, /) is clicked:
Store the current value shown on the display in a variable (e.g., firstNumber).
Store the selected operation in another variable (e.g., operator).
Clear the display to allow input of the second number.
This step is essential for enabling arithmetic operations in our calculator.
In this lecture, we implemented the logic for the equals (=) button in our Scratch calculator. When the equals button is clicked, the program checks which operation was previously selected (+, -, *, or /) and performs the corresponding calculation using the stored number (num1) and the current display value. The result is then shown on the display. This step finalizes the basic arithmetic functionality of the calculator.
For More exciting AI and Cybersecurity courses visit www. aiethicalkids.com/courses
This hands-on, beginner-friendly coding course developed by a top 2 percent research scientist and professor Faisal Naeem in Canada, is designed to introduce kids to the exciting world of programming using Scratch 3.0, a visual programming language developed by MIT. Through a combination of structured lessons, guided exercises, and fun projects, learners gain foundational skills in computer science, logical reasoning, and STEM-based thinking.
Before jumping into actual code, children are first taught how to think like programmers—identifying patterns, breaking down complex tasks into manageable steps, and designing logical solutions to problems. This early focus on problem-solving helps them build confidence, resilience, and the ability to approach challenges creatively.
The course adopts a project-based learning approach that keeps kids highly engaged as they create real-world applications and interactive games. It’s designed for a wide range of learners, from complete beginners to those with some prior exposure to coding.
What students will create:
A Smart Calculator that teaches math operations and decision-making logic
A Maze Runner Game that applies events, motion, and conditionals for game logic
A Pufferfish Scoring Challenge to introduce scoring systems using loops and variables
Throughout the course, learners will master key programming concepts such as:
Loops: For repeated actions and automation
Conditional Statements: For making decisions in programs
Variables: To store and update data
Event-Driven Programming: To control how elements interact based on user input
Student Projects:
In this final year project, students will apply all the programming skills they’ve learned to design and build their own creative application, such as a quiz game, animation, or interactive simulation. They will then share their projects with peers, explaining the logic, challenges, and design process behind their work. This capstone project encourages independent thinking, creativity, and a sense of accomplishment.
Who this course is for:
Parents and teachers seeking to introduce children to foundational coding
Children ages 6–14 who are eager to learn by creating fun, interactive projects
Beginners with no prior experience in coding or game development
This course is not just about coding—it’s about building essential future-ready skills: logical thinking, creativity, structured problem-solving, and digital confidence. Whether your child dreams of becoming a game designer, engineer, or innovator, this course will help them take the first step into the world of technology.
Note: this course is intended for purchase as an adult. Those under 18 may use this course only if a parent or guardian opens their account, handles any enrollments, and manages their account usage.