@jakehamilton@hachyderm.io
I would (as I am now in so little spare time) work on and open up a project I have to teach and show how computers and coding work from a low level with lessons growing and teaching higher level ideas that build on the lower levels.
This includes a Fantasy Machine VM that is inspectable at the memory, register and so on levels.
Somewhat equivalent to an Apple] [e, with virtual hardware to handle display and input /output.
An initial boot-ROM that includes a version of BASIC for the machine.
Lessons would start with the BASIC learning 😉 then go into how that affects the memory, the CPU, the display.
Later have the learner write in the assembly for the machine.
Make a game, then make it's graphics, solve some (artificial but representative) speed issues, make a "library" to reuse code.
Then, make a rudimentary compiler.
The capabilities of the VM can grow to meet the need of the lessons.
Overall, a CS course as a journey though the lessons, the VM.
Allow people to share their creations.