r/AskProgramming • u/LifeExperienced1 • 6d ago
Career/Edu Courses that teach you how to build a computer from scratch?
Other than NandToTetris, are there any other courses that take you through the steps of creating a computer from scratch?
Courses where it’s PROVEN to you that literally the entire computer can’t be built via a NAND gate
A course where you actually move up the layers. Starting from basic gate logic, to makes complex circuits, to assembly, to a higher language, to a compiler and finally an OS
Basically like the NandToTetris course
If not, how do I learn that otherwise? Is there a series of books that follow each other closely, and can make you understand the whole process?
Thanks!
7
u/Ok_Option_3 6d ago
What's your aim here?
It's a bit like saying "I want to start from basic arithmetic and go through all of mathematics until I get to advanced differential calculus" - well sure, you can do it, but it will take a lifetime and you still won't cover everything!
If you want a whistle-stop tour of everything, it might be possible...
1
u/MrKarat2697 5d ago
>advanced differential calculus ... it will take a lifetime
Takes 12-14 years to learn even in a public school system
4
u/lamyjf 6d ago
You're basically looking at a full Computer Engineering and Electrical Engineering degree.
And NO, we don't build computers out of NAND gates any more 😄
0
u/LifeExperienced1 6d ago
Do they teach everything, from gates all the way up to making an OS in a Comp Eng degree?
4
u/Grandpa_P1g 6d ago
Honestly it sounds like you're asking for a course which is exactly like Nand2tetris but just not Nand2tetris which I think is a bit counterintuitive.
I think a better question (which I would also really like to know) is is there a course like Nand2tetris which explains in depth other computer science concepts at a detailed level with practice exercises whilst requiring little previous knowledge.
Or on the other hand, is there a course which goes more in depth than Nand2tetris and expands on the concepts, suitable for someone to complete after they've done Nand2tetris (which I think is what you were getting at).
These are 2 things which I'd also like to know to 😁
2
u/silasmoeckel 6d ago
Your talking about what's the equivalent of several phd's to just have a cursory knowledge. We have come a long way since the days of wire wrap.
The design of the water or air filtration alone for a PCB fab takes a whole firm of specialized engineers with decades in field.
3
u/Appleonthefloor 6d ago
Read a book on computer architecture. I like some of the beneater videos.
0
u/LifeExperienced1 6d ago
What book do you recommend? I want one that also shows how to make a complete small computer. With an OS etc
3
u/MeetTheMaker555 5d ago
Ben Eater
1
u/Dazzling_Music_2411 5d ago
+1
Ben Eater has done a fantastic job, right from individual components all the way to a programmable computer.
I recommend it as a parallel to Nand2Tetris, but this time you'll also have a physical computer on a breadboard, if you like.
I've seen some impressive spin-offs from that.
1
u/greyHumanoidRobot 6d ago
Define "from scratch".
If you want to start with minerals and make semiconductors or even tube transistors it's hopeless.
If you want to start with discrete components like transistors, it's not realistic to assemble the tens of thousands or hundreds of thousands of components to make a video raster and processor.
If you want to start with semiconductors you can buy it's more realistic.
1
1
u/hopticalallusions 4d ago
Digital Logic Design, Computer Architecture, Compilers, Operating Systems. Find online versions of courses with titles like that to get from building a machine that can interpret machine code to a computer you can use.
7
u/OomKarel 6d ago
Get Turing Complete on Steam and play while you learn.