←back to thread

398 points jcartw | 1 comments | | HN request time: 0s | source
Show context
rs186 ◴[] No.43577900[source]
I did the whole thing, was able to get the Fibonacci numbers appear and learned a lot during the process. However, I would not recommend other people to try this today, because --

* It is not necessarily the best way to spend your time and money. You'll be looking at tens of hours on building it plus over $300 in parts, for a very slow and basic computer that you probably will forget and throw away at some point. Cutting and laying out wires are some of the most tedious and frustrating process. There are other cheaper, more efficient ways to learn how a computer works. It may or may not be worth the effort to you.

* The tutorial is really old, with some very questionable design choices and no updates from the author. Some of the designs are just plain wrong -- e.g. floating inputs or missing resistors. It is very unlikely you can reproduce it by strictly following the tutorial. You'll need to spend time debugging those issues and go to reddit to see other people's experience with this, potentially seeking help as well. No doubt debugging is an important part of designing and understanding the circuit. But only if you have the foundational knowledge and patience, of which I happened to have, but I can imagine that someone who does not understand digital electronics well enough can easily get lost and feel defeated.

* To make the previous point worse, some of the parts are hard to source, depending on where you are. (You'll likely fry or physically break a few components when building it.) Many of the parts are not very commonly used these days, and not exactly easy to acquire, if you only need 1 or 2 of them. I had to go to eBay to get some of them, which took about a week, during which I had to stop and wait for parts to arrive.

With all that said, this may still be the best resource out there that lets you build all these on a breadboard, as I am not aware of an alternative that addresses all the issues above.

replies(13): >>43578417 #>>43578700 #>>43579518 #>>43580888 #>>43582282 #>>43582382 #>>43582565 #>>43583401 #>>43583647 #>>43584116 #>>43586266 #>>43586542 #>>43588080 #
1. myself248 ◴[] No.43583647[source]
Speaking as a down-in-the-dirt circuit-slinger who works alongside a lot of ivory-tower engineers who couldn't diagnose a loose wire if their life depended on it, I think that's the whole point.

* Tens of hours and under $1000 is an extremely cheap route to this level of understanding if compared against university courses. I'd give my left nut to have my coworkers go through this process.

* Cutting and laying out wires is time-consuming and error-prone. Yup, hardware is like that. Sweeping out the dojo is menial but important. Developing an intuition around when a weird behavior might actually be a hardware problem, is priceless and absolutely essential for any embedded engineer. And you will never, ever get that from a simulator. (As much as I love the ideas behind nand2tetris, it's entirely done in simulation and that misses half the point, IMHO.)

* Sad to say, the outdated components thing is only getting worse as more basic stuff goes out of production in favor of more highly integrated components. (Even the epic VULCAN-74 caved and used modern RAM.) It might be possible to rework this project to use newer parts but keep the educational value. I suspect there's enough people who've pursued this project and done bits and pieces of that, someone just needs to unify it.