Earlier quoted context omitted.
>"The only thing that rivaled that lightbulb was aspects of Theory of Computation with undecidability, turing machine vs stack machine vs state machine powers that theoretically limit Von Neumann architecture." Might you or someone else have a title that you would recommend for this that is the equivalent of a "Elements of Computing Systems" style book?
The book "Understanding Computation: From Simple Machines to Impossible Programs" by Tom Stuart was/is my Theory Of Computation Nirvana experience. Its motives is the same as NandToTetris: to make any programming-literate person comfortable with the rough outlines of the theory of computation and its main lore and results. The author uses Ruby as an interactive "Illustration language", a notation to describe concepts…
The Elements of Computing Systems, Second Edition
81–90 of 101 posts
Re: The Elements of Computing Systems, Second Edition
#82Earlier quoted context omitted.
Just curious what curriculum gave a low level CS education? Did you deliberately choose courses such as Compiler thoery and Operating System? In my school(I'm in first semester but join as a returner as I got a Stat master yrs ago) they are both optional and we can skip many low level courses.
Honestly, it was my school. I went to Digipen Institute of Technology. There are a lot of teachers there who worked for Nintendo which has a very old school dev culture. For example, the Wii U was literally their first console with an actual operating system. There are also a lot of Microsoft folks there who worked in jobs like Xbox dev support which gives one a pretty intense education in tackling low level problems…
Re: The Elements of Computing Systems, Second Edition
#83It is quite fascinating how computers are really just bits of 0's and 1's. What a magical machine built upon a layer of boolean logic. What an incredible feat.
Re: The Elements of Computing Systems, Second Edition
#84Re: The Elements of Computing Systems, Second Edition
#85Buy this book if you're a programmer who wants to know how computers work. I read the first edition in high school, and if I had to choose either this book or my entire undergrad CS education, I'd pick this book.
I have both a computer engineering education and have read the book. My recollection is that it's good for what it is but omits[0] a heck of a lot of necessary background knowledge to apply the material outside of the limited context of the book. I'm not saying that it's not good, just be aware that it's not the whole picture, so to speak. [0] or perhaps it would be better to say "has no choice but to omit" or it wou…
The biggest part they omitted was how flip flops work. They talk about it briefly in a end of unit video, however. They don't really talk about clock cycles in any depth, and their interactions with flip flops, and why they're important.
The course, I think, it better to have left it out. It keeps the first part focused on the combination of elements culminating in a CPU.
And, most of all, it inspires you. After doing the course, I was more than motivated to understand this myself. And it remains the most educational computing course I've ever done.
Re: The Elements of Computing Systems, Second Edition
#86do you need any external resources to go through this book?
Re: The Elements of Computing Systems, Second Edition
#87Earlier quoted context omitted.
Oh really? I was going off their own FAQ since the graded items requiring paying, and I didn’t want to do it if I couldn’t use the languages I wanted, namely F# and Racket. From the FAQ: > > Which programming language do I have to use in order to complete the assignments in this course? > We expect learners to submit assignments in any version of Java, or Python. We will assume that you have basic programming ability…
Yeah, I guess the FAQ is out of date. Think you should be to sign up for free if you want to check for yourself. I highly recommend it! And F# would be a pretty great language for this course, I think. Looks like no Racket (or any Lisp) support, though.
Thanks for letting me know about the extended grader support.
Re: The Elements of Computing Systems, Second Edition
#88Earlier quoted context omitted.
I wonder what might be some good examples of that. IME, it's mostly been college textbooks which suffer from being refreshed for the sake of encouraging new purchases (killing the used market), often by someone other than the original authors and editors. Of course, some AD&D fans would say everything past 2nd edition might be an example of it.
> past 2nd edition Case in point: the vomit-inducing colorful print of the 3rd edition of Axler's Linear Algebra Done Right .
Re: The Elements of Computing Systems, Second Edition
#89Earlier quoted context omitted.
>This book follows more along the lines of the coursework for a computer engineering degree than a computer science degree > but CS curricula generally completely omit the electrical engineering portions Where in this book does it talk about electrical engineering?
The first half of the book is about digital design, which is part of electrical engineering. They call it "Hardware Land" in the book. From page 6 (1st ed.): Of course the layers of abstraction don't stop here. Elementary logic gates are built from transistors, using technologies based on solid-state physics and ultimately quantum mechanics. Indeed, this is where the abstractions of the natural world,as studied and f…
HARDWARE
1 Boolean Logic 9
2 Boolean Arithmetic 31
3 Memory 45
4 Machine Language 61
5 Computer Architecture 83
6 Assembler 103
These topics are fundamental to computer science. Boolean algebra is fundamental to computer science. Just because E.E. or C.E. degree courses mention a topic, doesn't mean that topic all of a sudden becomes exclusive to them.
Also, I notice you're using the first edition. May I suggest you look at the second edition, as stated in the title?