Scratch Programming

Course Features

About This Course

Scratch is designed to be an introductory programming language for children, and its visual, block-based interface makes it accessible and engaging for young learners. Unlock your child’s creativity and problem-solving skills with Scratch programming! Designed by the MIT Media Lab, Scratch is an engaging and intuitive platform allowing children to create interactive stories, games, and animations. Through a simple drag-and-drop interface, children can learn the fundamentals of coding while having fun and expressing their imagination. Register your child or children for this program to discover how Scratch can spark a lifelong love of learning and technology while they get empowered with the tools to become confident and innovative thinkers!

Here are a few key points about learning Scratch:

  • User-Friendly Interface: Scratch uses a drag-and-drop interface, allowing children to create programs without worrying about syntax errors, which is ideal for younger learners.
  • Educational Focus: Scratch was developed by the MIT Media Lab to teach children the fundamentals of programming in a fun and interactive way.
  • Children Focused: While 8 is a common starting age, younger children may also enjoy Scratch with adult assistance or in a guided setting, such as a classroom or workshop.

Target Audience

  • Age Group: 8 – 12 years (or above)

  • Prerequisites: No prior programming experience is required. A willingness to learn and explore is all you need

Support and Community

  1. Live Sessions: Interactive classes twice a week where students can ask questions and engage directly with instructors.

  1. Pre-recorded Videos: Comprehensive weekly lessons that students can watch at their own pace.

  1. Community Forum: An online platform where students can interact, share ideas, collaborate on projects, and help each other solve problems.

  1. Tutor Support:
  • Office Hours: Dedicated time slots where tutors are available for one-on-one assistance.
  • Email Support: Students can reach out to instructors for help and clarification.
  • Feedback: Regular constructive feedback on assignments and projects to aid improvement.

  1. Parental Updates: Periodic reports on student progress to keep parents informed and engaged.

Evaluation Method

  • Weekly Projects: Students will complete small projects at the end of each topic to reinforce learned concepts.

  • Quiz Sessions: At the conclusion of each module, students will take brief quizzes to assess the knowledge they have gained and their grasp of theoretical concepts.

  • Final Projects: Students will develop a complex project of their choice, incorporating various elements learned throughout the course

Course Objectives

By the end of this course, students will:

  1. Understand the basics of programming using Scratch’s block-based coding environment.

  2. Create interactive stories, animations, and games by applying learned concepts.

  3. Design interactive educational tools that can teach concepts in subjects like math, science, or language arts.

  4. Develop computational thinking and problem-solving skills through coding exercises and projects. They will be able to break down complex problems into smaller, manageable tasks that can be coded.

  5. Create simulations that mimic real-world systems such as weather patterns, traffic lights, or virtual pets.

  6. Gain familiarity with coding structures, such as loops, conditionals, variables, and custom blocks.

  7. Collaborate with peers on projects to enhance teamwork and coding collaboration skills.

  8. Build confidence in coding and be prepared to explore more advanced programming languages.

  9. Embrace and Advance in Math knowledge and application with our mathematics clinic sessions added to the program.

  10. Gain substantial leadership, team, and general soft skills needed in every-day life, at school, at home, and various works.

