4 ms·
I'm an undergrad at one of the outlier schools (UCLA) where a combination of the quarter system and a relatively conservative CS department make for an interest
by loser777 12y ago
I'm an undergrad at one of the outlier schools (UCLA) where a combination of the quarter system and a relatively conservative CS department make for an interesting undergrad curriculum.
Our "CS 1" is taught in C++ and is mostly dedicated to well, C++. The entire first course is essentially dedicated to teaching you how to not blow your leg off while managing memory.
We don't even touch data structures, algorithms, composition, inheritance, etc until "CS 2," which is also in C++. When I first tried Python as part of a 1-week assignment in "CS 2.5" (a lab course), I was blown away and hooked pretty quickly. We don't get formal Python experience really until the extremely work-intensive upper division programming languages course. From my perspective, I think a large number of people are discouraged by CS 1 and how it's more of a programming class than a CS class. The only benefit of a C++ introduction is that it's easier for people to transition to C and lower level code for the operating systems class. Still, C is pretty well covered by our "CS 2.5" and "CS 3."
Other fun facts: our CS 0 (programming for non-CS majors) is split into three classes and is also in C++!
I accidentally took a C++ at a community college during high school and was forced to skip "CS 1" when I enrolled for my first quarter. I felt so unprepared for "CS 2" that I actually audited a good number of "CS 1" lectures and did half of the projects for the class even though I didn't take it.
Actual course numbers:
CS 1 -> CS 31
CS 2 -> CS 32
CS 2.5 -> CS 35L
CS 3 -> CS 33
CS 0(a-c) -> PIC 10(a-c)
- krakensden 12y agoI went to Davis which also teaches C in the CS1/first course for concentrators, and C++ after. It was really hard, I really liked it, and I've always felt it's given me an advantage over people who have no idea how the lower layers of the stack work. I definitely saw it scare some people off though. So if your only criteria is "what is the passing rate", it probably does worse than python.