professor
Daniel Bauer

May 2021

I had no background in computer science whatsoever, and I found this course pretty difficult. I liked Professor Bauer, but I feel like because many students in the class were already familiar with a lot of the material, he moved too quickly. Each project took many hours, and I did not know how to do parts of them, despite attending every class. I also got points taken off for things that were not specified on the assignment descriptions but were apparently programming conventions(?) that I was not aware of. Just because your code does exactly what it's supposed to do does not mean you will get full credit. The grade cut-offs were generous, though, and I ended up doing alright. I think you only needed like an 80% for a B+ and like 65 for a B. It's not a bad class, but it wasn't as easy as I expected based on other reviews. So just be aware of that if that'll also be the first computer science class for you!

May 2021

If you have any prior programming experience at all skip this class. The entire course content could be learned in max one weekend. Stopped attending lecture after the 2nd or 3rd class - they're incredibly dry and focus on random minute details. Projects are generally easy and the quizzes are okay. As for the prof. - he seems nice enough in class but he's not really a nice person if you talk to him outside of lecture (YMMV). Overall I took this course to add Python to my skillset as a CS major but this class is really directed towards those with literally no programming experience at all. You also won't really learn much Python either as he spends a LOT of time going over pretty arbritrary aspects of Python (like 90% of the course is just formatting stuff).

Jan 2021

Professor Bauer is the best professor I've ever had!! I went into the class having no prior experience in Python, but he explained things extremely well and I now know how to code "mini-games" if you can call it that. I know many people say his lectures were dry, but I felt the opposite (for the most part). He even showed us a website filled with pictures of CATS following the Fibonacci sequence to add some spice to the class. The TAs for the most part were also really helpful and readily available to answer questions even outside of their OH. I learned a lot from prof Bauer and I would recommend this class to anyone who is looking to dip their toes in comp sci especially since there's no requirement to read the textbook in this class!! The workload is not too much. 4 individual projects and 4 group projects. There are also 2 quizzes and a final. I found the quizzes/exams to be quite hard and failed the first one because I'm a very slow test-taker, but Professor Bauer went over each question I got wrong during a private Zoom session and was super patient with me. Anyway, take this class if you are thinking about it!! It's great :)

Jan 2021

Bauer is a sweetheart, and a fantastic teacher. His wholesome smiling face absolutely made my Tuesdays and Thursdays. 1006 is a great first programming course - I had no prior experience and found it doable, and actually pretty fun. His lectures were always dynamic, class materials were easy to understand, and homework problems were very chill. The quizzes are pretty tough, but it ends up balancing out (and the curve is nice).

Dec 2020

