When developing courses for younger students, the Raspberry Pi is an extraordinary find for teachers because it costs only $35 USD for a version B card with 512MB onboard RAM, 2 USB ports and a built in DVMI output controller. Add a video display, SD card for storage, and a keyboard and mouse and you have a fully capable Linux computer able to serve as a Media Center, web server, control system or application development platform for less than $100 USD.
Introducing students to the fundamentals of computer programming can be somewhat intimidating to teachers who may be new to the subject, or to parents trying to provide their children with early learning advantages. However, there are a number of graphical application programming tools that can make programming as easy as drag-and-drop assembly of programming elements like numerical operations, looping, branching and control over input/output.
In my post earlier this week (link), I discussed resources STEM teachers can download through the STEM Challenge website to help mentor students using tools like the Scratch, Alice and Kodu graphical application development systems. Scratch is an excellent example of this type of interface, which has been used by young children, older students and even adults in order to learn about programming. The development interface can be downloaded for free, along with a multitude of example programs that students can use to get started exploring the possibilities of programming and testing the effects of changing code values.
Scratch programming is simple and easily modified by students even under 10 years of age, provided they can read simple phrases and control labels. The development interface is capable of presenting output in the display window and programs can also output to the video display. When developing applications for Scratch on the RasPi, student programs can even affect the physical world through the Raspberry Pi GPIO interface.
Applications are even available that can directly control the GPIO interface pin digital values to help students test their electronics developments while learning about using the RasPi to control physical systems. WebIOPi is available for free download for installation on the Raspberry Pi, creating a web-accessible control that can be used in classes to demonstrate network remote control capabilities.
Some great resources are freely available for teachers interested in teaching Scratch programming (link), Scratch GPIO programming for young students (link), and educational uses of the Raspberry Pi (link). An online Raspberry Pi enthusiast magazine, the MagPi, also provides an excellent column every month on uses for Scratch on the RasPi.
I am currently assisting some of my BSA students working on their Computers Merit Badge, guiding them as they develop an open source set of software that can be used on a Raspberry Pi (RasPi) to complete the requirements to earn their merit badge. The boys intend to share this to the Instructables website once completed and I will post a link to that resource once it is available.