I am in the process of developing a new course focused entirely on Raspberry Pi. The goal is to make it a summer-school elective equivalent to one semester (i.e. one class meeting over the summer == one week of class during the school year). The course is in its beginning stages, but my goal is to essentially make a "textbook" out of Raspberry Pi. The course is to make it project-based and hands-on and to work my way from the ground up assuming no prior knowledge of programming.
Here is my current course outline:
- Unit 0: Computational Thinking with Scratch
- Unit 1: Programming as Art with Processing and Sonic Pi
- Unit 2: Programming in Python
- Unit 3: Hacking Minecraft with Python
- Unit 4: Learning the Command Line
- Unit 5: Intro to OOP with Greenfoot and BlueJ
I am confident in starting with Scratch, Processing, and Sonic Pi and concluding with OOP. However, I am unsure of the order of Units 2-4.
Does it make more sense to introduce the Linux command line (and the shell/scripting in general) before Python or after Python?