Nand2Tetris is a very interesting course that steps you all the way from simple logic gates up to an operating system. One of my sons is taking the course this semester, so I decided to shadow the assignments and ended up having a lot of fun.
I've posted a video on Vimeo of an implementation of Conway's Life for the Hack machine.
You can find the source code here. Enjoy!