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

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

5.0
340件の評価
97件のレビュー

コースについて

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

人気のレビュー

MS

Jan 15, 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 03, 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!

フィルター:

Build a Modern Computer from First Principles: Nand to Tetris Part II (project-centered course): 26 - 50 / 96 レビュー

by Steven G

Jun 22, 2018

This is a brilliant and very challenging project oriented course. Even as a IT professional doing this course for fun the workload can be very demanding. Be prepared to work hard and for long hours to get through this course. But the tremendous feeling of accomplishment at the end makes it all worthwhile. I have not felt this way since my undergraduate days. Thank you for reigniting my passion.

by James T

Jun 13, 2018

Absolutely phenomenal. One of the best and most instructive courses I've taken. This provided a much deeper understanding of computer internals than I'd previously had, and I'm shocked by how much ground was covered in this course. It took a lot of work, and while it is listed as 'beginner', I imagine it would be quite challenging to complete without having any experience programming.

by Vivek N

Jul 07, 2017

By far the best MOOC I have taken - the focus on actual projects rather than simple quizzes keeps one continuously challenged.

The sense of accomplishment from building the entire stack of computing from ground up is really amazing.

The course instructors are great presenters and orators - there's no chance of getting bored - they bring great enthusiasm and passion into what they teach.

by Yechen H

Apr 21, 2020

This is a great course to a great amount of knowledge about the compiler and programming language, and get some knowledge about the operating system.

I would definitely recommend to anyone in the tech area to take this course and wish I had the chance to take this course early in my career. It would have provided me with great knowledge and understanding.

by AKASH Y

May 31, 2020

Again a very good course. Even this course is a great one but I feel its not for beginners like Part1.Before opting for this course you should have a good knowledge of any programing language. Otherwise you will find it difficult to do some projects. But again the course shows you how the small pieces solve a big puzzle in efficient way.

by Xander L

Mar 02, 2017

Absolutely superb. It's incredible how much ground is covered from start to finish, yet the design of the course, the languages and the computer itself are so elegantly conceived that the creators have achieved the seemingly impossible: to provide a deep understanding of every level of a modern computer system in 8 weeks. Thank you!

by Compunaut

Jul 19, 2017

This course changed the way I think about programming and computers in many ways. Understanding and implementing the essential abstractions which make computers do their magic was one of the greatest learning experiences I ever had!

I'm thankful to the authors and they have all my respect for putting together such a great course!

by Sam S

May 27, 2020

Excellent course. Very engaging projects and a big step up in difficulty / commitment from part 1. Anyone considering this course should likely have a basic knowledge of some programming language (Java, Python, whatever), as the compiler project will be a big challenge if you need to navigate a new language while completing it.

by Robert S

Jun 11, 2020

Easily the most challenging and reward course I've taken on Coursera. Would recommend to anyone interested in learning how computers work to take both parts of this course. Be willing to give 10-20 hours each week to work on the programming projects, I was grateful for the extra buffer week to finish up my work.

by Finlay H

Jul 29, 2020

Incredible course, automating testing could have been improved (more coverage of tests and more rigorous tests). However, I don't believe that was the point of the course or important in what was being taught. It has changed the way I view computer science and I have found it truly insightful.

by foad

Sep 24, 2017

Just as the first part of the course the second course is equally interesting. So much information to learn from this course yet taught in a very student friendly, intuitive and interactive way. Doing the programming exercises makes this course even more exciting. Check it out!

by Mark V M

Mar 20, 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.

by Andrei P

Sep 18, 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!

by Liudmila N

Apr 20, 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.

by Dieter M

Jul 08, 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!

by Stephen H

Mar 25, 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!

by Дмитрий С

May 28, 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!

by Alex P

May 22, 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!!!

by Shriharsh M

Feb 15, 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.

by Ernesto P

Sep 18, 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.

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 Akash P R

Oct 06, 2020

Excellent Course. Understood computers at a very fundamental level. Thanks to the instructors who put together such a well planned and well paced course. Recommended to all.

by Li P

Jan 09, 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 Darshan J 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 索明明

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!