As far as I know, it's just L&S CS. I graduated with a degree in EECS in May 2012 and we didn't really have any required upper division courses beyond "take X number of units".
I graduated from UC Berkeley a year ago, and I remember CS161 being known as one of the easier technical upper divs at Berkeley. Although I never took the course myself, these rules seem like quite a departure from the norm.
I wonder if perhaps the professor is trying to scare people into dropping the class?
> I wonder if perhaps the professor is trying to scare people into dropping the class?
This seems likely.
It also appears that the professor is making somewhat of a political statement about the University, the (lack of) teaching assistants, and the shortage of funds available to him. I attended a University of California school several years ago, and there were a plethora of similar issues regarding class sizes, funding, etc.
It's sad, because actions like canceling four of seven planned sections¹ only hurt the students' education.
1: This originally stated that lectures were canceled, but I was mistaken. Thanks to codergirl for correcting me.
Looks like budget problems mean they can't support everyone:
"There are currently about 170 students. However, given the current TA staffing, we can only support 75-90 students in the class. Because this class is so challenging, I expect that about 2/3rds of currently enrolled students will drop the course. Those who remain will need to commit to being on-time for every class and discussion section, and willing to devote substantial effort to reading and understanding highly technical material (and being examined on it during every single class section)."
My alma mater has begun doing this with their intro CS courses. It's a small school of only 2400 students and only 8 CS professors but demand is so high for CS right now that they simply can't staff up and maintain the university's cap of 30 students per course (21 in this case given the size of the CS labs).
They're teaching as many intro sections as they can without depriving majors of electives.
Fortunately they haven't gotten dickish about it but it's a tough spot to be in.
Problem is, the university was burned by that after the dotcom bubble crashed. They'd hired a bunch during the boom and then had far more than needed up until ~2010.
My freshman CS class in 2008 only had 3 students. The university doesn't want to repeat that.
The point of this exercise was to show that opacity has an effect on element position, which was surprising to me! It matters because it might fix a z-index bug you have one day (:
I took a class that used this book at Berkeley. I think it's kind of like a wikipedia article in a book--it's clear and easy to read (well, easier than most other textbooks!)
That's why over at Berkeley we at Hackers at Berkeley decided to start hosting Hackjams. They're twelve hour events from about 1 PM to 1 AM. We have much less pressure, more emphasis on fun and trying things out and showing what you learned, even if you don't have anything approaching a product (I once showed an awful demonstration of all that I had managed to learn about Three.JS in five hours).
Thanks for the pointer! My first language was Scheme and I always kind of joke around about eventually learning Haskell. I think I might actually start doing it though.
While that's an interesting read and fun mini-project, I wouldn't recommend it as a tutorial for Haskell beginners. You need to have a pretty decent handle on the language before a lot of it will make sense.
Learn You a Haskell for Great Good! is the ideal starting point, in my opinion.
You need to have a pretty decent handle on the language before a lot of it will make sense.
While that's true, I think a learner may need more to aspire to (whether to write it, or just understand it) than just the next line of 'Learn You a Haskell'.
And there's also the fill-in-the-blanks phenomenon: you see a bit of code and have no idea what it does, but later on when you start to learn the underlying idea behind that code it may help solidify your understanding.
This is also a good way to learn math: rather than a strict progression of incremental steps, it's good sometimes to beat your head against something that's way above your level. Even if it seems like you're doing nothing, you're actually creating a space in your head where this knowledge can go, if I can be forgiven that metaphor.
Agreed. LYAH is fantastic for forming a conceptual foundation, but if there's one thing it lacks, it's exercises, so it's definitely a good idea to supplement it with something more focused on writing actual code. Write Yourself a Scheme is good for that purpose, as is Real World Haskell.
I agree that it isn't a good first introduction. However, I think it's a pretty good choice for someone that's done a few basic tutorials and wants to move on to something large.