Monday, May 30, 2016

Class Evaluations, Again

I've not been blogging much, but I have an excuse now that class evaluations have arrived.
  
By posting about the evaluations, the students know I read them.  And perhaps if any future students see this it will inspire them to try to make helpful comments, or at least fill out the evaluation.  This semester I taught the undergraduate Algorithms and Data Structures course, which at a bit over 170 students is the largest class I've taught at Harvard (and the largest the class has been since I've been here).  Let's see how I did on a class this big.

But before beginning, a word from our administration: 
Again this semester, some students may have accessed their course grades before completing their course evaluations. When this has happened in the past, we determined that the effect on evaluations was statistically undetectable, if any. Nonetheless, we wish to assure you that we understand that this semester's Q evaluations will not be 100% comparable to past terms and that the administration will take that fact into consideration when viewing the data.
If anyone can decipher that bit of bureaucratese for me,  please do.  (I admit, I found it amusing.)

Now, my favorite comment of the year:
Mitzenmacher can be a bit intimidating at times (I'm pretty sure he's the only professor under 40 years old whose class I've taken that I'm not on a first-name basis with)...
Whoever you are, you anonymous student you, it's wonderful that somehow you think I'm still under 40.  That was, well, a while ago...   (Also, you can call me Michael.  Mitzenmacher is hard say, and spell.  Maybe calling me Michael will make me seem less intimidating.)

A close second:


Take this course if you want to be good at CS. I also got a girlfriend out of it, so if you're looking for love, this is definitely the class you should take. Chicks dig algorithms.
Yes, they do.  And congratulations.  But seriously, please don't call them "chicks".  Some women find the term offensive, and I would like women in the class to feel welcome and comfortable.  It also makes you seem like you're living in the wrong decade.      

Another good one.  

Definitely the legend his former students make him out to be.
Just to clear, I interpret that as at best a neutral statement, not necessarily a positive one.  (The rest of the evaluation, I think, backs my interpretation.)  On an obviously more negative note: 

He is sarcastic and unhelpful. He even goes out of his way to be snarky and rude to students...
I appreciate the concern, but don't worry, I'm not going out of my way at all... the sarcasm and snark really just come naturally!

And apparently, it's rubbing off.  