Curriculum

  • Lesson 1: What is Scratch? Overview and Benefits
    Get introduced to Scratch, a visual programming language that makes it easy to create stories, games, and animations. Learn about its benefits for creative expression and problem-solving.

  • Lesson 2: How to Install and Use Scratch
    Learn the step-by-step process of installing Scratch on your computer or accessing it online. This lesson will guide you through the setup, ensuring you can start creating projects right away.

     

  • Lesson 3: Navigating the Scratch Interface
    Explore the Scratch interface, including the stage, blocks palette, and script area. Learn how to find and use the tools available to build your projects.

  • Lesson 4: Understanding the Stage and Sprites
    Delve into the concept of the stage, where your projects come to life, and sprites, which are the characters and objects in your projects. Understand how they interact within Scratch.
  • Lesson 1: Introduction to Sprites
    Learn about sprites, the characters, and objects in Scratch. Understand their role and how to select and manage them within your projects.

  • Lesson 2: Creating New Sprites
    Discover how to create your own sprites from scratch or use Scratch’s library of pre-made sprites. Start bringing your ideas to life with custom designs.

  • Lesson 3: Customizing Sprites with Costumes
    Explore how to customize sprites by changing their costumes. Learn to edit and switch between different looks to add variety and personality to your projects.

  • Lesson 1: Basic Motion Blocks (move, turn, go to)
    Get hands-on with the basic motion blocks in Scratch, learning how to make sprites move, turn, and go to specific locations on the stage.

  • Lesson 2: Using the Glide Block
    Learn how to use the glide block to create smooth, flowing movements for your sprites. Understand how timing and coordinates work together for fluid animations.

  • Lesson 3: Coordinating Movements with XY Coordinates
    Dive deeper into controlling sprite movements by using the XY coordinate system. Learn how to precisely position and navigate sprites on the stage.

  • Lesson 1: Changing Colors and Sizes
    Explore how to change the appearance of sprites by adjusting their colors and sizes. Learn to use these effects creatively in your projects.

  • Lesson 2: Switching Costumes
    Master the use of costume switches to create dynamic animations and effects. Learn to coordinate costume changes with actions for more engaging projects.

  • Lesson 3: Using Show and Hide Blocks
    Learn how to control the visibility of sprites using the show and hide blocks. Understand how to make elements appear and disappear at the right moments

  • Lesson 1: Adding Sounds to Sprites
    Discover how to enhance your projects by adding sounds to sprites. Learn to choose, upload, and attach sounds to different events in your animations and games.

  • Lesson 2: Playing Music and Sound Effects
    Learn how to incorporate music and sound effects into your projects. Understand the timing and looping of sounds to match the flow of your project.

  • Lesson 3: Controlling Volume and Tempo
    Gain control over the volume and tempo of sounds in your projects. Learn to adjust these settings dynamically for greater impact and immersion.

  • Lesson 1: Understanding Event Blocks
    Dive into event blocks, the triggers that start actions in Scratch. Learn about different events like clicks and key presses that make your projects interactive.

  • Lesson 2: Using When Green Flag Clicked and When Key Pressed
    Master the use of the “when green flag clicked” and “when key pressed” blocks to control when actions start in your projects.

  • Lesson 3: Broadcasting and Receiving Messages
    Explore how to broadcast and receive messages between sprites to coordinate complex actions and interactions within your projects.

  • Lesson 1: Introduction to Loops (repeat, forever)
    Understand the concept of loops, which allow actions to repeat. Learn how to use repeat and forever loops to create ongoing actions in your projects.

  • Lesson 2: Using Conditional Statements (if, if else)
    Learn how to use conditional statements to make decisions in your code. Understand how “if” and “if else” blocks work to create interactive and responsive projects.

  • Lesson 3: Combining Loops and Conditionals
    Combine loops and conditionals to create more complex behaviors and interactions in your projects. Learn to control the flow of actions based on conditions.

  • Lesson 1: Sensing Mouse Position and Clicks
    Explore how to make your projects interactive by sensing mouse movements and clicks. Learn to respond to user inputs effectively.

  • Lesson 2: Detecting Collisions with Touching Blocks
    Learn to use touching blocks to detect when sprites interact with each other or the edges of the stage. Use this to create collision-based effects and interactions.

  • Lesson 3: Using Ask and Answer Blocks for Input
    Discover how to use ask and answer blocks to gather input from users. Learn to incorporate user responses into your projects for personalized experiences.

  • Lesson 1: Creating and Using Variables
    Understand the concept of variables in Scratch. Learn how to create and use variables to store and manipulate data in your projects.

  • Lesson 2: Storing Data in Lists
    Explore how to use lists to store and manage collections of data. Learn to create, access, and modify lists to handle more complex information in your projects.

  • Lesson 3: Manipulating Variables and Lists
    Learn advanced techniques for working with variables and lists, including how to update, compare, and use them dynamically in your projects.

  • Lesson 1: Basic Frame-by-Frame Animation
    Get started with basic frame-by-frame animation techniques. Learn how to create the illusion of movement by changing costumes over time.

  • Lesson 2: Using the Wait Block for Timing
    Learn how to use the wait block to control the timing of animations and actions in your projects. Understand the importance of timing in creating smooth animations.

  • Lesson 3: Creating Looping Animations
    Explore how to create looping animations that repeat continuously. Learn to use loops and timing blocks together for seamless animations.

  • Lesson 1: Storyboarding Your Story
    Begin the process of creating an interactive story by storyboarding your ideas. Learn how to plan the flow, characters, and interactions for your story.

  • Lesson 2: Adding Characters and Dialogue
    Learn how to add characters and dialogue to your story. Understand how to use speech bubbles and timing to create engaging interactions between characters.

  • Lesson 3: Creating Interactions and Choices
    Explore how to create interactive elements and choices in your story. Learn to use conditionals and broadcasting to make your story dynamic and engaging.

  • Lesson 1: Designing the Maze Layout
    Start designing your maze game by creating the layout. Learn how to plan the structure, paths, and challenges for your players.

  • Lesson 2: Coding Player Movement
    Learn how to code player movement using arrow keys or other controls. Understand how to make your player sprite navigate through the maze.

  • Lesson 3: Adding Obstacles and Goals
    Add obstacles and goals to your maze game to increase the challenge. Learn how to code interactions that determine success or failure in the game.

  • Lesson 1: Introduction to Cloning
    Discover the concept of cloning in Scratch, where sprites can duplicate themselves. Learn how to create and manage clones effectively.

  • Lesson 2: Creating and Managing Clones
    Learn how to create clones during gameplay and manage their behavior. Understand how to use clones to perform repeated actions or create multiple instances of sprites.

  • Lesson 3: Using Clones in Games and Animations
    Explore how to use clones in games and animations to create complex effects. Learn to control and interact with multiple clones simultaneously.

  • Lesson 1: Setting Up a Scoring System
    Learn how to set up a scoring system in your games. Understand how to create variables that track scores and display them on the screen.

  • Lesson 2: Incrementing Scores and Lives
    Discover how to increment scores and manage player lives in your game. Learn to adjust these elements based on player actions and outcomes.

  • Lesson 3: Creating Win and Lose Conditions
    Explore how to set up win and lose conditions in your game. Learn to create rules that determine when the game ends and how to provide feedback to players.

  • Lesson 1: Understanding Functions
    Get introduced to functions in Scratch, known as My Blocks. Learn how functions can simplify your code by grouping actions into reusable blocks.

  • Lesson 2: Creating Custom Blocks
    Learn how to create your own custom blocks (functions) in Scratch. Understand how to define actions that can be reused throughout your project.

  • Lesson 3: Using Functions to Simplify Code
    Explore how to use functions to organize and simplify your code. Learn how breaking down complex tasks into smaller functions can make your projects easier to manage.

  • Lesson 1: Smooth Transitions and Movements
    Learn how to create smooth transitions and movements for your sprites. Understand techniques to make your animations appear more fluid and natural.

  • Lesson 2: Complex Costume Changes
    Dive into more advanced costume changes, allowing for detailed animations and character expressions. Learn to coordinate multiple costumes for more dynamic effects.

  • Lesson 3: Syncing Animations with Sounds
    Explore how to synchronize animations with sound effects and music, enhancing the overall experience of your projects. Learn timing techniques to make your animations and sounds work together seamlessly.

  • Lesson 1: Designing Quiz Questions
    Learn how to design engaging and challenging quiz questions. Understand how to structure questions for different types of quizzes, including multiple-choice and true/false.

  • Lesson 2: Implementing Question Logic
    Explore how to code the logic behind quiz questions, including tracking correct answers and providing immediate feedback. Learn to create a functional and interactive quiz system.

  • Lesson 3: Scoring and Providing Feedback
    Discover how to implement a scoring system for your quiz game and provide players with feedback on their performance. Learn to display scores and create custom messages based on quiz results.

  • Lesson 1: Introduction to Pen Blocks
    Get introduced to the pen blocks in Scratch, which allow you to draw directly on the stage. Learn the basics of using these blocks to create simple drawings.

  • Lesson 2: Drawing Shapes and Patterns
    Learn how to use pen blocks to draw various shapes and patterns. Explore different techniques for creating intricate designs and repeating patterns.

  • Lesson 3: Creating Interactive Drawing Tools
    Explore how to create interactive drawing tools, like digital paintbrushes, using pen blocks. Learn to add user controls for a more engaging drawing experience

  • Lesson 1: Modeling Physical Systems (e.g., Gravity)
    Learn how to model physical systems, such as gravity, using Scratch. Explore how to simulate real-world physics in your projects for a more realistic effect.

  • Lesson 2: Creating Simulations (e.g., Traffic Lights)
    Discover how to create simulations of real-world systems, such as traffic lights or weather patterns. Learn to use logic and control blocks to accurately represent these systems.

  • Lesson 3: Adding Interactivity to Simulations
    Explore how to add interactivity to your simulations, allowing users to engage with and influence the system. Learn to incorporate user input and feedback into your models.

  • Lesson 1: Common Scratch Errors and Fixes
    Learn about common errors that can occur in Scratch and how to fix them. Understand the typical issues you might encounter and how to troubleshoot them effectively.

  • Lesson 2: Debugging Techniques
    Explore various debugging techniques to identify and resolve problems in your Scratch projects. Learn to use Scratch’s built-in tools to find and correct errors.

  • Lesson 3: Testing and Iterating Projects
    Discover the importance of testing and iterating your projects. Learn how to test your code, gather feedback, and make improvements to ensure your project works as intended.

  • Lesson 1: Preparing Projects for Sharing
    Learn how to prepare your Scratch projects for sharing with others. Explore how to package your projects, add descriptions, and ensure they are ready for presentation.

  • Lesson 2: Using the Scratch Community
    Discover how to share your projects within the Scratch community. Learn how to upload your projects, interact with other Scratch users, and receive feedback from peers.

  • Lesson 3: Presenting Projects to Peers
    Explore how to present your Scratch projects to others, whether in a classroom setting or online. Learn techniques for effective presentation and how to showcase your work confidently.

  • Lesson 1: Planning the Final Project
    Start planning your final project, whether it's an interactive story or game. Learn how to outline your project’s goals, structure, and key features.

  • Lesson 2: Developing and Refining the Project
    Work on developing your final project, refining it through iterative design and testing. Learn how to troubleshoot issues, polish your work, and ensure it meets your vision.

  • Lesson 3: Showcasing and Receiving Feedback
    Present your final project to an audience, showcasing your skills and creativity. Learn how to receive and incorporate feedback to further improve your work.

