Chevron Left
Back to Build a Modern Computer from First Principles: Nand to Tetris Part II (project-centered course)

Learner Reviews & Feedback for Build a Modern Computer from First Principles: Nand to Tetris Part II (project-centered course) by Hebrew University of Jerusalem

4.9
stars
513 ratings

About the Course

In this project-centered course you will build a modern software hierarchy, designed to enable the translation and execution of object-based, high-level languages on a bare-bone computer hardware platform. In particular, you will implement a virtual machine and a compiler for a simple, Java-like programming language, and you will develop a basic operating system that closes gaps between the high-level language and the underlying hardware platform. In the process, you will gain a deep, hands-on understanding of numerous topics in applied computer science, e.g. stack processing, parsing, code generation, and classical algorithms and data structures for memory management, vector graphics, input-output handling, and various other topics that lie at the very core of every modern computer system. This is a self-contained course: all the knowledge necessary to succeed in the course and build the various systems will be given as part of the learning experience. The only prerequisite is knowledge of programming at the level acquired in introduction to computer science courses. All the software tools and materials that are necessary to complete the course will be supplied freely after you enrol in the course. This course is accompanied by the textbook "The Elements of Computing Systems" (Nisan and Schocken, MIT Press). While not required for taking the course, the book provides a convenient coverage of all the course topics. The book is available in either hardcopy or ebook form, and MIT Press is offering a 30% discount off the cover price by using the discount code MNTT30 at https://mitpress.mit.edu/books/elements-computing-systems. 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 15 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....

Top reviews

MS

Jan 14, 2018

This is by far one of the best online-courses I have completed. Thumbs up, it was well worth my time and it will definitely help me on my never-ending journey of becoming a better software developer.

RB

Sep 2, 2018

I'm a 13 year old 8th Grader from California. I loved this course and learned a lot! Thank you Mr.Schocken for putting together such a wonderful course! It was a thrill to finish the course finally!

Filter by:

76 - 100 of 158 Reviews for Build a Modern Computer from First Principles: Nand to Tetris Part II (project-centered course)

By Eugene O

•

Oct 23, 2019

Thanks for the course!

I came from the first part and really glad I took it.

Though, OS part is pretty difficult. I was forced to look up some hints on the internet for more implementation details.

By Francisco G G

•

Aug 18, 2021

Shimon and Noam area outstanding professors who know how to transmit non trivial knowledge. The course is well structured though some lecturers may need more than one-week work. Thanks a lot.

By Li P

•

Jan 9, 2020

Course materials and project assignment are well-organized, demanding but also motivating. I felt so lucky to have taken both of the courses and really enjoyed them! Thanks!

By Gustavo A M

•

Mar 6, 2023

Takes time to complete. This is a gem of a course!

Highly recommended if you have a CS background but haven't taken a similar computer architecture course in college.

By Su N D

•

Nov 29, 2020

Part 2 is really more challenge than part 1, but it's worthy. What a course ! I have learned a huge of knowledge of CS for 4 months. Thanks Simon and Noam

By Darshan P

•

Oct 19, 2020

tough journey but what I learned in this course worth it. excellent design of course and provides basic foundation for understanding high level language.

By Dennis S

•

Oct 3, 2024

A great course. It is not easy, assignments are hard and take time. But in the end -- learn so much. Thank you, professors Schoken and Nisan!

By 索明明

•

Sep 29, 2019

very fun,really from 0 and 1 ,i build my own computer and implements my own code language.What's more i use my own language develop a game!

By Luis G C

•

Sep 13, 2017

It's the most amazing course that i've ever taken. Thanks Noam and Shimon for your work.

I eagerly await the continuation of the course.

By Martin K

•

Dec 4, 2020

It really deepened my understanding of computers and helped me to be a better programmer. It is more challenging than the first part.

By Aydin S

•

Oct 14, 2020

One of the best classes I've ever taken, better than most of my college classes. It was fantastic every step of the way.

By Olivier M

•

Jan 13, 2021

Outstanding ! What a journey and what a remarquable course. An awful lot of work but very gratifying in the end !

By Hassan R

•

Aug 17, 2020

I extremely enjoyed this course. It's very recommended to those how wanna know about how computers work indeed.

By Gedas L

•

Jan 2, 2021

It was an insightful and challenging adventure. Thanks Noam and Shimon! Looking forward for the ideas to come.

By Fumi K

•

Sep 17, 2020

marvelous. This course is really helpful for the people who want to open up the "black box" in computer.

By jimo

•

Jan 10, 2023

Great course! it was hard for me but I finished with a feeling of accomplishment.

Thanks to the authors.

By Guna R

•

Apr 19, 2021

This course helps me to understand how a real computer is created and how compiler and os is designed

By pengwei

•

Jul 19, 2017

The best introduction of computer science course forever, I will recommend it to others. Thanks.

By Christian M J

•

Apr 3, 2022

A wonderful and enlightening foundation to understanding how software interacts with hardware.

By Jan K

•

Feb 8, 2022

This course is incredible cool and very challenging. Beware, you will lose a lot of sleep.

By Ahsanul A S

•

Aug 4, 2020

What an amazing journey it is! I wonder I can fast forward this course again and again.

By Jörg S

•

Mar 1, 2017

A fast-paced overview of compiler construction and the associated run time environment.

By hsc a

•

Apr 24, 2017

Absolutely amazing. I loved making my own programming language and building my own OS!

By José K

•

Feb 3, 2024

Incredible course. Makes you really understand how computers work and is quite fun.

By Joe K

•

Jul 20, 2018

Thank you so much Shimon Schocken!!

Part two was tough, but it was very helpful.