Chevron Left
Build a Modern Computer from First Principles: From Nand to Tetris (Project-Centered Course) に戻る

ヘブライ大学(Hebrew University of Jerusalem) による Build a Modern Computer from First Principles: From Nand to Tetris (Project-Centered Course) の受講者のレビューおよびフィードバック



What you’ll achieve: In this project-centered course* you will build a modern computer system, from the ground up. We’ll divide this fascinating journey into six hands-on projects that will take you from constructing elementary logic gates all the way through creating a fully functioning general purpose computer. In the process, you will learn - in the most direct and constructive way - how computers work, and how they are designed. What you’ll need: This is a self-contained course: all the knowledge necessary to succeed in the course and build the computer system will be given as part of the learning experience. Therefore, we assume no previous computer science or engineering knowledge, and all learners are welcome aboard. You will need no physical materials, since you will build the computer on your own PC, using a software-based hardware simulator, just like real computers are designed by computer engineers in the field. The hardware simulator, as well as other software tools, will be supplied freely after you enroll in the course. Course format: The course consists of six modules, each comprising a series of video lectures, and a project. You will need about 2-3 hours to watch each module's lectures, and about 5-10 hours to complete each one of the six projects. The course can be completed in six weeks, but you are welcome to take it at your own pace. You can watch a TED talk about this course by Googling "nand2tetris TED talk". *About Project-Centered Courses: Project-centered courses are designed to help you complete a personally meaningful real-world project, with your instructor and a community of learners with similar goals providing guidance and suggestions along the way. By actively applying new concepts as you learn, you’ll master the course content more efficiently; you’ll also get a head start on using the skills you gain to make positive changes in your life and career. When you complete the course, you’ll have a finished project that you’ll be proud to use and share....



An excellent course provided by phenomenal professors! Everything is broken down into simple, easily understandable portions, and leaves you with a clear idea how to proceed to solve a given problem.


This was so much fun, so satisfying and I learned a lot. I'm a software engineer. We do so much work in high-level languages that it's great to be reminded how computing machinery gets the job done.


Build a Modern Computer from First Principles: From Nand to Tetris (Project-Centered Course): 101 - 125 / 854 レビュー

by Tim F


Great course! It's not impossibly difficult, but you will want to spend some time thinking things through. In the first week, I wasn't sure that the lectures completely covered the material, but YouTube exists, so I was able to find some videos on digital algebra to fill in the gaps. Week 5 was the toughest, and if you have any experience programming in higher levels, week 6 is a breeze.

by Herman P


This is without any doubt one of the best Coursera courses I've taken.

I always wanted to know how the computer works on hardware level. I read a lot of stuff but none of them allowed to understand truly what's inside and how and why works.

The materials and projects of the course are simply great and (from my point of view) makes you understand much more deeply the concepts of the videos.

by Vinicius G d R


Very nice course on how to build a computer from elementary circuits up. It's a simplified computer, but gives you a good sense of how actual computer work. It has exercises that are good for retaining the contents and making sure you understand the concepts. I definitely recommend for someone that wants to understand what happens between the assembly language and the computer circuits.

by Lieu Z H


I really liked the comprehensive and bottom-up approach to this course. However, I would have liked a bit more instruction on how the schematics for the CPU and ALU were derived, as we were merely implementing it without having to understanding why the ALU and the CPU was the way it is. The same goes for the machine language.

Nonetheless, an excellent course, and well worth your time.

by Han L


This is a great course that explained every thing from gates to actual PC very clearly.

I'd recommend this course to any one who try to fresh up computer science basics.

I only have a small suggestions, the four week taught about machine language, fifth week taught about the CPU-ROM-RAM architecture. From the first three weeks, (in my own opinion) I feel the order should be reversed.

by Andrew


I have taken many physics and computer science classes, and this is by far the best one. Not only it explains in detail how computers actually work, it also gives you tools and knowledge to implement the computer yourself. Both the book and lectures are very good at explaining things and assignments, while not being too hard, concentrate on learning and understanding the principles.

by Madhuresh m


I would recommend this course and as well part 2 of the same to every computer science student no matter what year they are in. Gives a clarity how different layers are related and function together . And if the authors of this course are reading this comment then i am really grateful to you for putting in your effort in this phenomenal piece of art that you have created.Thank you .

by Stefan L


as software student graduate this was a welcome low-level challenge to deepen my understanding of what happens "under the hood". Overall nicely explained (at least for someone familiar with the matter) and well defined goals for each week. definitely recommended for anyone that wants to understand a bit better how higher level languages work when actually working with 0 and 1.

by Joshua P B


