3 ms·
Of the intro-level courses I'm only familiar with CMU's 15-112, which I took as my own intro to programming a few years ago [1], and UC Berkeley's CS 61A (from
by bobbiechen 7y ago
Of the intro-level courses I'm only familiar with CMU's 15-112, which I took as my own intro to programming a few years ago [1], and UC Berkeley's CS 61A (from hearing friends talk about it and looking at their assignments). But given the choice between just those two, I would definitely go with 112.
Compare the second homework assignments, which are supposed to be given after 2 weeks (~6 days) of instruction:
15-112: https://www.cs.cmu.edu/~rdriley/112/assignments/02/ https://www.cs.cmu.edu/~rdriley/112/assignments/02/
CS 61A: https://cs61a.org/hw/hw02/ https://cs61a.org/hw/hw02/
The 61A assignment forces higher order functions way too early, and it's often discouraging to people just starting out - and it's not even common (in my experience) to write code like this anyways. I also like the way that the CMU assignment writes tests as simple functions, without magic docstring tooling.
Don't skip the code tracing sections, where you read code and write the output by hand - it helps you understand and internalize what the code is doing, rather than just running code samples over and over again to see how it works.
Also, there's some nice notes on debugging https://www.cs.cmu.edu/~rdriley/112/notes/notes-debugging.html https://www.cs.cmu.edu/~rdriley/112/notes/notes-debugging.ht...
[1] I took this version, which is ordered a bit differently http://www.kosbie.net/cmu/spring-16/15-112/schedule.html http://www.kosbie.net/cmu/spring-16/15-112/schedule.html
- 8589934591 7y agoI have found that it's easier to find all assignments/materials online for the later courses from UCB compared to CMU courses although I do find that the CMU courses to be at a much higher rigor than UCB.