ABOUT THIS COURSE
Learn the basic concepts, tools, and functions that you will need to build fully functional projects with the visual programming language, Scratch.
Build a strong foundation in Scratch and visual programming with this tutorial for beginners to intermediate learners.
Building code using command blocks
Using the coordinate system
Real-life project examples
Content and Overview
Suitable for students age 7+, teachers, and parents who want to teach the fundamentals of visual programming to their children. Each section includes exercises, so you’ll be able to put your newly learned skills to immediate use. This is NOT a lecture about every single block in Scratch with a boring explanation! It challenges the user by going through real-life examples.
Starting with the installation of the free Scratch program and Adobe Air, this course will take you through the basic understanding of the coordinate and rotation system, motion and sensing, and character (sprite) manipulation. With the basics mastered, the course moves on to more advanced subjects including logic controls (if/then/else and forever loops), serial and parallel processing and dynamic interaction between sprites. By creating detailed projects, you’ll establish a strong understanding of programming concepts and how they work in Scratch. Upon completion of the course you will have the knowledge to create your own video games, educational tutorials, and presentations using Scratch. This is great for students who want to create powerful visual aids to complement an oral presentation or book report.
Why take this course instead of another?
Most importantly, my extensive programming background and knowledge of Scratch means that I know a LOT about the subject. And my teaching background means that I am able to pass this knowledge on to you in an easy-to-understand format.
This course contains more content and goes deeper into practical examples than others. It’s a great combination of practice and theory to help get you off and running your own project right away.
The step by step examples are key to understanding programming fundamentals – I don’t just teach you how to use Scratch, I teach you how to understand what you need to know to program on your own.
Unlike all the other Scratch videos available, this is NOT just a screen recording – this course contains detailed notes and diagrams within the video to enhance your learning and to help you remember key points throughout the course.
Who is the instructor and how knowledgeable are they?
Hi, I’m Santanu Das and I’ve been programming for over 25 years in C++, C, FORTRAN, Java, and others. As a teaching assistant, I taught C++ at MIT (where Scratch was created) to some of the most brilliant students in the world while getting my degree in engineering. Currently, I manage over 800 software developers at one of the largest private software companies in the world. Over the past few years, I have been teaching a Scratch class to 3rd graders at my son’s elementary school so I have firsthand experience on common stumbling blocks while learning Scratch. I teach Scratch because I want to encourage young people to improve their logic and decision making skills, to encourage STEM in the classroom, and to help people understand the creation of the video games that they play. I believe that programming builds a solid foundation for many other disciplines, including music and liberal arts, as well as science, technology, engineering and math. I DON’T teach the class for additional income. The course fee goes to producing more Scratch tutorials and funding local STEM Grant programs for schools throughout the US. Whether you want to be an engineer, a doctor, an accountant or an educator, Scratch strengthens your decision making, organizational and math skills at any level.
WHAT'S IN THE COURSE?
Over 27 lectures and close to 2.5 hours of content
Explains the fundamentals of programming, command blocks, and the coordinate system, essential knowledge you will find makes it much easier to create your projects
I explain how to overcome common obstacles that users encounter, by making mistakes as we go and going back to fix them as you follow along.
You will have a great understanding of how to use both basic AND advanced programming blocks and commands
Contains 4 great project examples that can be used to build almost any type of video game/app
Students must have a PC or a Mac. Scratch is not yet supported on tablet devices.
Install the free Scratch software onto your computer and you are ready to go. Adobe Air (a free plug-in) is also required, and installation instructions are provided.
WHO SHOULD ATTEND?
This class is not just for people who are interested in computer programming – it’s for anyone who would like to sharpen their logic and decision-making skills.
Of course, if you are interested in computer programming and want to learn the fundamentals, take this course! It is geared for ages 7+ (second graders and up). It is a great introduction to programming/coding for students of all ages.
This course is also a great primer for teachers who would like to teach programming and have their students submit Scratch projects as part of their curricula. Includes example of how kids can use Scratch to create a unique ‘visual aid’ for a classroom project. This course is used at local elementary schools to teach students Scratch.
Perfect for kids who want to learn how to create their own video games, and parents who want to learn how to assist their kids in building their programming and coding skills.
Learn the difference between the online and offline Scratch editors with step by step instructions on how to download them with sample projects
Understanding how Sprites are created including using the built-in library, the drawing editor and previously created images.
Learn how the X-Y axis system in Scratch works along with how to rotate sprites correctly. This is an IMPORANT lecture as all projects involving movement and rotation depend on a thorough understanding of these principles.
We will introduce the concept of blocks, go over different block categories (Motion, Sensing, etc) and put together a small example to see how a Sprite moves and communicates.
Understanding how to use parameters in blocks to create custom commands
Setting up two sprites (a character and a wall) and experimenting with several motion blocks.
Using looping blocks to repeat commands that require iteration (e.g walking a sprite)
Understanding decision blocks like "if-then-else" statements and introduction to sensing blocks used to interact with other sprites.
Changing costumes for a sprite so a sprite can express itself differently depending on the situation
We will explain the rules of the maze game and what we will attempt to accomplish with our Scratch project.
Learn how to use the in-built drawing editor in Scratch to create your own custom sprites.
Learn how to make your sprites interact and respond to keyboard commands
Understand how sprites can sense and react to one another through Sensing blocks
Add a timer variable and report the time it took the user to navigate through the maze
We will explain what the two sprites will do in this project and assign some constraints.
Learn how to use the Ask block to engage the user in your Scratch project. Also, the concept of temporary vs permanent variables will be introduced to store the responses to the Ask block.
Learn what variables are and how they can store data that can be used throughout a project. Differences between a temporary and permanent variable is explained as well as how the value of variables can be used by various sprites.
Detailed example of broadcasting is explained so the student can understand how sprites know when to "do something" or when another sprite has asked it to perform some action.
Learn how to combine fixed phrases or sentences with variables to make a dynamic sentence depending on the value of the variable.
Using Boolean operators and mathematical expressions like + and - to calculate the age difference between the two sprites and then reporting it
The rules and constraints of the bug catcher game will be introduced. Students will learn about the concepts of cloning, modifying the values of a variable and parallel vs serial programming.
Pick out the frog and bug sprites, choose a background and learn how to modify backgrounds dynamically.
A detailed discussion on cloning will explain how to create multiple sprites and set them up as they are "born". Also, the relationship of the clone with the parent will also be discussed.
Learn how random number generators work in Scratch along with using random numbers as input to motion blocks like gliding or moving.
Learn how to change the value of a variable and have the frog sprite report it.
Learn how to abruptly stop the game when dynamic actions are being performed
Final pointers, contact information and a URL to my studio where you can see some more advanced projects if you want to go to the next level!
Santanu Das received his Bachelor’s Degree in Civil Engineering from the University of Southern California in 1995 (graduating the top of his class) and was awarded a full graduate scholarship to the Massachusetts Institute of Technology where he taught numerical methods and object-oriented programming (C and C++) to engineers. After college, Santanu worked in the finance industry and in particular, the options market.
In 1998, Santanu joined Research Engineers International as a senior programmer and helped transform the world-renowned STAAD structural line of products into an open architecture platform where other applications could seamlessly integrate. As the company grew, he was responsible for setting up direct sales offices in Southeast Asia and helped create a large reseller channel to take the STAAD product line global in addition to setting up private, authorized training centers. Sales grew from $3MM/yr to $9MM/yr during this transition.
In 2001, Santanu helped start a new document collaboration and ASP (Application Service Provider) company for engineers called Web4. This company was strategically positioned to help automate an engineer’s workflow including managing RFIs, change orders, clash detections, markup, document revision and management and real time Web-based collaboration. Web4 was aimed at mid-sized discrete manufacturing companies looking to implement a web-based PLM solution. In 2002, Santanu merged Web4 with Research Engineers (then a public company) and became the new Chief Operating Officer. The company was renamed to netGuru, a publically listed company on the NASDAQ. At its peak, netGuru generated over $40MM in revenues and was involved in IT services, document management, engineering analysis and VoIP services to India.
After selling Research Engineers to Bentley Systems in 2005 and Web4 to another public company in 2006, Santanu currently serves as Senior Vice President of the Design and Simulation group where he helps manage over $300MM in revenues. In his spare time, Santanu teaches Scratch programming at local schools where his kids attend and hosts some killer Scratch parties from time to time!