Fog Creek Software
Discussion Board




CS instructors

I'm currently enrolled in a particular universities CS program, and I really am not happy with the instruction. I realize that the higher-level courses will be better (I've checked, this is the case), but should I do anything now? I've wound up helping the class a lot, and because they don't 'get' it, we've lost more than half, and our section is doing *well*.



My question is this: Should I do anything? Is it my place to tell the instructor "you know, you really ought to cover this again, cus at least half the remaining people don't get XYZ"? I don't want to antagonize him, but at the same time I think it's a real shame that people who I know have potential are dropping the class, because they can't take it.

Mike Swieton
Saturday, November 10, 2001

Speaking as someone who actually works at a college, in the UK...

Well on the assumption that the instructors *want* to do a good job, they would welcome being told they needed to explain things further, or at least the ones I work with would welcome that.

I'd suggest that you approach your instructor as a group, if possible, and explain that you all feel you need further assistance with a topic. Don't make it a blame thing, e.g. "you taught us badly", or "we don't understand" but simply say you all feel you need an area covering in greater detail.

Also, if all else fails and they really are *that* bad, most places will actually have a formal procedure for students to express concerns about a course, a facility, or an instructor.

Of course this formal procedure may be hidden away in the back of a rule book somewhere and it may not be the simplest thing in the world to implement. This is is probably on purpose to discourage frivolous complaints, but it should exist.

Robert Moir
Sunday, November 11, 2001

I think you have to be careful to distinguish between those who are dropping out because the instruction is bad, and those who are dropping out because they "can't get it".

To say that some people "can't get it" sounds horribly elitist - but that's the way it is. I could never paint as well as Van Gogh, no matter how hard I worked - its possible I could do a passable job, but I doubt even that. It is the same in computer programming, and especially in computer science - some people just don't have brains that work in the algorithmic manner that all our current programming languages use. Likewise, some people find the process of abstraction very difficult. A friend of mine, who tutors mathematics, reports similar experiences: You can show people, step by step what to do in a particular problem, but they can't generalise the method to new problems.

To bring this back to your point: Roughly 30% of students fail the introductory programming course at my university. Of these some are the usual "slackers". But the vast majority of these people, through no fault of their own, just don't get it. I have no idea if your course is significantly harder than ours - I know ours has been dumbed-down, removing much of the work on data structures. Computer programming, especially the more theoretical aspects of it, is a way of thinking alien to much of the traditional school curriculum - even the sciences, at high school level, don't demand as precise a thinking.

I'm afraid I don't know the technical terms here (dependent and independent variables?), but as a final, additional, point:

I think you have to be very careful to bear in mind that those students who are studying second-year and later courses are those who understood enough of the first year courses to pass.
To compare the students taking the later papers with all of those taking the first papers is obviously going to skew the results against the earlier papers, since those taking the later papers have been "filtered' by the first few, so that they include only those who are capable of understanding the original, and hence/presumably the later material.

Christo Fogelberg
Wednesday, November 14, 2001

Christo's absolutely right.  Lower division CS courses are giant weeding machines.  They separate the people who "get it" from those who do.  I went to The University of Texas at Austin, having one of the best CS programs in the nation.  The freshman course at the time, 304P, would flunk something like 30-50% of the students who took it.  The second semester, 315, bounced out 30% of the remainder.  If you could get through the third semester, 410, where they taught assembly langauge, they'd turn around and hit you with 328 (advanced data structures) and 336 (algorithm analysis).  After that, they figured you might just be able to make a living in computers, and you were allowed to stay.  :-)

304P was highly organized and regimented.  Self-paced for the most part, though they did schedule lectures for those that needed it.  It felt very much like drive-thru CS.

Actually, I'd expect all lower division college courses to be like that.  The only reason it seems so amplified in CS is that so many people thought that was the career where the money was (which was true).  I worked with a lot of people in the computer labs who were obviously struggling, and would do much better in biology, business, geology, fine arts, etc.

Now for the flip side.  There are definitely a few occasions where the course is decidedly not up to snuff.  Some of the scenarios I encountered involved TAs who didn't share the same native language as their students, and so explaining a concept was really tough.  Even worse were TAs who had their hands so full with their grad school projects that they couldn't devote enough energy to their teaching.

In your situation, Mike, it's case-by-case.  It could be that the course is bad, or it could be that the students just aren't cut out for CS.  As long as CS looks like an attractive career, you're going to see classes where half the students will never "get it".  I couldn't say which is true without being there.

As for remedies, if it's a language barrier or an overworked TA, your best bet is to have the students bootstrap themselves via group study.  One of the nice things about CS is that there's a handful of students every year who have been "getting it" since they were twelve.  If you can get those to overcome their innate introversion :-) , they can be a huge help to the rest.  Even without them, though, a group of about ten students studying together can accomplish amazing feats of learning, and if they're able to overcome a bad curriculum through determination, they deserve that course credit anyway.

