3 ms·
Thanks for the list. I've worked my way through part of NAND to Tetris so far. NAND to Tetris is a little more than just a coding resource. It covers first prin
by 52-6F-62 9y ago
Thanks for the list. I've worked my way through part of NAND to Tetris so far. NAND to Tetris is a little more than just a coding resource. It covers first principles of computing, through to programming. The lessons also come in the form of a book listed at the top of the page The Elements of Computing Systems for anybody who doesn't want the Coursera version.
CS50 is great for core principles, but you need to go into that course with some kind of knowledge/experience working with a programming language of some kind. I found it just kind of dropped you into your first algorithm problem without teaching anything practical about implementation except for how to compile a C program. Regardless, it's a great course.
I'll definitely be having a look at the others you/others listed. I like to run through these things to fill out my core understanding or to refresh it. And still need to finish NAND To Tetris when I free up more time I can commit to it.
- fermienrico 9y agoNAND to Tetris - yea it is a little more than just a programming course but that's exactly the kind of teaching we need to do. I took CS1371 at Georgia Tech back in 2004 and it was completely and utterly useless. How does a multi-million dollar college screw up teaching how to code so badly? I wish NAND to Tetris was around. CS50 - Just watch week 0[1] and it literally starts with a survey of 73% that have never taken anything computer programming course or know anything about programming. The course starts with the absolute fundamentals - decimal system to binary, power cord of the computer where electrons go in and then builds slowly into introducing C. [1] https://www.youtube.com/watch?v=o4SGkB_8fFs https://www.youtube.com/watch?v=o4SGkB_8fFs
- 52-6F-62 9y agoI wasn't discounting your suggestions -- don't get me wrong. They're absolutely great for somebody wanting to do a deep dive. They're not a fast introduction to writing your first program, though. The logic required to understand high-level programming can be taught without diving that deeply. If somebody needed to write some simple math functions (and theoretically for whatever crazy reason wanted to write the programs in C), they would be able to learn to do so without such a deep dive into first principles. For real understanding, the courses are an incredible resource, especially for free!