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

Comentários e feedback de alunos de Build a Modern Computer from First Principles: Nand to Tetris Part II (project-centered course) da instituição Universidade Hebraica de Jerusalém

438 classificações

Sobre o curso

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 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....

Melhores avaliações


14 de jan de 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.


2 de set de 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!

Filtrar por:

51 — 75 de 138 Avaliações para o Build a Modern Computer from First Principles: Nand to Tetris Part II (project-centered course)

por Kelly L

1 de jan de 2021

Learning about virtual machines, translators, parsing, syntax analysis, building a high level language compiler, building operating system libraries. A challenging course and very rewarding to complete and come away with a deeper understanding of computer architecture.

por Mark V M

20 de mar de 2018

This was a great course which tied together so many loose ends for me. E.g., I knew that OO languages would add a hidden "this" parameter, that compiling would get rid of symbols, that malloc worked with a heap, but now I REALLY know how all that works.

por Andrei P

18 de set de 2018

Great course! Together with part1, it goes through how a computer does what it does, but in a simple way. That is not to say it's not valuable, it was very cool to see how things work behind the scenes and how they did all that! Best course I've done!

por Liudmila N

20 de abr de 2018

Very well structured, you learn a lot, primarily by doing, which is the best learning. The project where you program in Jack is in my opinion unnecessary, and the OS part is just a bag of random stuff, but overall, one of the best courses out there.

por Dieter M

8 de jul de 2020

You often ask yourself how computers really work, even if you have a computer science education. You usually learn individual aspects of technology. This course teaches everything. You get the full picture. Very demanding, but definitely worth it!

por Stephen

24 de mar de 2018

Great course! Cannot imagine how can I build in two weeks the whole compiling software that translates an OO language down to machine code! Although the part II needs more work than part I, it is still manageable and equally inspiring!

por Dmitry S

28 de mai de 2020

This course is a real gem. It is much harder than the first one though. The principal part of this course is about writing a compiler. Now I feel like I can write compilers :) Wow! The authors of this course are amazing people!

por Kamanpreet S

21 de mai de 2022

Wonderful course. I am new to computer science. This course helped me understand concepts very well. The project-centred approach is admirable. I wish there were more courses like it and of such fine and unmathable quality.

por Alex P

22 de mai de 2017

I really enjoyed this beautiful course for 6 weeks. And it was very challengeable, but exciting for me.

I look forward to going Nand 2 Tetris Part 3 near furture.

Great thanks for Noam and Shimon with this great courses!!!

por Shriharsh M

15 de fev de 2019

What an effort by the teachers! Such complex concepts simplified for a large and varied target audience. I thoroughly enjoyed doing the exercises for this course. I am eager to take up the part 3 whenever it comes out.

por Jonathan E

16 de mar de 2021

Great course. Definitely recommend taking it if you can-- this course filled many gaps of ignorance that I had. It is much tougher (much bigger time commitment) than the first course so it's good to be aware of that.

por Ernesto P

18 de set de 2017

Excellent course on understanding the fundamental pillars of how computer software works. Great lectures are clear and concise, so much so you can finish the course without using the textbook. Fun and challenging.

por Zhengtong N

8 de abr de 2022

Great course in every way. I can't imagine how much efforts Noam, Shimon and their team have taken. Everyone who's trying to understand computer in a more comprehensive way should take this course.

por Eugene O

23 de out de 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.

por Francisco G G

18 de ago de 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.

por Li P

9 de jan de 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!

por Su N D

29 de nov de 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

por Darshan P

19 de out de 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.

por 索明明

29 de set de 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!

por Luis G C

13 de set de 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.

por Martin K

4 de dez de 2020

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

por Aydin S

14 de out de 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.

por Olivier M

13 de jan de 2021

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

por Hassan R

17 de ago de 2020

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

por Gedas L

2 de jan de 2021

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