3.3
Quality3.4
Difficulty60%
Would Retake140
Reviews60%
Would Retake
140
Reviews
Rating DistributionOfficial
5
44
4
30
3
22
2
18
1
26
What Students Say
“Gary is definitely a nice guy, but the material he taught in class was barely related to the content on his exams, which were primarily trivia and edge case questions for programming that do not reflect actual programming skill”
CS302 - 2.0 rating“The best professor in CS 302”
CS3O2 - 5.0 ratingClass Info
Online Classes
100%
Attendance Mandatory
45%
Textbook Required
7%
Grade Predictor
Your expected effort level
Predicted Grade
A-
Grade Distribution
Common Tags
Rating Trend
Declining
-1.18 avg changeRatings by Course
CS3O2
5.0
(1)COMPSCI302
5.0
(2)CS302
4.1
(10)CS300
3.7
(34)CS400
3.5
(51)Difficulty by Course
CS540
5.0
CS354
4.0
COMPSCI400
3.7
COMPSCI302
3.5
CS300
3.4
Reviews (140)
The best professor in CS 302. He teaches clearly, and the materials are taught in a more applicable way.
Absolutely hardest professor I've ever had. He makes lectures quick but they are not worth going to. Homework is insanely difficult. Do not take him.
Pretty decent lecturer. People complain WAY WAY WAY too much about the class and blame it on the professor. He's a nice guy that is (too) willing to answer questions during lecture and might end up taking half the lecture to settle one person's qualms. Its not fair to say he's easy or hard as all of the CS302 sections are run the same, gradingwise.
As a Comp Sci course, programming homework is really necessary. I do not quite agree with the previous comments that there is TOO MUCH homework. On the contrary, I believe that if you could read through the clear guidelines, you may find it easier to finish the HW. In addition, I think Dahl is the one who teaches the best.
Do not take this class unless you have some knowledge about programming already. The claim that it is 3 credits worth of work is a complete lie, this class is insanely time consuming and without a doubt the hardest class I took this semester.
Great professor, really helpful office hours. I felt like many of his lectures were useless especially in the beginning of year because the homework covered it well. However, it is a lot of work for a 3 credit class.
He's pretty good
People complain a lot about this class, but it wasn't so bad. Go to lectures, and try to pay attention and you'll be golden, and if you have trouble on one of the programming assignments, go to the TA consulting hours, they will help you immensely.
He's a pretty good professor. His lectures are concise and he never went off task, not even once throughout the whole semester. The homework, reading, and labs are a lot of work, but he cuts everybody some slack with those. He's very accessible, and will answer everyone's questions at the start of every lecture.
Solid choice for a professor. Explains very well. Many people don't listen to work on CS, but if you listen to him, trust my, he gives you good advice to make your programming projects a lot faster. A lot of homework.
His class was a great into to programming and is the reason I'm studying computer science now. People who like programming usually like his class and it's not to hard. But if you're not interested and can't push yourself to study, be ready to fail the first midterm.
Gary was a good professor. The course material is so basic in 302 that it sometimes makes it hard to stand out as a good professor. He mainly taught by going over code examples in class about the things we were currently covering. I would have preferred a few more slideshow lectures, so if there are two instructors for 302, maybe go to both.
Gary gives really good feedback and instruction. He made the material very accessible for me even though I had no prior programing experience. Tests were pretty difficult and homework can take awhile. However, homework was very problem solving oriented, so most people found it a lot more enjoyable than other classes' homework.
Gary is definitely a nice guy, but the material he taught in class was barely related to the content on his exams, which were primarily trivia and edge case questions for programming that do not reflect actual programming skill. Getting a straight answer out of him at office hours was also hard, usually he would just tell you to think about it.
Honestly, I am so bored. I came in to this class with AP Computer Science A. His lectures are not worth showing up to unless you would like to waste 3 hours a week. He goes over very basic content that is not on the exam or the weekly projects.
Professor is very nice and teaches things in a clear manner. A weekly assignment is presented that is related to the topics discussed in class. The weekly assignment is pretty interesting and is a good practice for midterms and for real application of materials taught in class. Exams are not bad; if you study for it, you're on the right path.
Gary takes lectures slow to make sure that everyone understands the material before proceeding. Even long lectures with him feel short and easy.
I think Gary is probably the best professor I have had at UW - Madison. He's pretty respectable and likes to help out his students. Just be aware that this class will require you not only to pay attention in class, but work outside of it. His review lectures before tests are nice, but you need to expand on that and study yourself.
Well, I came in with a-level cs and I didn't study Java before. This course is absolutely hard for me. It is not about him but about how this course is designed. We use zybooks as textbook and the content is far to easy compare to the weekly program. VERY HIGH Workload, atleast for me. I don't really think his lectures help a lot but he is kind.
You are assigned weekly programming assignments which usually arent hard, but just a big pain in the ass. Lectures are very clear and and he is receptive to questions. I found exams difficult to study for with no practice problems.
Awful professor. The class was so boring and Gary did not go over much content that would be on graded assignments and exams. The exams were challenging and Gary did not give us review material to help us prepare for the exams.
Very clear and informative lectures. Gives helpful answers to in-class questions and seems genuinely concerned about your understanding. Would definitely take another course with Gary in the future.
Always clear when answering questions. Will definitely take again
Pretty standard lectures. No practice tests or review material for exams, and you are not allowed to take your exams home. This is lazy teaching. Studying your exams is a great way to learn from your mistakes, and they have deprived students of this just because they are too lazy or uncreative to make new exams. Otherwise I learned a good amount.
Gary is a nice guy that obviously cares a great deal about teaching computer science to UW students. He's great at explaining complex concepts and he's a joy to listen to. His lectures can be a little example-heavy, meaning that it's sometimes easy to get lost, but the online study materials help make up for that.
Many people seem to have mixed thoughts about Gary and I think this is because many people confuse the class with the professor. Gary is a top-notch professor that is very caring and presents the material well. The class CS300 is rather difficult, but that is not Gary's fault, rather the structure of the class. Great professor, difficult class.
Gary is an awesome professor. He is a very nice person and I personally prefer his code examples and his way of using comments to teach it than slides. The class is difficult but he helps make it easy. Try to take his lecture.
He is a very nice person who takes effort to make you understand all concepts. Probably one of the better professors in the university. The projects are well designed and clear.
Computer science can't be taught super well in lectures. It's something that requires your skills to develop of it rather than learning any material from lecture. With that in mind, Dahl was a decent prof. Most people didn't pay attention to lectures and did other things on their laptops though. Definitely cares about students succeeding.
Gary's lectures aren't that bad however it is difficult to read what is on the screen unless you are in the front. He seems nice. There are 3 exams of 10%, 15%, and 20% along with 10 weekly programs each worth 5% and 1 drop. Zybooks is used and so is tophat. The tests and programs are difficult but the programs are doable if you go to consulting.
Gary is the man! He's a great lecturer and covers the material well. Super helpful when answering questions - you can tell he's very qualified. He talks kind of slowly, which could be a good or bad thing depending on how quickly you learn - for me, long lectures sometimes got a little boring.
Like others have said CS isn't taught super well in lecture. I ended up not going to class and just sitting on TopHat - but Gary does a great job of trying to make it interesting. Always super responsive in emails and willing to talk in person. Overall a great prof
Gary is a very solid choice for CS300. He does a pretty good job of explaining and visualizing concepts in lecture. The programming assignments he writes are much easier to follow than Kacem's. You can afford to skip a few lectures there, it's not highly weighted. Tophat and Zybooks are used and mandatory for the class.
Gary is so boring to listen to, go to Mouna's lectures if you can if you get stuck with Gary
Lectures for this type of class are useless and he was boring but it is hard not to be. With that being said, he made no effort to answer piazza questions with anything but open ended return questions. Gave absolutely no study resources and told us the best way is to "create your own problems". Terrible experience with professor but good class.
Gary was an awesome professor. Anyone who said otherwise probably wasn't really listening to what he was saying. He teaches you by making you think of the answers, instead of just telling you the answers. At first, I hated that, but ultimately it helped me learn way more. I hope to have Gary more in the future.
This is where you are introduced to the computational thinking and real computer science. Hope he could teach CS400 in the future!
Gary's a nice guy, always responded to emails and was accessible outside of class. His lectures are dry, but you'll be teaching yourself most of the material in this class anyways, that's just CS. I will say that I wish he uploaded more detailed diagrams/examples to canvas -- I ended up relying on Mouna's lecture notes and Zybooks for exams
Dahl does a good job in lecture of covering content, and he uses interesting graphics to explain CS concepts. CS300 has a project almost every week, with many being optionally group projects with another person. The exams are straightforward if you pay attention in lecture and there are TA's available for help with the projects.
EVERYTHING that you might need to know for programming projects or exams will be covered pedantically in lecture. Gary doesnt get enough love for the thorough, well-orchestrated lectures he performs. The only students who might not thrive in this course are those unfamiliar with Java programming.
He's an amazing lecturer who works hard to make the sometimes boring content as interesting and interactive as possible. The programs can be pretty difficult, but the program grading and exams are very fair.
Gary is great. One of the best professors I have ever had.
There are two main components to CS200 and CS300, coding projects and tests. The coding projects can be very time consuming and it's definitely important to leave time to do those, but if you don't procrastinate you can do well on these. Tests are very difficult to study for as there are no effective provided resources.
If you don't have previous coding experience, don't take Gary. Gary doesn't have any form of online notes or lecture slides, and in class he doesn't teach how to do something, he just does it through coding and expects you to learn yourself. Any questions you ask, he just answers with another question - of which you will likely not know the answer.
Gary's lectures are pretty dull, but he explains the concepts clearly and thoroughly. He's a solid choice.
Prof Dahl's lectures are quite boring and dry to follow. However he tries his best to explain the topics and has lecture notes for you to fill during lectures. He is readily available on piazza to answer any questions and responds quickly and has pretty clear grading rubric and criteria. There is a google form to respond to questions during lecture
Great at explaining things, his lectures are good and the course is laid out well.
Gary wasn't my initial prof but during COVID my actual prof did really short videos that didn't always help me much. I ended up watching the bulk of Gary's online videos to get through the last few assignments and to study. He is a dry lecturer sometimes but he does explain things thoroughly and clearly. Stay alert and you'll be fine.
This course is not well organized after online due to COVID. But as it is not a hard course, mostly you work by yourself, the lecture is not that helpful as long as you understand the content in zybook. But you need to go for lecture bc of quizzes, Gary is fine and the cs300 itself the course design is not clear.
Gary should be the example for how to run an online course. His weekly schedule is very easy to follow and his videos have a very high production value with a green screen and background music. When I had him in person for CS300, I thought he was a bit boring , but now with 2x speed on his videos, I love him.
His classes itself can be challenging at times, but Gary is an excellent professor and his lectures are the best. Also pretty responsive on Piazza and emails back quickly. Would take a class with him again.
Also took CS300 from him. One of the best professors in UW-Madison. Explanation is crystal clear. You rarely need material outside lectures. All HW is reasonable and gives you great skills. Just choose this guy if you aren't sure which section you want to enroll.
My rating was removed and I don't know why, but anyways Gary can explain concepts well but do not expect to get any sort of empathy or flexible if you email him with a problem. His answer will most likely be "tough luck, you should've known". If everything goes perfect for you, you'll like him, but if you ever make a mistake and try to fix it GL
I also had Gary for CS300, and I will say that his material was much better for higher levels of CS. Gary still tends to not like to show solid code - which I dislike - but he is able to explain the specifics easier in these harder classes. If you are choosing Gary, don't choose him for beginner courses.
Best professor I've ever had at UW Madison. I had him in person and online. In person Gary is super great because he is nice and you can ask him questions after lecture. Pace is just slow enough that you can work on that weeks assignment while he is going over new material without missing anything. Online Gary is also great.. ran out of room
Gary is a great teacher, I think he explains things well in his lectures and does a great job teaching. I've never reached out for help from him but I've heard he's not super great at that but you can usually figure out your problem by rewatching lectures. Overall, he's a great professor for CS and I really liked him.
Gary can be a boring, dry lecturer, but he explains the content very clearly so its easy to understand. There were 4 group projects that counted for 40% of your grade but were easy to do well on. Gary also allows you to access all of the course materials during exams which makes them fairly easy.
Gary is great at explaining things and is very accessible through piazza, office hours, and email. I talked to him quite a bit throughout the semester via email and office hours and he was always so helpful. Also a very cheery person overall. He's a solid choice.
Gary's lectures do a fantastic job at covering everything you need to know for the weekly projects and exams. Just make sure you stay on top of those and you will do fine in the class. He's also very responsive on Piazza and the class is very well organized.
I really enjoyed his lectures. They were a lot shorter than what they would have been in person, and he always tried to make the content kind of fun. The class was super well organized, other than some late grading. Would love to take again
Worst part of the class is the group projects, but if you get stuck with a bad group and contact Gary as soon as you can, he's very helpful and doesn't penalize you. His lectures were super organized and straight to the point. It's also very clear he cares for his students a lot. Class was a little challenging but very fair, learned a lot.
How one changes grading parameters mid way through the semester and fails to realize a lot of students will be negatively affected is beyond me. For 400 you better get the easier roles in the initial projects, or you're destined to lose points while your teammates skate by easily. ACCEPTS 0 FEEDBACK FROM STUDENTS. HORRIBLE GRADING. NEVER TAKE!
He is very involved with the students and seems to care more than the average professor. Class is difficult though, and a lot of the material comes together at some point. Does seem like a LOT more work than a 3 credit class should be, but professor Dahl does make it bearable and somewhat enjoyable.
Gary is one of the best professors I've ever had. He really cares about students' well being and is constantly asking for feedback for how to make the class better. He is really responsive outside of class, which is huge, especially for an online class. HIs lectures are straightforward and not too bad. CS400 is tough, but Gary makes it manageable.
I don't know what to say. This man is a god. No doubt he is the best professor I've had. He really cares about students and adjusts the course according to our feedback. His lectures are pretty good. Assignments really help you learn the concepts. If you have the opportunity to take his class, go for it.
Does not take any input from students. Drastically changes grading to benefit "some" people. Does not put up final grade brackets so you're left wondering what happened. Do not take.
His lectures are really good, very clear.
A large portion of your grade comes from group projects, and my group was terrible. I spent way too much time trying to make up for their lack of effort. Thankfully, Gary adjusted the curriculum mid-semester to be more balanced and he even got rid of the group aspect of the final project. Lectures are clear and concise. My best CS professor to date
Great professor. I had some personal emergencies during the semester and he was very understanding and helped me manage my work. Fantastic at teaching.
Gary is a really good professor and does really care about what he is teaching. The class itself is very hard and he does his best to make it easier. One huge problem I had is that he is not very accessible outside of class. He has really limited online office hours and they go quickly so make sure you get them before anyone else does
At first glance this man struck me as another one of those jaded professors who only teaches because the university makes him, but he actually does care about his students and if you ask him for some help he'll probably be happy to oblige. I would give him a 5 if it weren't for the dead-soul monotone that can make his lectures hard to sit through.
Really caring and understanding professor, but lectures were pretty boring. The data structures we learned about were pretty interesting, but the implementations are hard. Exams were online and multiple choice which was nice. Just hope you get a decent project group otherwise it's a lot of added stress as well. Keep up with the work and it'll be ok
Gary's lectures are second to none. He is very well organized.
I greatly enjoyed Dr. Dahl's lectures. The "fill-in-the blank" notes were also extremely helpful. The only things I would change are perhaps the group projects-- making them open-ended for P2 and P3 really resulted in uneven roles. A more rigid project specification could have helped, as well as more resources to practice syntax and algorithms.
Professor Dahls classes are lecture-heavy. But he makes recording available for everyone to review in case you miss out on anything during his lecture(s). His fill-in-the-blank lecture notes are simple to understand. There are 24 assignments (1-2 per week), 3 projects, and 3 exams.
Gary is a magic man, I used to learn Red Black Tree by myself, which cost over 10 hours. But he can make you understand RBT within 3 Lectures. His Lectures were good organized, notes were printed and displayed in Lecture which was clear to see If you enrolled in another Lecturer like Florian... Maybe skip his and jump to Gary or watch Gary's video
Good Professor. He teaches Red Black Tree very well. You can understand his lectures easily.
This class has been the worst experience I have had with a class at UW Madison. It has single handedly made me dislike coding. In this class you will spend more time trying to figure out how to submit your work then you will actually coding. In addition Gary dahl is just not really an understanding guy. I would not recommend this class to anyone.
Great professor and takes your feedback very seriously. Does a lot of demos of concepts/data structures in class. Tailors the class and makes changes to the course structure according to students' feedback.
Condescending towards students at times. Although he is knowledgeable of Computer Science and tries to explain concepts, he flies through his lectures and doesn't complete the notes, making it easy to misunderstand/follow along. Isn't understanding of situations in group projects since my group was missing 3 people and didn't communicate.
This guy knows what he is talking about and is receptive to feedback.
Professor Gary shouldn't be called a professor. It is degrading to the teaching community to let a man such as Gary be addressed as a professor. Gary is not understanding and is mean. He does not think about the difficulties his students face and is egoist when communicating via email or in person.
Caring and nice professor, doesn't post completed notes so you kind have to take your own notes or rewatch the lectures. Course has weekly programming activities, 3 group projects, 3 Honorlock exams of varying difficulty. The weekly activities build off on what we learn in class. If you need help, use Piazza or go to CS office hours.
Doesn't give good answers to questions or respond to feedback, tests on minute details and brushes over larger concepts he spent longer on. Thinks he's making sure students are paying attention and studying outside of class on specific topics, but is honestly just bad teaching. very limited office hrs including TA hrs. 15% off grade after deadline
Gary's activities take longer to set up and turn in than they do to actually complete because he doesn't post his lecture notes, so you have to write down every character exactly as he says it in lecture. Some test questions are random. TA grading is inconsistent- you will do well if you have a good group and a lazy TA. Teaches concepts well.
Gary is a good professor. He teaches concepts well. I do not like CS 400 though. Group project is horrible and a waste of time and I learned little from them. I also get some horrible team members. The most useful thing I learned from the group project is practicing git and that's it.
Professor Dahl's lectures are quite good at helping you learn concepts and ideas that might be difficult to understand normally, like Red Black Trees, Graphs, Lambdas, etc. and his guided notes are useful for hitting the most important aspects of any particular topic. His group projects and exams are annoying usually, so be weary for those!
CS 400 covers a lot of content over a broad range of topics, but Dahl does good job of teaching them and doing examples in lecture. Homework and projects take a ton of time (More than 300 IMO). Study EVERYTHING from lecture, even smaller concepts, because anything can show up on a test. Kinda passive aggressive on piazza but still helpful
My least favorite professor out of the whole university. Don't take unless you want to be racially targeted.
Good lecturer. Gary's lectures go over course content, especially self-balancing trees in great depth and the tests in CS400 do not stray too far from lecture. As long as you pay attention and do the handouts you will do well since he teaches well.
I paid my tuition, but I didn't learn anything in the most important class for cs major this semester, even though I didn't miss a class! This guy can't give lectures at all, he doesn't even bother to write any notes, there are no useful demonstrations of operations. I went to talk to him, but he insisted that there will be no code in this class!
By far the most overrated professor ever. So many good reviews, only for the teacher to be so trash. His lectures are just 75 minute speeches. He almost never writes anything down. Would not recommend. I used Heimerl's notes and lectures to learn. So if you're a fan of taking notes and having things to actually write down, I'd say choose Heimerl.
I had a pretty good experience with Gary. I sometimes wished the example problems would be worked a little more slowly and in-depth. The projects are not fun, but that's an issue with the CS department, not Gary. The exams felt fair overall.
Gary's awesome. The randomly chosen group members for the projects are horrible though. Some people that take this class are not cut out for CS.
Gary is probably the best professor I had in the CS200, 300, 400 intro series. He is well knowledgable in his field and has well organized lectures. However, the group projects are stressful if you don't have a good/responsive group and you really can't do anything about it.
Gary is super overrated. His lectures cover random topics and ramble on and on whilst missing the core concepts that you'd need to take into your homework. Almost nothing is written down, lecture notes, test concepts, or anything else-- the only resource you have are his 75 minute monologues that have nothing to do with anything.
Honestly an overrated professor. All the class content is taught via lectures that jump through 3 vastly different topics. For example: something new in Ubuntu, MSTs, and HTML. The midterm and finals rely on trick questions and random small details in programming, which is very cheap. You'll find condescending teammates for group projects.
PLEASE READ Honestly do not know how he has a 4.5/5.Gary nor his TAs were any help - I was basically told to go away when I asked for help. Also, it feels like 80% of your grade depends on the group you are randomly placed in. Tests are fair, but Gary is simply not a good lecturer, and I found myself having to learn most of the material on my own.
Dahl is ultimately a solid professor. His lectures are a bit hard to follow because they aren't guided notes. He gives you an outline and bounces all over the place in teaching it. However, he does truly care about his students and if you put in the extra effort to pay attention, his lectures are valuable.
Among the CS professors, Prof. Dahl is definitely one of the better ones. Exams are ~a third of the total grade and the workload matched the credits. However, hmk/exam instructions are nonsensically organized and contain spelling/grammar errors. TAs and Prof. Dahl are also pretty unhelpful at clarifying these organizational misunderstandings.
CS 400 is a mess. The group projects are tragically structured and the TA's are lukewarm. Gary does alright, but he fails to make clear the content on exams - memorize everything. He fails to clearly write steps of algorithms, and instead lectures ad nauseum. It was an OK experience, but not something I would consider doing again.
If you love an unorganized class with unclear expectations for both projects and exams, then this is the one for you.
Both Florian and Gary for CS400, they will give you a terrible 4 month experience writing java codes with super vague instructions and grading. Hate the TAs also and why is the CS department like this? Give super absurd amount of memorizing for final also. Hope he ends his instructor career soon.
Gary Dahl was a good professor. CS 400 has a lot of homework and big group projects in addition to lots of small weekly assignments. I spent a lot of time working on coding for this class. I thought Gary was a good professor to have for this class because he covered content well and was happy to answer questions.
Disorganized. The project specifications are so vague that deciphering them is harder than coding. TAs are confused. You know it's bad when a student posts on Piazza that the project is so vague that they had a mental breakdown and it got over 50 likes and everyone related. Gary was unsympathetic and told them to go to UHS rather than clarifying.
The worst professor I have ever had. I wish so badly I could tell him to his face how awful of a teacher he is and how the school should fire him. The projects are stay up all night, sob every hour, and rip your hair out difficult and there is zero leniency and explanation. They say 300 is a weed out class? No, 400 is. Gary is very bad at his job.
Honestly don't even go to lectures and teach yourself the topics. Gary can't explain anything properly if his life depended on it. Learn the material at the beginning of the week and spend the rest of the week doing the projects/homework. For tests, do a lot of practice problems and review the quizzes. The material isn't hard, the professor is.
This man made my life so difficult. What did I ever do to deserve this.
Gary could quite possibly not only be the worst instructor I've had at this school, but my entire life. The course work and projects are completely disorganized and unguided and his lectures are nothing besides incoherent rambling. I wish I wasn't limited to 350 characters because I could go on forever about how terrible this man is at his job. Run
It is difficult to know what we need to know for anything. The projects are an absolute mess with the writeups usually being incredibly vague. Points get taken off for everything, often things you didn't know about. Gary isn't the worst professor but the course is awful.
worst class i've taken at the UW. vague project explanations, hidden tests which do not test the write up as they explain it, non-contributing partners. quizzes poorly written. learned more about algorithms/data structures from a 3-min video than gary's 75-min lectures. no final exam release, grades are unclear. avoid gary at all costs
I learned a lot this semester. Seriously - this is a great class for tech interviews. I do not think Gary is the worst professor ever in the classroom, but OUTSIDE of class, I had multiple conflicts with him that made me question if I would ever be good enough for this man to even listen to what I was saying. Good luck!
decent lectures, a very smart guy but it was really strict and harsh on students imo, does not give any extensions even under personal circumstances
I wasn't a big fan of how the lecture content was taught, especially when we covered RBTs. Difficult topic and even the TAs did not fully understand it.
CS400 is the worst structured class I have ever taken. The projects are horribly unclear and inconsistent. Also, if you mess one up, it compounds and messes up your future projects (but the feedback takes 2-3 weeks). Gary is an alright lecturer at best. If this class isn't required for your major, I would definitely recommend staying away.
Gary is a decent professor but the class is organized terribly. You will jump around to multiple different topics and learn about a random new thing every week, and this can make it hard to learn topics. However, the class is pretty easy if you look at his lectures.
Honestly, his lectures were so useless. It was him just yapping about already complex topics that I always end up teaching myself the material. The course was so poorly structured too. We would barely learn about the material and then get thrown into a project with vague instructions that I had to spend hours scouring piazza to understand.
It is difficult to know what we need to know for anything. The projects are an absolute mess with the writeups usually being incredibly vague. Points get taken off for everything, often things you didn't know about. Gary is accessible, but more could be done.
Class was structured terribly, and no proper guidelines were set for projects, which docked huge amounts of points in project work. No offense, but CS 300 was way better. The amount of regrade requests I sent were abysmall and there's no curve.
Class was structured poorly, but Gary seemed like a nice guy individually, so if you have to I do recommend him. Write-ups are very unclear, partner coding was very boring and does not replicate actual partner work. The class was annoying, but I'm not sure if it was difficult.
The class itself is crazily horrible. Tons of info but you'll think most them are poorly structured so you will feel lost easily. But the professor is nice. Since everybody feels this way, tbh I hope the department can redesign the class.
The class can be a slog, but using tools like unstuck study alongside the lectures can make it more manageable. The professor has a specific teaching style, so staying engaged is key. Not the easiest, but doable with effort.
projects are full of bugs and have vague instructions. Professors offer very little help outside of class.
Gary is a nice guy, and he's always willing to help students after class. However, he did seem to go pretty fast during class. He does record his lectures, which helps. I watched Florian's lectures more since Florian teaches in a much more clear manner. The structure of the course isn't Gary's fault, but if you need to chose, I'd pick Florian.
project instructions are not clear. help is not offered and questions are not answered or clarified. :)
Gary is kinda boring and hard to pay attention to for the full lecture period. If you don't pay attention for lectures, you're kinda screwed for the exams. Not only that, but the exams are sometimes on very small details he says once. But he is a nice guy and the homework / projects are not that hard.
Prof Dahl is kind and makes an effort, demonstrated by having a way to sign up to eat lunch with him. However, tests are heavily based on smaller details mentioned in lecture (4% of grade is attendance) which could be an issue for some - no offense to Dahl, but he isn't engaging. Helpful course staff; poor course management; Reasonable workload.
Good professor. Somewhat boring but a solid lecturer. Class itself was considerably easier then CS 300. There's lot's of projects but they generally aren't too bad (though you may have to spend some time reading Piazza). The tests however were way easier then CS 300 both in terms of the short coding sections and the multiple choice questions.
Enjoyed this class a lot more than CS300, as the projects are much more streamlined and not filled with as many redundant requirements. Gary does have a particular style of lecturing that some don't like, but I found it very informative as long as you stayed engaged with the examples. Group projects can be hit or miss.
Gary is a good lecture, which sadly is outshone by the classes poor organization. After weekly projects release they are often buggy and clearly not setup in enough advance to have been tested. I do homework early in the week and sometimes had to fix bugs in instructor code. Though this isn't really Gary's fault.
Gary himself is decent. He's knowledgeable but very flat in his lectures. They aren't engaging nor are they presented extremely well. You also only learn logic in lecture, any, and I mean ANY code learning will be on your own. CS400 is probably the worst run class at UW Madison, but Gary is probably the lesser of the two evils if you must.
I really enjoyed his teaching style. He would always suggest that we take notes about how he does certain things to try to replicate it at home instead of trying to repeat after him right there and then. I also liked that he emphasized things that people found difficult or confusing in the past. The class is hard but see you on the other side!
He doesn't know the material well and gives confusing answers during lectures and on Piazza. The other section's lecture is way better than his.
He seems like a nice guy, makes himself available to students. Lectures are very slow and monotonous, if you didn't sleep well the night before, you WILL be lullabied to sleep. Expect to rewatch lecture recordings to catch what you missed since you were too busy trying to stay awake.
Professor Dahl is a fine professor for your intro courses. Lectures aren't well paced and quite calm, though he doesn't always communicate material very efficiently. However, the reason I have to rate him so poorly is due to the fact that he is a stickler for policy. If you need any leniency, Dahl will bend over backwards just to avoid helping you.
Very calm and soft lectures, definitely not a mile a minute type lecturer. Not the most engaging to be honest, but good at conveying material. He clearly cares about students. I don't think he actually changes any course material / format, though, which is unfortunate since I think he could implement many positive changes.
He doesn't seem to be clear about 354 concepts and was unable to answer many questions after the lecture. Not recommended for 354!
So boring and doesn't even understand the coding projects himself and isn't much help. I don't know if he can't explain things or if he doesn't understand the material, save your brain and take Hina instead. I went to her lectures instead and actually learned. You will not learn anything in his class so only take it if you want an allotted naptime.
The structure/logistics of 354 felt very outdated, which isn't entirely on Gary since it was his first semester teaching it. Hopefully, as time goes on, it'll be more like 400, which I also took with Gary and found much more organized. I liked his lectures, but his style definitely isn't for everyone. Final was easier than midterms by a good bit.
He does not have a firm grasp of this course and taught several concepts differently than the other section and in previous years, which means the material was taught incorrectly. I stopped attending his lectures after a couple of weeks and attended the other section instead, which was significantly better.
Class Info
Online Classes
100%
Attendance Mandatory
45%
Textbook Required
7%
Grade Predictor
Your expected effort level
Predicted Grade
A-
Grade Distribution
Common Tags
Rating Trend
Declining
-1.18 avg changeRatings by Course
CS3O2
5.0
(1)COMPSCI302
5.0
(2)CS302
4.1
(10)CS300
3.7
(34)CS400
3.5
(51)Difficulty by Course
CS540
5.0
CS354
4.0
COMPSCI400
3.7
COMPSCI302
3.5
CS300
3.4