Overview

Welcome to our session. What follows are our essential teaching goals. The high level take away.

Layers of Abstraction

In a sense all a computer can do is store 0s and 1s, move them around, and add.

Yet the computers of today (software and hardware) are incredibly complex.

This complexity is managed by using layers of abstraction.

We will see how you can use computers creatively by designing and implementing layers of abstraction; combining simple components to build ever more complex and useful building blocks.

General Purpose Computing

The components of a Raspberry Pi are similar to those you will find in any modern device (phone, tablet, laptop, desktop...).

We focus on the concepts that can be translated to all other devices and operating systems. Android, iOs, Windows, Mac OSX, and the various Linuxes.

Tinkering

What sets the Raspberry Pi apart is that it exposes as much as possible and deliberately tries to get you to play.

It is the antithesis of the design princple don’t make me think.

The intention is to encourage tinkering in a safe environemnt that exposes far more of the innner workings than the more protected mainstream experiences that other devices provide.

You can’t break anything that can’t be fixed! If you do break something, congratulations you have done something cretive and it is a leaning opportunity awaits.

Open Source

Open source broadly means that a the author(s) grant permission for anyone to freely read, modify, and build their software or hardware designs.

Linux and GNU really speerheaded the movement. It is now quite common place. Android, a linux variant, is open source. However the majority of our devices aren’t.

This is one of the reasons why the Raspberry Pi is so accessible. There are no locked doors. How far you explore is limited only by your interest.