Free coding workshops for kids and teens. Meeting the first and third Saturdays of the month at the Denver Public Library's ideaLAB (central branch). www.coderdojodenver.com
The absolutely amazing Modular Robotics partnered with us to deliver the first in a four part robotics series for our 7-11 age group this morning.
The Robot Investigators will go from snapping together simple Cubelet blocks, to understanding the functions and forms of robots. With Cubelets, these students will begin to understand the engineering process, how to solve problems by making things, and the basics of programming and computational thinking.
When a veteran 7 year old Coder Ninja's father picked him up this afternoon and the father asked how the dojo went, the boy responded eagerly "this was an amazing experience dad!". Ahhh! How do you top that?
Today was inspiration. I am consistently shocked and amazed by the caliber of the kids that set foot into our dojo. I set out on this mission to share the joys and adventure of science and technology with the heirs of Colorado, America, and Planet Earth. The validation of this mission is reinforced exponentially with each subsequent dojo session.
"Software engineers shall act consistently with the public interest", this is the first principle of the Software Engineer's Code of Ethics*. We, as a people, must make it our mission to put the proper tools into the hands of our children and empower them to confidently face that which lay ahead.
*(http://www.acm.org/about/se-code)
You can register for upcoming CoderDojo sessions and other sessions in this series on EventBrite.
So we wrote a bunch of JavaScript using the very handy enchant.js library, and at the end we had a video game that looked more or less like this.
If you want to see what it was like, you can do the workshop yourself right now. Download and extract this zip, and then follow these slides to fill in the missing code. (You can use any text editor to edit js/main.js, and any browser to view index.html. We used Notepad++, because it's great, and Chrome, because it's great too.)
Or, you can fork it here on the very cool code.9leap.net and work on it in your browser.
Mobile games are awesome, but making them can be challenging. Different platforms (iPhone vs Android) have different requirements and different languages to learn. And sometimes getting your game/app listed in the app store is difficult too. Writing in JavaScript is awesome because you can skip all that. Just make something that works in the browser, and you have something infinitely cross-platform.
> This lesson will teach you the basics of game programming and animation coding techniques in Scratch.
> If you'd like to see what you will be building, click here: http://scratch.mit.edu/projects/41564458/
> Click here to begin programming: http://scratch.mit.edu/.
> Click 'Join Scratch' in the top-right corner of your browser's window.
>> Enter a 'Username'. One that is not your real name.
>> Enter a password twice and remember it or write it down.
>> Navigate to the next screen and enter your personal information.
Create a New Project
> Click the 'Create' button on the navigation bar at the top-left of the browser window.
> You can change the title of your project by editing the text field above the Cat.
Choose a Sprite (Character)
> If you want to start with a new sprite you can delete the Cat sprite by right clicking on it and then selecting 'Delete'.
> To create a new Sprite that comes with Scratch, click on the pixie on the 'New sprite' toolbar.
> I like to use a sprite that has several costumes. In this tutorial I am using 'Giga walking' as my main sprite. To see the sprites costumes, create a sprite and then select the 'Costumes' from the top-center of the window.
> Select a new sprite and then click 'OK'.
Choose a Background
> Select the icon with the mountains and sun from the 'New backdrop' toolbar to select a new background that comes with Scratch.
> Alternatively, by selecting the other icons, you can paint or upload your own background, or take a new picture and import it as a background.
Draw a Sprite or Background
> Select the paintbrush icon from the 'New sprite' menu.
> You can now create a new sprite by using the tools of a familiar paint program.
Moving a Sprite (Character)
The script you will build:
> In the sprite menu select the sprite you wish to animate.
> Select the 'Scripts' tab from the top-center of the window. The various buttons below the scripts tab describes the different types of coding blocks you are able to use. The color of the code blocks match the color of these buttons.
> Build the script above for your sprite by using 'Events', 'Looks', 'Motion', and 'Control' blocks.
> Test out your awesome code by pressing the 'right arrow'!
Challenges left for the reader:
Make your sprite to move LEFT when you press the 'left arrow' (hint: negative numbers)
Make your sprite to move UP when you press the 'up arrow' (hint: the 'Move x by' block moves us left and right, another 'Move by' block will move us up and down.)
Make your sprite move DOWN when pressing the 'down arrow'
Make your sprite jump when you press the 'spacebar'
Detecting When a Sprite Bumps Into Something
The scripts you will build:
> The 'forever' block, which is a 'Control' block, allows us to do things over-and-over again forever. This allows us to check things as our program runs.
> The 'if' block, which is a 'Control' block, allows us to do the checking, in this case for touching 'Creature1'.
> Create a new sprite, 'Creature1'.
> Select your initial sprite and click the 'Scripts' tab.
> Build this script using 'Event', 'Control', 'Motion', 'Sensing', 'Sound', and 'Looks' blocks.
> Click the green flag next to the project title at the top of the window.
> Move your sprite to bump into Creature1 and see the magic of your codes unfold!
Challenges left for the reader:
Make your sprite grow to enormous sizes when it collides with another sprite.
Make your sprite jump and do a backflip when you press the 'spacebar'.
Remix the http://scratch.mit.edu/projects/10128515/ project. Add a new sprite that explodes when the ball hits it.
If You Wonder How To Do Something
> Ask a friend near you how they did something in Scratch. Secrets don't make friends, but sharing coding secrets does :)
> Search the Scratch wiki http://wiki.scratch.mit.edu/wiki/. Here you can find information on topics from 'How to Build a Game', to 'How to Remix a Project', to 'Graphic Effects'.
Keep It Up
> Coding takes lots of practice and it can feel very hard at times. Keep at it and keep coding with friends. You can be really really good at this.