COMPTNG 10B
Intermediate Programming
Description: Lecture, three hours; discussion, one hour; laboratory, eight hours. Requisites: course 10A, Computer Science 31. Object oriented programming in C++; operator overloading; memory management, copy and move constructors, copy and move assignment operators, destructors; iterators; data structures and their implementation, linked lists, binary search trees; inheritance and polymorphism; recursion, algorithms for sorting and searching. P/NP or letter grading.
Units: 4.0
Units: 4.0
Most Helpful Review
Winter 2019 - TLDR: This guy sucks in every way possible. DO NOT take him. For the record, this is the first time I wrote a review this long because I feel the need to share how much this professor annoyed me throughout the quarter. I will just list out some facts about this professor, unbiased. FACTS: 1. His English has a strong accent, and his wordings show the exact opposite of proficiency in terms of explaining any of the stuff. 2. His slides are basically a copy either from cplusplus.com/doc/tutorial/ or something from stackoverflow; he rarely puts the effort in making a proper slide. 3. Aside from being a copy, his slides are usually just a bunch of white background with tons of words on them. 4. In the so-called "Lectures", he mostly just read whatever is on his slides out loud, with minimal explanations sometimes to the easy parts of the concepts, and the hard parts are often ignored. (FYI, this means his lectures are basically book-reading sessions with whatever he copied from elsewhere) 5. He does not emphasize on important stuff, but would spend 15 minutes talking about trifle matters at the start of the class, like how many people submitted the homework late or how he will not tolerate that in the next time, and the same speech again the next time a homework is due (FYI, it is a 50 minute class). 6. His class is the least engaging (which you probably guessed from earlier), but it seems that he does not even make attempts to make it slightly more engaging. 7. His code-writing demo often does not work, sometimes even when he was doing copy and paste from other's working codes for mysterious reasons. 8. He copies homework problems from the Internet, mostly from leetcode. 9. His homework questions are really unclear, the harder part would be trying to figure out what he wants (I will provide an example later), and when you inquire about the homework questions, his standard explanation for every question is simply "whatever you want" with/without the extension of "as long as it works." Example for #9: He wanted us to write a void function reverse(string str1) to reverse the order of characters of str1, and return a string str2, consisting of the reversed string. For those who have no idea what I am talking about: a void function is not supposed to return anything, so this is contradictory. And when inquired, the professor replied "whatever you want", leaving the class in confusion. 10. Aside from unclear homework requirements, his homework can also have changing requirements. (Example below as well) Example for #10: On the first class, he published the homework that required us to program a non-interactive tic-tac-toe game (one with 2 human players, without an AI), and two days later, he wants an interactive version (one with AI and just 1 human player), which caused a widespread panic among the class, and just when everybody has either completed the job or half-way through, he says the homework only ask for a non-interactive one. Aside from that, when he is inquired about what he wants the day before deadline, and he used the standard explanation as above "whatever you want," and in the end many people got a bad score because the grader find their works having not passed all test(while some were intended for god-knows-which version) 11. He can be very obvious when he favors a student or dislikes one. 12. He refuses helping students debug, not even a short glimpse in most cases. 13. His tests are not absurdly hard, but be advised that he may include stuff that is barely went through or never thoroughly explained and put a somewhat heavier emphasis on them. 14. He can take points off from an answer that would compile and would fulfill everything required in the question when the answer is not identical with what he planned in mind. 15. He can refuse regrading a test paper while it is obviously graded wrongly 16. He can refuse explaining something on the test that is not necessarily explained previously, and tell the student to "google it" (and I quote "google it" from his office hour) 17. I was once in his office hour and another student asks for a regrade on a specific question on the final, and he not only refused to look at it, but also said that he will take more points off from the student if the student insisted him to take a look at the answer and the answer is wrong. He explicitly said to that student that "This is a gamble." (which is absurd because a). how is it reasonable to take more point off for a regrade request? and b). This whole "gamble" thing just scares me because this implies that there is no formal rubric for the partial credits and the grading of the final)
Winter 2019 - TLDR: This guy sucks in every way possible. DO NOT take him. For the record, this is the first time I wrote a review this long because I feel the need to share how much this professor annoyed me throughout the quarter. I will just list out some facts about this professor, unbiased. FACTS: 1. His English has a strong accent, and his wordings show the exact opposite of proficiency in terms of explaining any of the stuff. 2. His slides are basically a copy either from cplusplus.com/doc/tutorial/ or something from stackoverflow; he rarely puts the effort in making a proper slide. 3. Aside from being a copy, his slides are usually just a bunch of white background with tons of words on them. 4. In the so-called "Lectures", he mostly just read whatever is on his slides out loud, with minimal explanations sometimes to the easy parts of the concepts, and the hard parts are often ignored. (FYI, this means his lectures are basically book-reading sessions with whatever he copied from elsewhere) 5. He does not emphasize on important stuff, but would spend 15 minutes talking about trifle matters at the start of the class, like how many people submitted the homework late or how he will not tolerate that in the next time, and the same speech again the next time a homework is due (FYI, it is a 50 minute class). 6. His class is the least engaging (which you probably guessed from earlier), but it seems that he does not even make attempts to make it slightly more engaging. 7. His code-writing demo often does not work, sometimes even when he was doing copy and paste from other's working codes for mysterious reasons. 8. He copies homework problems from the Internet, mostly from leetcode. 9. His homework questions are really unclear, the harder part would be trying to figure out what he wants (I will provide an example later), and when you inquire about the homework questions, his standard explanation for every question is simply "whatever you want" with/without the extension of "as long as it works." Example for #9: He wanted us to write a void function reverse(string str1) to reverse the order of characters of str1, and return a string str2, consisting of the reversed string. For those who have no idea what I am talking about: a void function is not supposed to return anything, so this is contradictory. And when inquired, the professor replied "whatever you want", leaving the class in confusion. 10. Aside from unclear homework requirements, his homework can also have changing requirements. (Example below as well) Example for #10: On the first class, he published the homework that required us to program a non-interactive tic-tac-toe game (one with 2 human players, without an AI), and two days later, he wants an interactive version (one with AI and just 1 human player), which caused a widespread panic among the class, and just when everybody has either completed the job or half-way through, he says the homework only ask for a non-interactive one. Aside from that, when he is inquired about what he wants the day before deadline, and he used the standard explanation as above "whatever you want," and in the end many people got a bad score because the grader find their works having not passed all test(while some were intended for god-knows-which version) 11. He can be very obvious when he favors a student or dislikes one. 12. He refuses helping students debug, not even a short glimpse in most cases. 13. His tests are not absurdly hard, but be advised that he may include stuff that is barely went through or never thoroughly explained and put a somewhat heavier emphasis on them. 14. He can take points off from an answer that would compile and would fulfill everything required in the question when the answer is not identical with what he planned in mind. 15. He can refuse regrading a test paper while it is obviously graded wrongly 16. He can refuse explaining something on the test that is not necessarily explained previously, and tell the student to "google it" (and I quote "google it" from his office hour) 17. I was once in his office hour and another student asks for a regrade on a specific question on the final, and he not only refused to look at it, but also said that he will take more points off from the student if the student insisted him to take a look at the answer and the answer is wrong. He explicitly said to that student that "This is a gamble." (which is absurd because a). how is it reasonable to take more point off for a regrade request? and b). This whole "gamble" thing just scares me because this implies that there is no formal rubric for the partial credits and the grading of the final)
AD
Most Helpful Review
So a little background info: I had Wittman for 10A and 10B. I thought he was pretty easy in 10A. 10B is a whole different game. The homeworks took WAYYY longer. In 10A he likes to feed the code for the harder programs; in 10B he gives you maybe a little bit of the code and makes you do tons of changes for the homework. I would spend literally hours just trying to get my programs to compile because it was just harder in general. Extra credit? Forget about it; almost always not worth it. I remember I finished my homework two days early and decided I would try the extra credit and ended up spending like six hours trying to earn one more point -_-. (Also it's a good idea if you really want to try the extra credit to backup your cpp file after you get it running so you can abandon the project if you mess it up :-| But I hear I'm the only one who didn't already know this) Don't expect any curves either. His exams are not that hard and he has so much material to practice with that the medians are something like 90% (I think one was 43/50 and one was 47/50...). I also get the vibe that the better the class does on the first two midterms the harder the final is.. because this quarter his final was a bit of a killer. Like with all your classes just make sure you follow the directions on the exam very carefully because it's really annoying to have to redo some of the questions. Wittman is literally the best possible teacher you could have for this class; he's patient, articulate, organized, and amusing. He really puts a lot of effort in to make sure that students learn the material, and I think you should definitely take Wittman if you have to take the class at all.
So a little background info: I had Wittman for 10A and 10B. I thought he was pretty easy in 10A. 10B is a whole different game. The homeworks took WAYYY longer. In 10A he likes to feed the code for the harder programs; in 10B he gives you maybe a little bit of the code and makes you do tons of changes for the homework. I would spend literally hours just trying to get my programs to compile because it was just harder in general. Extra credit? Forget about it; almost always not worth it. I remember I finished my homework two days early and decided I would try the extra credit and ended up spending like six hours trying to earn one more point -_-. (Also it's a good idea if you really want to try the extra credit to backup your cpp file after you get it running so you can abandon the project if you mess it up :-| But I hear I'm the only one who didn't already know this) Don't expect any curves either. His exams are not that hard and he has so much material to practice with that the medians are something like 90% (I think one was 43/50 and one was 47/50...). I also get the vibe that the better the class does on the first two midterms the harder the final is.. because this quarter his final was a bit of a killer. Like with all your classes just make sure you follow the directions on the exam very carefully because it's really annoying to have to redo some of the questions. Wittman is literally the best possible teacher you could have for this class; he's patient, articulate, organized, and amusing. He really puts a lot of effort in to make sure that students learn the material, and I think you should definitely take Wittman if you have to take the class at all.