About
Port Tack Learning is a set of free learning pathways in computer science and robotics for middle and high school students. It is written by Eric Brown, a classroom teacher, for the students in that classroom and for any other student or teacher who finds it useful.
It is free and has no ads. I built it for my students and to make my life easier. And as a former software engineer that likes to create and polish things, I couldn’t help but publish.
Why This Site
Small tools, lessons and resources
Over the years, I’ve developed many small tools, lessons, and resources. I simply needed one place to put them.
- Pi Pico Projects
- Electronics 101
- CS50 Extra (some is mine, some is reworked content)
- Student Movies (for sub days)
- ROV Robotics (needs work)
Re-packaging Free, open-source and Creative Commons Content
- MicroPython on Pi Pico - Licensend under Creative Commons from Raspberry PI. It is more accessible to my studentes here. (Ironically, it is mostly reference after I wrote the Pi Pico Projects pathway.)
- Working in Python - Licensed under Creative Commons. This is a reworked version of Think Python for my students. Gone are suggestions to use AI to extend learning as both my school and I felt this reduces cognative struggle. And added is my own Homework and a way to copy all this to put into my own LMS.
- CS Unplugged - There are many great unplugged resources (all linked on the bottom of the main page), but I wanted them updated, categorized, and to have modern worksheets (with name, date, period) and slide decks. Plus, for some, I created ways to algorithmically create more exercises for practice and extension.
- OpenSCAD - Myself and another student use openscad to create robotic parts. After creating Python in 3D, I really wanted most of OpenSCAD but with some tweaks. This version uses the standard openscad web assembly and layers a few things on top of it.
- Logo - I wanted to prove the TurtleLab programs students wrote could run in the language that inspred TurtleLab. JSLogo is in github and licensed appropriately.
Bigger Projects
In the age of AI, bigger things are possible.
- TurtleLab was inspired by playful invention’s TurtleArt and some opensource libraries from SugarLabs. Playful invention does not have a k12 compatible privacy / license agreement, but I do. (And SugarLabs interface is too busy.) All client side, now that it is my code, I can add and fix things. And I developed and refined lessons based on experience with my students.
- Python in 3D - I teach https://academy.cs.cmu.edu/ and wanted to be able to have kids use this to generate 3D files to print. Teaching them openscad is too much, but slowly adding to CMU’s interface is not terribly difficult these days. It feels like a partial rewrite of TinkerCad’s capabilities and I’m very impressed with what AI assisted coding can do these days. I also created a sequenced set of lessons.
Found a mistake?
Lessons in several pathways have a “Suggest an edit” link at the bottom that opens the page on GitHub. You can also open an issue describing what you found. The whole site is public at github.com/porttack/learn.