My first course on coursera. I had a blast taking it. It was challenging and fun. I had little programming background which was not an issue until the last project; building an assembler. It was optional to code it, so I decided to learn 'c'. I wish that I picked python instead. I spent the entire week on it. If you are dedicated and interested, I highly recommend this course

by Sai G


Excellent introduction to building a modern computer with ample hands-on experience. Very fulfilling experience with all the programming assignments, especially the final one. To see my assembler taking any Hack assembly program and convert to a machine instruction is so satisfying. Appreciate the time that has been put in to make this course a challenging and rewarding one.

by NU�EZ C J E


Excellent. A really eye-opening course. I learnt a lot of things in the process of completing the projects that were assigned each week. It was a great way of learning the basics of how a computer works, and it made my more conscious on how a program is ran when you make one for a project or course. In conclusion, really good course with great instructors and great content.

by Jacob F


Really outstanding course. I learned a tremendous amount about how computers REALLY work, and got a glimpse behind the curtain to see and build some of the magic for myself. Anyone with even a passing interest in computers should take this course! The lectures are digestible, and the projects are very well designed. Only suggestion is --- WHERE IS PART TWO???? WE NEED IT!



This course helped me to learn how a basic computer performs.My heartiest thanks to both of my beloved professors and mentors for helping me to understand the crux of computer design.I am looking for future courses offered by them with advanced difficulty level and related to computer architecture and design that covers more detailed parts of computers like ALU, CPU etc.

by Andrew M


Having now taken a number of different courses across both on Coursera and elsewhere, I can honestly say that this course is perhaps the best one I've taken -- it's comprehensive without being overly tedious, and the fact that the assignments are projects, rather than quizzes or exams, was both more engaging and helped me better understand (and appreciate) the material.

by Yugesh P


The course is self-contained as advertised. The forum moderators are prompt and excellent at providing help. The projects were sufficiently challenging without being intimidating. Professors Nisan and Shocken deliver the knowledge in a very lucid manner. Overall a very nice course to take if you're interested in how a computer works by building one from the ground up.

by David E


This class taught me things I was curious about for years, such as how lower levels of the computer work. It was so gratifying to make gates myself out of NAND and eventually build an ALU (hard project), then the CPU (really hard, but so satisfying!). Building the assembler was something that seemed always hard, but completed it in just a few hours. +1 for unittest!



I learned a lot from this course. The journey of building a computer and an assembler using bottom-up approach was very exciting. Especially Project 4,5 and 6 kept me engaged with the course and most exciting part was building a computer and an assembler. I loved this course. Thank you, Noam and Shimon. Both of you are imparting quality education in the true sense.

by Greg M


Great glass! The assignments were well designed and a lot of effort was put in to making sure students could understand what they were supposed to do. I've found that good assignments are were most other courses are very lacking. Having good assignments is what really motivates me to finish a class, and it's what helps me verify I've actually learned something.

by Sayed H


Exceptionally well-designed course. Taught me how to build a computer and assembler from the first principle and amazingly, I didn't have any outstanding questions at the end of the course. Everything made sense. This is an excellent course for understanding the basics of the inner workings of a computer without being too bogged down into engineering details.

by Oleksandr Z


TL; DR - this course is brilliant.


When I started this course, it was so intriguing to see so many 5-star reviews. I could not find any flaws in the course. The material is dense and interesting. The course is fully polished, even shining.

Dear Professor Shocken, Professor Nisan, thank You so much. This course is absolute brilliant.


0; JMP

by Saksham G


Excellent course!! All the course materials and discussions forums were extremely helpful. All the tools and project files provided with the course worked without any difficulties. Also, it was a very shallow learning curve to get used to the new tools and hack language. Thanks Noam and Shimon for making such wonderful course. I am looking forward to part 2.

by Ndimangwa F N


I have never taken such a practical session like this. It was a challenge especially on the middle weeks , however I made it. I recommended for any one , needs to understand how the computer works, and increase the system design skills, this is the course to take. I recommended to take a full version (non-audit version) to enjoy the full power of the course

by sabyasachi m


This is the greatest course I ever came across. Together along with part 2 it connects all dots and goes beyond abstractions to show how a computer works. It is the best course that can teach an electronics or electrical engineer how the HWs and SWs interact in a machine. It indeed goes from building an nand gate to a fully functional primitive application.

by Cathy A


This course was completely different to the ones that teach only software development or high-level languages. I really liked how this course started with the very foundation of all computer architecture and finished with a completed hardware level of a computer.

This course was very interesting and I can't wait to begin the second part of this course.

by Andrew J


This is hands down one of the best courses I have ever done. It tears down the layers of abstraction between your programs and your computer's hardware. It's a project centred course meaning you get to build very cool things every week.

I'm blown away that I just finished building a computer that can play pong... it has a display and keyboard inputs!