Beginners/Intermediate Scratch – Challenge 13 – Learn about the Raspberry Pi

CDA-S2-Challenge13-RaspberryPi-Demo

This week in CoderDojo Athenry, the other streams joined us at the start, as we began with a demo of the Raspberry Pi, a really interesting low-cost computer that has been brought out in the last year. It only costs about €30 for a basic one, to which you add a power supply (many mobile phone ones work on it), an SD card (instead of a hard drive), a keyboard and mouse, and connect it to your TV to get started.

We saw it running Scratch and Python programs, and a couple of them were passed around the room for everyone to examine.

We took the opportunity to learn about the main components in a desktop PC: how to identify them and what the function of each one is. We also saw the equivalent components in the Raspberry Pi.

After that, we returned to Mesh networking and the Chatty program that we started a couple of weeks ago, that not everyone had finished.

Here are my notes from the day (PDF format): CDA-S2-Challenge13-RaspberryPi-Demo.pdf

Ninjas who had finished the Chatty program and wanted to do more did work on a 2-player Rock-Paper-Scissors program. We didn’t have notes for this, but I showed the code and it is posted here: http://scratch.mit.edu/projects/cdathenry/3077050  (This is code for one of the players. Similar code is needed for the other one.)

If you would like a copy of my slides in PowerPoint format, get in touch via Twitter or the comments.

Intermediate Scratch – Challenge 12 – 2-Player Network Guessing Game

CDA-S2-Challenge12-2Player-GuessingGame

This week in CoderDojo Athenry, we continued to play with networking in Scratch.

As we learned last week, you can set up a Mesh network in Scratch so that Scratch programs running on two different computers can exchange information with each other. This week, we used those ideas in combination with our simple guessing game from Challenge 2, to create a 2-player network guessing game.

Since we have new members who have just joined us in the past week, they could focus on the one-player version while more experienced members could work on the networking aspect.

The big ideas behind this challenge were:

  1. Design of a 2-player game (need two programs with different roles and different code)
  2. Communications on the network using variables
  3. Broadcasts across the network
  4. Loops and Decisions: fundamental coding concepts

Here are my notes from the day (PDF format): CDA-S2-Challenge12-2Player-GuessingGame.pdf

Here are my versions of the game for both players:

  • GuessNumberNetwork: this is the one that plays the ‘guess a number game’ when the other one (the ‘boss’) chooses the number
  • GuessNumberNetwork-Boss: this is the one that allows you choose the number and then communicates with the other one that plays

Note that you must download these (they won’t run on the Scratch website) and enable Mesh networking as described in the notes for them to work.

If you would like a copy of my slides in PowerPoint format, get in touch via Twitter or the comments.

Scratch Advanced – Week 13 – Gravity and Speed

What are we going to do this week?

  • Gravity
  • Speed
  • Momentum

We are going to look at Gravity and how it works here on Earth. We will also be looking at how, when you travel fast enough, you can appear to defy Gravity, this is how Satellites stay in orbit around the Earth.

We will also take a look at momentum and how things behave once they are moving.

And in order to demonstrate the effects of Gravity,  we will build a Spaceship Game, were you have to launch yourself into Orbit.

Depending upon how we get on this may run over two weeks.

Now back to Gravity. If you  want to get all smart, there is a very clever equation that Sir Issac Newton came up with back in 1687. But we won’t go there for now.

Gravity is basically a force of attraction and the closer you get to something the stronger that force is, also the bigger somehting is the more gravitational force it will have.

It’s a very small force, it takes the whole of the planet Earth to hold us down.

So how are we going to show this in Scrartch, well we will start with a Rocket on the Earth, that we have to Launch upwards, Rockets produce Thrust, which pushes them up into the air. The Earth has Gravity which is trying to pull the rocket back down, but the further you travel away from the Earth the weaker the Gravity and so the Less Thrust you need.

I think I just spotted three Variables there…

1. Thrust

2. Gravity

3. Height

They might come in useful in our program.

We are going to try and build a Scratch Game that will launch a rocket into orbit. This mioght take us a couple of weeks, but should be good fun.

So lets try and write down the rules that we need the Game to obey:

1. Pushing the up arrow should fire the rocket and get us moving.

2. If we stop firing the rocket then gravity will start to pull us back down

3. The higher we go the less Gravity can pull us back down.

4. If we travel fast enough, it can make us appear to defy Gravity, that’s how satellites stay in orbit, and the Moon for that matter. But we will leave this out to start off with as it can start to get really complicated 🙂

To start us off I found a Lunar Lander Game that has some of the elements that we need, this will be a good starting point to  get us going.

To start off we only need a simple sprite, a ball with two legs, that should do for our rocket 🙂