I’ve had my eye on the section of the Raspberry Pi forum dedicated to “bare metal” programming of the popular $35 computer platform. Bare metal programming is the practice of writing code for the CPU without an operating system (like Linux) on board. Bare metal didn’t look exactly inviting to an intermediate programmer like me, but that just changed. In this online course from Alex Chadwick of the University of Cambridge Computer Lab, you can learn how to use assembly code to write your own mini-OS for the Raspberry Pi. Going this route means basic things become quite a bit more difficult to do, but if you’re interested in how operating systems work with memory and the CPU, this looks like a great way to learn.