slayn said:except that, a lot of CS professors think any test where even a single student is capable of getting >90% was a boring test that didn't correctly assess the students. Most professors 'aim' for all of their tests to have 50-60% averages but because they make completely new tests each year its extremely hard to predict how difficult any given test is actually going to be.
Maybe any professor, CS or not (I don't know why you keep making that distinction. What makes you think CS is so special here? Everything you've said applies to any program), who thinks that should go back and retake statistics. The goal of a test is not to be exciting or difficult, it's to test level of knowledge. If they're trying to keep the average at 50-60%, either they're not teaching everything they should or the tests are too hard. The average should be around 70-75% with a normal distribution around that, with maybe one or two people getting in the 90s and one or two people failing. There's a reason that's called a normal distribution. Because it's normal and indicates that the professor was teaching effectively.
As for punishing the students for the professors screwing up... What the hell do you think is happening anyways? The student will move on to the next course with less knowledge than they should have had. That's punishment if you ask me. And I don't see how it's more idealistic to actually want to be able to identify and deal with teachers who don't teach effectively than to try and cover up their problems. The most idealistic position here, if you ask me, is the one that assumes that it's right for students to have an a class average below 50% and be able to successfuly continue their studies.