Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

The Elements of Computing Systems: Building a Modern Computer from First Principles by Noam Nisan and Shimon Schocken

Basically it has you hands on work through the basics of every concept active in a modern computer save for networks and web.

You use software tools provided with the book to design memory, ALUs, intepreters, VMs, compilers Operating Systems and applications.

Available as a free online class at http://www.nand2tetris.org




10 years in my to-read pile and going strong.


I empty my inbox periodically -- no reason to keep unread stuff around.


Working through the class on Coursera now, and it's a lot of fun. https://www.coursera.org/learn/build-a-computer


I wonder if, in that same spirit, it's possible to make building, together , a complex microcontroller , a fun project ?



That classes basically builds a microcontroller. It's Harvard Architecture with a split iROM and dRAM. Simple ALU, 16 bit CPU. You'd need one hell of a bread board to physically build it, though.


I'd definitely recommend TECS for folks looking to learn more about the many layers of abstraction sitting under their interpreter/VM. Also worth taking a look at the Little OS Book or the OSDev wiki for some more insight into a less idealized/more crufty architecture.

I wound up spending the most time playing around with chapter 9 (the Tetris part of Nand to Teris) and made a very basic ray-casting game a la Wolfenstein 3D: https://youtu.be/c-J7lwKWDN8




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: