3 ms·
I think you're way off base. I took both 6.00x (the MIT course) and cs50x side by side. Only half way done with cs50x at the moment but 6.00x is over other than
by rartichoke 14y ago
I think you're way off base. I took both 6.00x (the MIT course) and cs50x side by side. Only half way done with cs50x at the moment but 6.00x is over other than the final exam.
I feel like cs50x explains the "hows" and "whys" in much more detail, mainly because we're dealing with a lower level language.
For example, I know exactly what's happening on the stack now and what role the heap plays and how to balance my data between the 2 to tweak the performance and make trade offs. You don't learn this stuff on MIT's course.
Also MIT's course spent half the semester running simulations and dealing with statistics using pylab. This to me seems very specific to what you want to do. If you want to do statistical analysis that's great, but a lot of people do not.
- dschiptsov 14y agoYes, pylab stuff is boring, but it seems like prof. John Guttag loves it. Python and pylab are popular in medical and biology departments, and simulations is what they do a lot. But the other half of the course, which explains you how classes and methods were implemented (as frames of environment) is important. It comes from early (and much better, in my opinion) courses, based on Scheme. The main point, I think, is that they teach you that there is no magic in OOP, and if people remain sane (not stuffing 70 methods to a List class) everything is simple and straightforward. Another realization should be that OOP is not necessary, unless you're doing some very specific kind of programming - simulations. It is not just an opinion, they show you that it is nothing but a bunch of conventions. It doesn't really matter how I glue procedures and data together and how I call them - via this arrangement of pointers or that. Much more interesting things happen when I have a general way to do it - list structure, first-class citizens and macros, so code is data, but they don't teach Lisp anymore. They used to teach fundamental concepts and the canonical ways to implement them. Then you can add (or avoid) any complexity you wish.) At least, after this course you probably could realize that there is much better way to do OOP than Java, and it is already a big deal.
- intellegacy 14y agoTo be fair, this is simply a contrast in different pedagogical approaches to the first Intro CS Class. You learn the hows and whys in later MIT courses when you cover binary and C.
- rartichoke 14y agoAre any of these available as online courses (lectures+psets+questions/exams)? I didn't see them.