DON'T TAKE UNLESS YOU HAVE EXPERIENCE IN JAVA (if you can avoid it). Do not take Bauer's sweet, sweet smile and precious accent for granted. The TAs are awful and grade sporadically- on the first group assignment, each group member had a different TA and our grades ranged from 68-98. I think he has the best intentions. Truly. There are some concepts that came up on tests that you would only recognize with coding experience under your belt, and the lectures are painful to sit through. Unless you're willing to spend far more time on this class than you had planned, it's not the move. (Unless you know what you're doing already, in that case, easy money baby you got it)

Dec 2020

DON'T DO IT! Prof Bauer is a good guy but his lectures are so boring that you will not be able to pay attention. His homeworks are also quite difficult and i dont think his lectures prepare you for the homeworks at all. Take this class with any other NLP prof in the department and you'll do yourself a favor.

Jul 2020

I took NLP with Professor Bauer in Summer 2020, it was a compressed schedule, and newly virtual due to circumstances surrounding COVID-19. Professor Bauer and his teaching team have taken a difficult situation and made it organized and engaging. His lectures are clear and logically organized, and his slides are understandable on their own. He also seems like he cares about his students, and ensures that the class has an understanding before moving on. He and his team were responsive on Piazza as well. The homework assignments were designed so that you spent your effort completely programming the NLP relevant algorithms (which were always well reviewed in class) without having to worry about setting up your classes/program architecture. If you are not completely comfortable with programming in Python and data structures, the one week turnaround on each homework can be stressful.

Feb 2020

Extremely kind, fair, and helpful professor. I really enjoyed his class, and his grading is very fair. He’s super welcoming to questions and always stays after class to answer all the students’ questions. His lecture slides are very clear and super helpful for understanding how the different data structures and algorithms work. Great class!

Feb 2020

Bauer is a great professor. I had no programming experience before coming to Columbia, and taking 1006 with Bauer has made me strongly consider a major in CS. He is approachable, kind, and fair, and he really does care for the well-being of his students. While his lectures can be dry at times, his notes concisely lay out everything you need to know. I thought the quizzes and the final exam had some minor tricks, but they’re probably super easy if you have prior programming knowledge. The TAs are some of the best I’ve had in any of my classes - they’re patient and more than happy to steer you in the right direction without giving away too much. The head TA Spencer was always on top of hosting review sessions and preparing slides/Kahoots, which I found to be incredibly useful. As a whole, if you have to take 1006 (either because you’re in SEAS or because you want a gentler start to CS before taking 1004), I strongly recommend taking it with Bauer. He’s currently on parental leave this semester, but I hope to take more classes with him in the future!

Jan 2020

Bauer is an excellent professor. His lecture slides are probably the most useful thing; they're super clear and easy to understand. He breaks down the concepts through visual animations which is nice if you're a visual learner. I took intro to java with Paul Blaer, and I would say Blaer is definitely more engaging and makes the class fun. Whereas BAUER can be kind of dry and I've fallen asleep twice during lecture. He can get in the theory and mathematics of algorithms which can get pretty boring, depending if you're into that. Homework projects aren't too hard nor too easy. Spread out well, giving enough time to finish them. Super kind and understanding: I was sick and he gave me an extension of a week for one of the homeworks. He's very helpful in office hours and I could ask him the stupidest question and he would explain the concept.

Nov 2019

Professor Bauer is an amazing lecturer who cares very much about his students. I took his course in Summer 19' (tighter packed schedule) and it was worth it. His German accent made the three-hour lectures tolerable, but it was his passion for NLP that really drove the class forward. There is some math that comes with the subject but Prof. Bauer explained everything until he felt the entire class grasped the concept. My favorite part was when the class worked through NLP problems together during class, solving theory-based problems that helped make sense of the assigned programming assignments. If you get a chance to take NLP with Prof. Bauer take it! I for one took this class in the summer on top of an already heavy schedule but always found the material satisfying. His problem sets force you to connect the dots from theory to application but it was always satisfying coming to a solution. Sometimes, there were clever optimizations that could be made to improve your code to run in a fraction of the time. It is worth noting that this is the semester I started to really learn Python, so if you already have some familiarity you should be good. The exams were challenging but if you attend class and study diligently you should be okay. This was one of my favorite classes here at Columbia and I am eager to learn more about the NLP field because of Prof. Bauer.

Apr 2018

I took 1006 with Bauer in Spring 2017 and AI in Fall 2017. He is an incredibly nice person and very organized. His lecture notes are helpful, and as a person who avoids reading the textbook, I found that convenient when reviewing for exams. Bauer does have a German accent but I don't think it is difficult to understand. Although he explains concepts well and respects questions, his lectures can sometimes be a little boring to follow. But if you're willing to pay attention, you will learn enough to do well in the class. He tries to get students excited about AI & ML --there was a simple ML assignment in 1006, and assigned readings in the AI HWs. HW prompts are so detailed to the point where all you need to do is implement it in Python, and exams are straightforward so in terms of difficulty, it's not hard to succeed in his class. 1006 is a required class for many, but whether or not to take AI is a question to consider. Whether you take it with Ansaf or Bauer, the class itself doesn't go very in depth in AI. It's a nice intro and a good class to tack onto some other CS workload--teaches some game theory, deep learning, and a little stats stuff. I had fun but if you're genuinely interested in AI, just go have a conversation with Bauer. Whatever you choose, good luck in your CS career! Overall, I do recommend Bauer and hope to see him improve as a lecturer.

Jan 2018

Prof Bauer is a very kind and helpful man, who gives extremely dry lectures and unnecessarily difficult homework. Most of the time I did not even bother to go to his class. He uploads every lecture note, so that was helpful. He is really boring and it was really hard to concentrate in class but if you actually go to his office hours, you will see that he is very patient and will try to help you as much as he can.

Dec 2017

Disclaimer: I went to two classes total. I can't speak to his teaching style, but Dr. Bauer organized and designed the class very well. The coding exercises on the homework were generally simple and easy. For the programs that required a little more thought, Bauer provided skeleton code that tended to trivialize the problem. The midterms and final were fair. The tests both consisted of A few true/false that required you to know some small nuances of the python language. A few short answer about interpreting code. 1-3 simple coding exercise that required only basic control structures. Honestly,if you don't need this course as a requirement, you should just teach yourself the material. Otherwise, it's still a solid class to leisurely learn the bare basics of python. Also, his lecture notes contain everything you need to know.

Sep 2016

I took this course with Prof. Blaer, but often went to Prof's Bauer's office hours. He is SO kind an helpful, always taking the time to patiently explain any difficult concepts.

May 2015

Professor Bauer was a really nice guy and very approachable and helpful one-on-one but he failed to command the attention of the class. It was a bit hard to understand/hear him when he taught and his class was severely boring. That being said, if you take the time to attend his office hours he is very patient and will sit with you and explain things you don't understand. The homeworks he assigned were much harder than he realized and took several hours to complete- often dealing with little Java technicalities such as generics which were usually much more involved than Bauer taught in class. Additionally, the textbook for this class absolutely sucks but for the most part Bauer's slides were helpful. Overall, for a class that is so important for computer science majors, this class did not meet my expectations. I do think Bauer learned a lot from teaching this for the first time and this class will only improve.