FROM NAND TO TETRIS
FROM NAND TO TETRIS is an opensource computer course that teaches you everything ever wanted to know about computers but no one could explain to you. It takes you from the logic gates to their implimentation to coding machine language to os programming to virtual machine programming to game programming and if you let it. It will even take you beyond that.
Because many CS students don’t understand how computers work; because fewer and fewer students take compilation courses; because many computer architecture courses are too detailed and too dry; because nothing beats the thrill of creating something from almost nothing; because Nand2Tetris engages students in implementing some of the coolest algorithms, data structures and techniques in applied computer science, and because the typical student feedback in Nand2Tetris courses is “the best course I ever took”.