Live data from Hacker News

The Joy of Nand2Tetris

tristanrhodes.com

1–10 of 43 posts

Re: The Joy of Nand2Tetris

#2
Many years ago I worked through The Elements of Computing Systems. It was the single most impactful experience in my computer learning journey. The book and exercises are a rare piece of pedagogical genius I am grateful to have encountered.

You too can build a(n emulated) computer from scratch, and I can't recommend it highly enough.

Re: The Joy of Nand2Tetris

#4
I’m interested in this. What it the best way to learn the material? The book? The coursera course? Both? It’s a bit hard to tell just from the website.

Re: The Joy of Nand2Tetris

#5
There's a gamified version of nand2tetris available on Steam called "Turing Complete" (https://turingcomplete.game).

I completed it up until the assembler challenges, and I felt the same way as the author. Granted I knew Kmaps, etc. from my uni days, but given the nand2tetris book you might be able to figure it out.

Re: The Joy of Nand2Tetris

#6
post #4

I’m interested in this. What it the best way to learn the material? The book? The coursera course? Both? It’s a bit hard to tell just from the website.

I've been following the website and the course material provided therein: https://www.nand2tetris.org/course I did not sign up for the course on Coursera because I was able to make progress just fine with the free material on the website and I did not want to pay Coursera to get their certificates of completion.

The first 6 projects do not require purchasing the textbook as the relevant chapters are provided along with the project material. The next projects do not have the textbook chapters provided, so I bought the textbook.

I'm currently working on Project 8. I've been blogging about my progress here, if you want to take a look: https://gurudas.dev/tag/nand2tetris/

Re: The Joy of Nand2Tetris

#7
post #4

I’m interested in this. What it the best way to learn the material? The book? The coursera course? Both? It’s a bit hard to tell just from the website.

the nand2tetris book, Ben Eater's tutorials and nandgame

Re: The Joy of Nand2Tetris

#8
As someone who didn't follow the conventional path into software engineering via a CS degree, Nand2Tetris has helped fill in a lot of gaps in my knowledge.

I completed part 1 of Nand2Tetris in 2023 and this year I'm working my way through part 2 where you write a compiler and OS for the architecture that you built in part 1. It feels great to finally start understanding concepts like memory management, virtual machines and compilers.

Re: The Joy of Nand2Tetris

#9
Having done nand2tetris before doing various digital logic courses, I feel like the first portion falls a little short of its tagline of making a computer from modern first principles. It focuses too much on the specific implementation of its own architecture rather than giving the tools needed to create the architecture from scratch.

It doesn’t teach things such as product of sums and kmaps which allows you to methodically find the Boolean equation for any arbitrary output. I spent most of my time during the architecture implementation finding the correct expressions, while it becomes trivial if you learn how to do it systematically.

It’s lacking in teaching how state works, mostly because it passes over flipflops and their applications. It also doesn’t teach finite state machines (FSM), which was the single most important thing for me in understanding how to actually implement an architecture. This is because the concept of FSMs abstracts most of the logic and focuses on the behavior, and once you design the behavior you can then methodically implement the logic with the previously mentioned techniques.

Re: The Joy of Nand2Tetris

#10
post #9

Having done nand2tetris before doing various digital logic courses, I feel like the first portion falls a little short of its tagline of making a computer from modern first principles. It focuses too much on the specific implementation of its own architecture rather than giving the tools needed to create the architecture from scratch. It doesn’t teach things such as product of sums and kmaps which allows you to metho…

Do you have a recommendation for a book or course that teaches these things better? In particular FSMs.
Post reply on HN