Paul Brinkley
Wednesday, November 14, 2001

In my view, you are paying to "...get it..." and so the instructor has an obligation to ensure that you get it and you have an obligation to inform the instructor when you are not getting it.

Joe Nieters
Thursday, November 15, 2001

"You are paying to '...get it...'" - not quite, IMO.  The student is paying for the instructor to take his or her best shot at helping the student "get it".  What's more, the instructor is obligated to a certain number of hours spent helping, and any more than that is at the instructor's discretion.  But if things have progressed to the point where the teacher's and student's obligations need to be contractually expressed, then something has gone horribly awry.  If a student is worried about whether he's getting enough education for his money, then chances are that he's not going to be focused enough on the material to be able to learn it.

I remember having a horrible time getting through my college literature, history, and government classes.  It wasn't until I was about three credits away from my second bachelor's degree that I understood what the instructors were trying to do with the writing assignments.  I kept trying to treat those courses like math/CS courses, where all I had to do was use concrete theorems to write proofs, or use concrete rules to write programs.  There's no such thing as a concrete theorem in liberal arts, and so I kept having trouble.  I kept letting the instructor know I was having trouble, but neither of us knew what my problem was at the time.  The instructor probably didn't understand math like I did, and it's probably hard to diagnose how I was thinking from the essays I wrote.

Paul Brinkley
Thursday, November 15, 2001

<"In my view, you are paying to "...get it..." and so the instructor has an obligation to ensure that you get it and you have an obligation to inform the instructor when you are not getting it. ">

Hmmm..  You are paying to be given a shot at getting it.

Your instructor has an obligation to ensure you are given every chance and assistance with getting it. They are *not* being paid to "ensure that you get it", because that is not always possible. They are being paid to try.

I'd agree that a student has some obligation to provide feedback on a course - for example, whether or not they get it - if they expect to get the best out of it.

The obligation is to yourself, not the instructor or the course or your classmates or the people providing the course. The people who work in starbucks may pour you the best cup of coffee in the world (stop laughing, work with me here!) but they are not obliged to make you drink it. Same with students, I can do my best to make sure a student "gets" what I am trying to teach them but sometimes they just won't get it no matter what I do, and that isn't always going to be my fault.

Robert Moir
Thursday, November 15, 2001

Are we talking about teachers or subject matter experts? 

I agree that paying to attend a seminar to hear a subject expert speak about, or present something would not imply that you are ensured to walk away with a clear understanding of that subject.

However, assuming that an institution sets class prerequisites properly and screens students appropriately then every student should be in a position to meet the goals of the class.

Of course there will be exceptions that prevent a student from meeting her/his obligation to put forth the effort to learn the subject.  Aside from these exceptions, I still feel that the school or instructor has the obligation to ensure that student's do indeed "get it".

Is not the joy of being a teacher in the teaching itself?  Should teaching be without challenges?  How can a teacher grow her/his teaching skill said teacher is not willing tackle the challenging student?

Joe Nieters
Friday, November 16, 2001

[Apologies if this gets posted twice; the "Post Message" didn't work last time, I think.]

I'm talking about teachers, not merely subject matter experts.  I agree with your point that teaching requires more commitment to students than guest lecturing.  My point is that even figuring that in, there exist many students who simply can't be taught.  Students take courses for various reasons.  Some are interested in learning the material; some are obligated to take a particular course; some are just taking courses to fill the space between parties.  It would be asking a lot of even a very good instructor to teach C++ to a Joe Six-Pack who sleeps through the few classes he even shows for.

This introduces a fine line, to be sure.  It's hard to tell in general whether a course is lacking because of the teacher, or because of the student.  Given that, I could offer the following rules of thumb, based upon my college experience.  Colleges probably have a more formal version of these rules; after all, they do this professionally.

An instructor in a lower-division course should succeed in teaching at least 50% of the class.  LD courses are often taken by students who don't know what to take, or who are fulfilling a requirement for another major.  I could further qualify this, then, and say at least 25% of the undeclared students ought to do well in a reasonably organized LD course, 50-60% of the "prereq-fillers" should do well, and 70% of the students declared in that major should do well.  By "do well", I'll say C or better.

A reasonable upper-division course should succeed in teaching at least 75-80% of the class.  UD is for those who got through the LD grinder, and who are now figuring out what sub-discipline to take.  You might know you want to be a CS major, and still not know whether you want to do networking, graphics, cryptology, etc.  So a few students will take the wrong course by mistake, but chances are they'll at least get by.

Grad school courses ought to have near 100% effectiveness.  By this point you're talking seminars, and a lot of one-on-one work between faculty and students.

How does this jibe with the rest of you?  Are these straw-man figures legit or bogus?

Paul Brinkley
Monday, November 19, 2001

*  Recent Topics

*  Fog Creek Home