Animated Short Film

Create a short, animated film with characters, dialogues, and scenes. Participants can focus on storytelling, character development, and animation techniques.

Applicable Skills:

  • Storytelling and Narrative Development: Crafting a coherent story with a beginning, middle, and end.
  • Character Animation: Creating and animating characters using motion and looks blocks.
  • Dialogue and Text Display: Using speech bubbles and text blocks to present dialogue.
  • Scene Transitions: Switching backgrounds and scenes smoothly using broadcast messages and looks blocks.
  • Synchronization: Timing actions and events to create a seamless animation experience.
  • Interactive Educational Tool

Interactive Educational Tool

Design an educational tool that teaches a concept (like math, science, or language) using interactive elements. This project can include quizzes, drag-and-drop activities, or animated explanations.

Applicable Skills:

  • User Interaction: Implementing clickable buttons and interactive elements using event blocks.
  • Quiz Logic: Using conditional statements and variables to track correct/incorrect answers.
  • Drag-and-Drop Mechanics: Detecting collisions and using mouse position sensing for drag-and-drop activities.
  • Visual Feedback: Changing sprites or backgrounds based on user actions, such as showing correct answers.
  • Dynamic Content: Using variables and lists to manage and display educational content.

Virtual Pet

Code a virtual pet that players can interact with, feed, play with, and take care of. The pet could respond to different inputs and change its behavior based on how it's treated.

