- Computer Systems: Building a computer system from scratch (virtually) logic gates to applications https://www.nand2tetris.org/book
- Computer Networks and Applications: An overview of network protocols and layers, basically how the internet works.
- Event-Driven Computing: How to make GUI's, state-machines, event-driven systems are used everywhere.
- Computer Graphics: Understanding how graphics pipelines and OpenGL shaders work. Building a game from scratch in C.
They might not be interesting to everyone, but I felt these were the most fun and practical in learning how computers work and how to build software.