In this first lecture we start by hearing from some of the greats in the technology world, and without fail they all have the same message for you. But that's just the beginning...then comes the surprise. I will introduce you to Joshua, a 12 year old who has mastered the Scratch programming environment. He will explain how he is going to teach you, together with me, how to program in MIT's famous Scratch environment. This is a unique learning approach. I have a PhD in educational technology, and Joshua is an enthusiastic 12-year old. That means you will get everything from age to enthusiasm, from context to keen insights. This is a course for everyone, 8 to 80, done in the most unique way possible!
MIT has developed one of the most amazing and powerful environments for teaching programming. Programming is complex, but MIT's Scratch strips out all the unnecessary issues and allows you to focus on learning the key aspects of programming, such as motion, control, operators, etc...and to see the results quickly. That's what makes learning in Scratch fun! In this lesson we will show you how to setup your Scratch account.
It's time to dive in to the Scratch environment. What's so great about Scratch is that you can get going quickly...but, like with all things its useful to just take a few minutes to have a look around. So, sit back and enjoy a short overview of the Scratch environment. You will find that you are very much at home in Scratch, but we want to just make sure it feels just like home!
You are about to write your first program ever! This is a moment to treasure. I can still remember the first progarm I wrote about 30 years ago...it's a great feeling. So get ready to have a moment you won't forget as Joshua shows you how to write a little program that moves a cat around the screen...let the fun begin!
*WARNING* Continuing beyond this point will be highly addictive and life-altering. Only continue if you really want to learn programming and possibly make money out of writing apps and games!
If you are watching this you have not heeded the warning in the previous lesson, and now it is too late! You are now a programmer! You have written your first program and have a cat that moves around the screen. Remember the feeling...because it just gets better and better as you learn to think and reason and create. How about a bit of cat and mouse? In this lesson Joshua will show you how to get the Cat to follow...the mouse of course!
It's time to put you in control of this game. In this lesson we will look more at Controls and Motion and Joshua will show you how to use the keyboard arrows to control where your ball moves around the screen. This is getting to have the making of a game...and you are writing it!
So far we have a ball that can move around the screen, and is controlled by the arrow keys. Let's make it a bit more fun, and at the same time learn about the pen code blocks. In this lesson you will learn how to leave a trail behind your ball as it moves...a trail that changes color too!
Hey, this game is great...but it's missing something...SOUND! A game is only going to make you millions if it's really fun, and while this game is getting there...it needs sound to make it really fun. So that's exactly what we are going to look at in this lesson. How to add some sound effects to our ball as it hits things! Turn up the sound!
It's time to bring in some more fun by adding another Sprite to our game. You know how it is - it's lonely being alone. So in this lesson you are going to learn how to add a Sprite that you will make and not only that, our ball will know that it's there. It will be like love at first touch...when they touch! Let's get learning about Sprite design and sensing.
So, up until this stage we have two sprites that move around, and when our ball comes into contact with the new sprite you created it senses it. But as you know, any really good game needs a bit more. It needs that unpredictable element - and that is what you will learn here. You will learn how to use random controls to randomly move the new sprite around...now you will see that this game is not only fun, but starting to get challenging too!
Any game that is really fun needs...an enemy. This is where this game is really going to start to test players. Not only will they be required to chase after the randomly moving Sprite 2...but at the same time they will need to avoid the enemy...a fire breathing, scary, noisy (and we mean it) dragon that is hunting you down. To do this you are going to learn about sound recording, and tracking.
Any game that you play needs to keep track of things - as do most programs. So while moving around is fun and it is fun having a dragon chasing us, what is even more fun is keeping score. This is done through somethinig called variables. Variables are containers that are empty and can hold things that are placed in them. So for example the score. To start with the score may be 0, but each time we catch Sprite 2 we want the score to go up by one. So we need a variable called score. Each time our ball comes into contact with Sprite 2 we will increase the value of the variable by 1. By doing this we have implemented a system to keep track of how well we are doing...plus you have jsut learnt something really important in programming - variables!
You have now been introduced to the important concept of variables. In this lesson we will take this a little further by adding another variable. This one will work in conjunction with the score variable and will also use controls like "If...then" and allow you to change levels in the game.
Neither Joshua nor I are that excited about math...but there are some basic math operations that are needed for programming, and these we love...because they are fun and easy. This is one of the biggest reasons to learn programming, besides the fun of it, and being able to create things, and make money...it teaches you to think logically. In this lesson we are going to look at how we can make our enemy the dragon go faster. To do that we need to introduce you to mathematic operators, and how together with our variables we can make higher levels harder.
You have written and amazing game...I can tell you something, this is a game that is fun to play and you should be proud of yourself for getting to this stage. So you need to share it with the world. Scratch provides you with a platform that you can share you game, and see other games and applications that people have developed. This is the best way to learn more and also to get ideas of where you can go from here.
A quick recap of what you have learned...and it is a lot, and then a look to the future. The future is bright...if you develop the skills based on what you have learned here...you could be the next Bill Gates or Mark Zuckerberg! Don't forget us when you are :-)
Craig is a dynamic international speaker who has been involved in business, I.T. and education for over 20 years, with his PhD speciality being in IT and learning. He has taught and inspired everyone from politicians to corporate leaders to parents to children, all around the world. In addition he has published numerous books and research papers on IT, and launched many successful businesses both offline and online.
Craig is not only pushing the boundaries of teaching and learning, he has pushed the boundaries of physical endurance having run over 30 marathons (42km/26mi), 8 Comrades Marathons (90km/56mi). For Craig, life is about living it to the full!
Craig's passion is to creatively inspire people, whether through his work with disadvantaged communities in Africa or through his seminars to international leaders. Join Craig, one of the world's foremost authorities in online learning, and not only will you learn amazing things, you will be inspired by his creative and engaging approaches.
If you want to find out more about Craig then visit his website below.
What people say about Craig
- "Craig has the rare ability to engage personally with each member in his audience" (A. Byrnes, PDM Pty Ltd, Australia),
- "Craig is a dynamic speaker, out-of-the-box strategic thinker and professional" (R. van Rooyen, Associate Partner, Deloitte)
- “Mr. Blewett is a pleasure to take in. The excitingly focused style by which he speaks keeps you on the edge of your attention.” (C. Stickney, USA)
- “Craig is an experienced and highly competent teacher and presenter. He has the rare ability to convey innovative concepts in an engaging fashion that is packed with enthusiasm but also logic and balance.” (Dr. Alleyne, UK)
- "Craig is possibly one of the most interesting presenters I have encountered. His students love him and in public forums he is unequalled." (Prof. Maharaj, UKZN, South Africa)