Programming Languages: C++ · Computer Science
See other reviews for workload. Although the course focuses on C# it can be taken as a general introduction to .NET
4 Homeworks (average about 2-3 hours each), Final Exam of reasonable difficulty
3 homeworks, only two were real programing assignments [40% of grade]. A final project of your choosing including a manual, help docs, unit tests, and a short presentation [60% of grade].
5 short programming assignments graded /10, 1 final project that builds on those assignments.
The work was fun, but its definitely too much for a one credit course - especially when you are not getting an A for it!
Five programming assignments, of average length.
Somewhat demanding. Homework each week, but if you had a concrete understanding of the language and paid attention in class, then the assignments weren't too bad.
A long problem set every single week, and a final project where he expects too much of you.
Although I can see how the other reviewers got to the opinions that they got, I don't think that they fully describe him. Simon is a smart guy who is very knowledgable about what he's talking and this usually includes insight as to what is good to use outside of academia (thanks to his industry experience). On a personal level, I wouldn't recommend him as a good professor. Long story short he generally lacks patience with students and tends to look down on them. He's the only professor I've seen at Columbia who curses regularly in class. But if you can look past his teaching style, you will be able to learn some things that you can use in the real world out there. Overall, I'm happy I took the course. In the summer following that semester it absolutely paid off as I used .NET during my programming internship. Noone on the team knew what .NET really is so thanks to Simon's class I was able to stand out.
This is a professor that comes painfully close to amazing. He's a fantastic lecturer and actually kept my attention for most of the gruelling 2 hour sessions. He's funny and has great talent at explaining concepts. The homeworks are very well put together, as they challenge the student just the right amount for what you learn. Unfortunately, outside class he's not quite as good. He seemed to be having a busy semester, but his turnaround time for grading homeworks, responding to emails, and sending out final exam grades were far longer than they should have been. I'd definitely take another class with him, as there are weaknesses, but they're in the non-essential areas of teaching.