Applicable Skills:

  • Behavioral Programming: Coding different behaviors for the pet based on user interaction using event and control blocks.
  • Conditional Logic: Implementing if-else statements to change the pet's mood or status.
  • Animation and Looks: Using costume changes and animations to visually represent the pet's emotions and actions.
  • State Management: Tracking the pet's status (e.g., hunger, happiness) using variables.
  • Interactive Elements: Adding buttons and controls to interact with the pet.

Music and Sound Mixer

Build a music mixer where users can combine different sounds, beats, and melodies to create their own music tracks. Participants can focus on sound blocks and interactive interfaces.

Applicable Skills:

  • Sound Blocks: Using sound blocks to play different beats, melodies, and sound effects.
  • Timing and Loops: Synchronizing sounds using wait blocks and repeat loops.
  • User Interface Design: Creating interactive buttons and sliders to control the music mixer.
  • Event Handling: Using broadcast messages to trigger different sound combinations.
  • Creative Expression: Experimenting with different sound combinations to create unique music tracks.

Puzzle Game

Develop a puzzle game with different levels of difficulty. This could involve solving mazes, matching patterns, or arranging pieces to complete a picture.

Applicable Skills:

  • Game Logic: Implementing puzzle rules and mechanics using conditionals and loops.
  • Level Design: Creating multiple levels of difficulty using different stages or costumes.
  • Collision Detection: Using sensing blocks to detect correct/incorrect puzzle piece placement.
  • User Feedback: Providing visual or auditory feedback for correct or incorrect moves.
  • Score Tracking: Using variables to track progress or score as players solve puzzles.