This course could be improved by having longer and more difficult problem sets. Having tougher exams would be better too.
Hey, I don't think you've heard.  I'm supposed to be the sarcastic and snarky one. (The student's whole evaluation was like this.  Very funny and original -- surprisingly, nobody's ever done that before, that I can remember.)  At least a partial explanation for the evaluation above, perhaps:  
Piazza was riddled with dumb anonymous question (e.g., "Should my program handle negative ints?" "No, as stated in the assignment."). I think it should be course policy to delete these questions rather than give terse answers; each one causes hundreds of people to receive email notifications and spend tens of seconds digesting the poster's helplessness. I estimate that each poster is choosing to waste about two hours of our collective time rather than reread the assignment or email a TF.
Thank you for this comment;  it's a rare comment that addresses a challenging issue.  I continue to be ambivalent about Piazza.  It's very useful for students to be able to ask questions and get reasonably timely responses.  On the other hand, the ease of being able to ask questions leads to the issue you raised, as well as other similar problems.  (Students don't see many private questions of the form, "Is this an OK answer to this question...")  I'm not sure deleting the question is the correct response;  I can only imagine the reaction.  Already, people find my terse answers to some questions off-putting, or even "sarcastic" and "snarky"....
  
Now for some other useful comments.   
better handwriting would be nice.
Not the first time I've heard that complaint, although surprisingly it was rarely mentioned this year;  I did try to be better at the board.  But it's good to be reminded, frequently.    

Maybe integrate into Canvas or disregard it completely, it was weird having some stuff in one place and other stuff on the other.
Thank you for the useful comment.  Canvas is the tool we are being pushed at Harvard to use for course management, and for a class of this size, I felt forced to use it;  having students e-mail in assignments just wasn't going to be functional.  But Canvas really, really sucks, and caused at least as many problems as it solved (probably more).  I'd have liked more comments about Canvas, or really some advice on whether it's worth using at all.  

An odd comment: 
really sucks not having a good textbook for those of us who learn better on our own than in lecture;
Comments like this always make me wonder.  I do not require a textbook, but recommend both CLRS and Kleinberg-Tardos if students want one;  both books line up reasonably well with probably 2/3 of the course.  Did this student buy one of those?  I don't know.  I also find most things I teach have pretty good articles available on Wikipedia.  Many students in their comments appreciated the lectures (and the lecture notes), but for those who don't, there are certainly other resources available.   
  
Now some good responses to the question:  What did you learn?  How did this course change you?
Algorithms are fun! I'm good at theory!
Awesome!   
...I now view computer science as more than just coding. It is the art of problem-solving.
Awesome! 

Some truth in advertising:
Very useful course for anyone who wants to learn how to solve problems in the most computationally efficient way possible. That said, this course is not for everyone. Some will find it difficult.
Some, indeed.  Perhaps I can find another student who can clarify the above description.... 
This class is insanely hard (like really, really, really hard); don't let anyone tell you otherwise. I spent maybe 40-50 hours per week on the psets, and the tests (the midterm and final) were brutal.
To be fair, I don't think most students are spending 40-50 hours per week on the problem sets, and the self-reported numbers suggest not also.  But point taken, the class is hard.  (Some will find it difficult.)   

As usual, the overall summary is that the reviews contain a mix of positive and negative.  Let's end with some more positive ones, so I can think positive thoughts about the fact I'll be teaching this very large class again next year: 
Really interesting course material presented clearly. There was a nice balance of breadth and depth, and I liked the focus on randomized algorithms and the last couple lectures on topics tying the course together. Such a good class - thank you!
 No, no -- thank you!
Mitzenmacher is very good at responding quickly on Piazza, and often his responses are quite funny.
Thank you!  Some people apparently don't seem to get our sense of humor.  Same thing happens at home with the wife and kids -- they don't think I'm funny either.  
Professor Mitzenmacher is a great lecturer and provides lots of insight into algorithms. Problem sets are very well written, and most if not all problems are very thought-stimulating and are an apt level of difficulty. I also enjoyed the programming assignments -- it was great to physically code things and get a hands-on approach to the algorithms we learned.

For programming assignments 2 and 3, I would have hoped that Professor Mitzenmacher grade them as well--the TFs seem to be following a rubric and it is difficult for them to reward other inisghts and rather take off many points for more minor issues.
Thank you for the nice comments!  I'm glad you were happy with my grading of the first programming assignment, but you really want me grading all of them???  (Hmmm... actually, maybe I'll think about grading PA3....)
Lastly, professor Mitzenmacher is incredibly nice and fun to talk to if you get the chance.
Thank you!  But please, don't let the secret out....

Let's end with this summary, answering what you would want to tell future students:  
You probably have to take this. Cheer up! First of all, it's not nearly as bad as everyone says...
Thank you, I think?***



(***This last backhanded compliment reminds me of a joke from when I was a kid, quoting from https://en.wikipedia.org/wiki/F_Troop
Another running gag involves dialogue between Sergeant O'Rourke and Agarn. In many episodes O'Rourke says to Agarn, "I don't know why everyone says you're so dumb". After several lines of dialogue later, and occasionally after a commercial break, Agarn finally replies, "Who says I'm dumb?".
 )

Wednesday, May 25, 2016

SODA Information

Phil Klein passed on that there's a delay at SIAM in getting the SODA 2017 CFP up, and of course we want to get out the relevant information out to the community.  So he asked me to post the following:   

SODA 2017: The official SIAM symposium webpage is http://siam.org/meetings/da17/. This page does not yet have the call for papers. (My understanding is that the call for papers has yet to be approved by some SIAM staff who are out this week.) The deadlines are as follows: July 6 (short abstract and paper registration), July 13 (full submission).

The symposium will take place on January 16-19, 2017, in Barcelona, Spain.

For now, you can visit http://cs.brown.edu/~pnk/#soda17 for the basic information (deadlines, submission site, and program committee).