Space Adventure Game

Create a space-themed adventure game where players navigate a spaceship through obstacles, collect power-ups, and complete missions. This project can involve more complex movement and collision detection.

Applicable Skills:

  • Advanced Movement: Implementing complex movement mechanics like smooth gliding, rotation, and acceleration.
  • Collision Detection: Using sensing blocks to detect collisions with obstacles, enemies, or collectibles.
  • Game State Management: Tracking player progress, health, and collected items using variables.
  • Level Design: Creating different stages with increasing difficulty, incorporating space themes and obstacles.
  • Interactive Storytelling: Using broadcast messages to advance the storyline and missions.

Virtual Art Gallery

Build a virtual art gallery where users can explore and interact with different artworks created using Scratch's drawing tools. Participants can focus on creating visually appealing animations and transitions.

Applicable Skills:

  • Drawing Tools: Using pen blocks and the drawing editor to create custom artworks.
  • Navigation and Interaction: Creating buttons and controls for users to navigate through the gallery.
  • Animation Techniques: Using motion and looks blocks for smooth transitions between artworks.
  • Interactivity: Adding interactive elements, like zooming in on artworks or displaying information.
  • Design and Layout: Organizing the gallery with visually appealing arrangements and background changes.

Choose-Your-Own-Adventure Story

Code an interactive story where the reader makes choices that influence the outcome. This project is great for combining narrative writing with programming logic.

Applicable Skills:

  • Narrative Logic: Using conditional statements to branch the story based on user choices.
  • Dialogue and Text Display: Presenting story options and text using looks blocks.
  • Scene Management: Switching backgrounds and scenes based on user choices.
  • Variable Tracking: Using variables to track the reader's choices and influence the story outcome.
  • Interactive Elements: Implementing clickable buttons for the reader to make choices.

Dance Party Animation

Create an animated dance party with different characters performing synchronized dance moves to a soundtrack. Participants can experiment with timing, choreography, and sound synchronization.

Applicable Skills:

  • Choreography and Timing: Synchronizing character movements to a beat using loops and wait blocks.
  • Sound Synchronization: Timing dance moves to match the soundtrack using sound blocks.
  • Character Animation: Creating dance animations using motion and looks blocks.
  • Event Handling: Using broadcast messages to coordinate actions between multiple characters.
  • Visual Effects: Adding special effects, like lights or confetti, to enhance the dance party.

Weather Simulation

Simulate different weather conditions like rain, snow, and thunderstorms using Scratch. The project could include changing backgrounds, sound effects, and interactive elements.

Applicable Skills:

  • Background Changes: Using looks blocks to change backgrounds to represent different weather conditions.
  • Animation Techniques: Animating weather elements like rain, snow, and lightning using motion blocks.
  • Sound Effects: Using sound blocks to add realistic weather sounds like rain or thunder.
  • Conditional Logic: Implementing logic to change weather conditions based on user input or time.
  • Interactive Elements: Allowing users to select different weather conditions or simulate weather cycles.

Please note the following:

  1. As deemed necessary, the curriculum outlined above may undergo further modifications, including additions or deletions. Regardless of the situation, these changes are intended to better fulfil the objectives of the program.
  2. The extra-curricular activities/sessions (e.g. leadership, soft skills, mathematics clinic sessions, etc.) are embedded across the learning path. Every session will be announced ahead.
  3. These projects not only help students apply what they’ve learned but also allow them to express their creativity and build a portfolio of work that they can be proud of. We shall also provide the necessary project guidelines to each student and as well monitor their progress and help them with their challenges in appropriate and essential ways.

Certification

Participants who successfully complete the Scratch Programming course will be awarded a certificate of achievement. This certificate formally recognizes the skills and knowledge acquired in Scratch programming, demonstrating the participant’s capability to craft interactive stories, games, and animations. To earn this certificate, one must complete all course modules and tasks, achieve the passing mark on quizzes, and submit an end-of-course project that passes assessment and approval.

Requirements

FAQs

Our extracurricular activities encompass a variety of training workshops aimed at providing students with an advantage beyond the standard course curriculum. Participants in these workshops will develop leadership abilities and essential soft skills, which are crucial for success in their immediate surroundings, including home, school environments, and social settings.

These workshops are typically scheduled for weekends, with dates distributed throughout the program's duration and announced according to schedule. Similar to regular live classroom sessions, these workshops are recorded for later reference and participants are allowed to interact freely with their peers and facilitators.

While the course includes live classes twice a week, students have daily access to the learning portal and learners' community. Here, they can reach out to our readily available online tutors via email for support. Additionally, they can connect with tutors through the learners' community or use the designated spaces in the learning portal to post support requests.

On specific days of the week, we provide general tutoring for students on subjects and topics relevant to their classes/grades. For this, participants are organized into communities based on their class levels.

The details we gather through the application form help us in making important decisions as regards this matter as well as other program operations and activities.

  1. Click on "Join Course" or use the "Enroll in this course" button below.

  2. Fill out the application form and submit it. An email will be sent to you to confirm the application and provide you with your login details, payment options, and other essential information.

  3. Make payment for the course via the available channels provided.

  4. Once your payment is received, you will be granted an access to the chosen course and an email will be sent to you containing the course access details and any other relevant information.

If you cannot access the course within 24hrs, please contact us via sales@emostelacademy.org or (via SMS, WhatsApp, or Phone Call) at +2349077471007, +2348141897754.

You have the option to make a single payment of ₦100,000 for the course or opt for a monthly payment of ₦20,000 for 6 months.

With the monthly plan, access is automatically revoked every 30 days from the date of the last payment unless the subscription is renewed. 

For requests/orders, transaction issues, or further assistance regarding your payment, please contact us via sales@emostelacademy.org or (via SMS, WhatsApp, or Phone Call) at +2349077471007, +2348141897754

Each course you enroll in will appear in your personal learner's portal and can be accessed via the "My Courses" tab on your dashboard.

You will receive your login details in the course access email.

We have pre-recorded sessions (released weekly) and are supported by live sessions (which are held twice a week).

Every live session is recorded and then posted to the learners' portal. This would be useful for anyone who missed the class to access them later. The recording also aids in further learning and revision.

Apart from the recorded and live sessions, we add our learners to communities based on their courses, allowing them to interact with course instructors, community moderators, and fellow learners, who are always available to help with any issues relating to the course. Learners may also directly contact their instructors via email and other communication channels provided.

For a more personalized experience, you may subscribe to our Private Training Services. This is however optional, it comes at an extra cost and is based on request.

This course is designed to be covered within three months. However, we cater to children with diverse learning abilities and preferences, tailored to their unique personalities. Therefore, we provide an extended duration that allows for comprehensive learning and practical application of the material.

Yet, we commit to giving each student's needs the highest priority to ensure they achieve excellence in the most efficient time frame possible.

Access to the course will expire six months after release, but technical support for participants will be available for 12 months.

This 12-month technical support applies solely to the chosen iCode course. Tutoring for school assignments and extracurricular activities is available only during the six-month access period.

We encourage you to sign up for more courses after completion to expand your knowledge and retain the advantages and support associated with each iCode course. Alternatively, you can opt for monthly payments or a one-time six-month access fee to continue access to perks and benefiting from our tutoring support for your school and homework.

For further inquiries, please contact us via our helplines or at study@emoselacademy.org

Please visit https://emostelacademy.org/faq for more frequently asked questions regarding our mode of class delivery and other relevant information, or contact our support team via email: support@emostelacademy.org

If you wish to learn more about us (who we are, where we are, what we do, etc.), please Click Here

Share This :

Smile out after every paper.
Click the button below

NOUN Student writing exam?