Augustin is a very enthusiastic, friendly guy. He goes out of his way to encourage people to speak during class, even as far as to buy apples before class and give them to people who raise their hand and participate in any way. You can respond to one of his questions correctly, incorrectly, you can ask him to repeat the question, you can ask "may I please get an apple", as long as some sound passes between your lips he will give you an apple. This class was much more theoretical than I anticipated. Augustin attempts to summarize papers on sociology, graph theory, social psychology or other topics related to models of large-scale social behavior. Some of the models make sense, for others he makes no attempt to prove that they reflect real-life trends; they simply seem like one person's interpretation of a complicated phenomenon. After giving a bit of intuition for the motivation for the model of the day, he dives into a heavily mathematical proof for all sorts of bounds relating to the proof which can quickly become overwhelming. He often lingers on finishing up algebra for longer than necessary, but then makes overestimates our knowledge of certain statistical / linear algebraic theorems and rushes through parts of the proof that seem to fly over most people's heads. The homeworks usually involve taking the ideas covered in class and generalizing them and proving those generalizations, which was almost impossible to do on one's own. Nothing is googleable. As other people have said, Augustin is very disorganized. His homeworks are hodgepodges of older homeworks along with new questions hastily written with minimal proofreading. The data challenges took a while to put together, and when they came out we had relatively little time to prepare our setups. The TAs did not fully understand a lot of the material, and we would often have to "learn together" during office hours. For a 4995, this class felt more like a 6998 (which I believe it used to be).
Augustin is super-friendly and probably one of the nicest professors in the CS department. Everything else about this class kind of stinks. In this class, you’ll basically learn how the internet works at each layer of the stack. There’s a large discrepancy in the level of understanding imparted via lecture in class and the level of understanding required to do well on the homework and exams. His Comic Sans slider are also sans of deep material. They basically cover the textbook at a highly abstracted level. I just read the slides for exams which turned out to be a big mistake. Augustin is more than willing to go over concepts again for you and answer all your questions. However, he’s too accommodating and ends up not finishing the lecture since he wasted time answering a bunch of not-so-great questions. It would also have been nice if he went over some topics in detail (though he expects that kind of detail in tests) Logistics for this class were a mess. Homeworks and exams took forever to be graded. We had Piazza but didn't get responses for 4-5 days at a time which was frustrating right before deadlines. The TAs were also generally not helpful. HW questions were often poorly worded. The exam is just a bunch of hw questions put together. At the end of the course, you’ll have some idea of how the internet works, but all the material could have probably been covered in a third of the semester. I felt like I didn’t learn enough and that a lot of the classes were wasted.
Augustin is super-friendly and probably one of the nicest professors in the CS department. Everything else about this class is mediocre or stinks. You’ll basically learn how the internet works at each layer of the stack. There’s a large discrepancy in the level of understanding imparted via lecture in class and the level of understanding required to do well on the homework and exams. His Comic Sans slider are also sans of deep material. They basically cover the textbook at a highly abstracted level. I just read the slides for exams which turned out to be a big mistake. Augustin is more than willing to go over concepts again for you and answer all your questions. However, he’s too accommodating and ends up not finishing the lecture since he wasted time answering a bunch of not-so-great questions. It would also have been nice if he went over some topics in detail (though he expects that kind of detail in tests) Logistics for this class were a mess. Homeworks and exams took forever to be graded. We had Piazza but didn't get responses for 4-5 days at a time which was frustrating right before deadlines. The TAs were also generally not helpful. HW questions were often poorly worded. The exam is just a bunch of hw questions put together. At the end of the course, you’ll have some idea of how the internet works, but all the material could have probably been covered in a third of the semester. I felt like I didn’t learn enough and that a lot of the classes were wasted.
<Preface> I'm writing this before the first midterm so I won't be biased by how well I do on it (i.e. I think I'll do well, and I don't want that coloring my opinion of a fairly bad class), but if last year's midterm, which we were given as study materials, is anything to go on it'll be comically awful. A good chunk of that midterm dealt with advertising engines' business decisions -- roughly, if they conduct their auction at time X, how does this impact their revenue? -- which has literally nothing to do with networks. In the case of another question, the correct answer was "sledding in Morningside Heights." (Don't ask.) </Preface> I think the core of this review can be summed up in a single sentence: "The lecture slides are in Comic Sans." That fact captures the combination of a) trying a bit too hard to be cool (the professor has a pony tail) and b) totally failing to adhere to normal standards of professionalism. Anyway, on to the review. As others have noted, Chaintreau is an entertaining lecturer but very poorly organized. His assignments are poorly written to the point where virtually every question contains important ambiguities, and important terms and concepts are poorly specified, e.g. we are asked to find property X of a system, but there are multiple conflicting definitions of X and despite repeatedly being asked, the TAs and professor staunchly refuse to pick a particular one. The first programming project (a chat room) had virtually no networking component because you could just use Java or Python's network API; the whole thing amounted to basically just writing lots of switch statements to handle the umpteen-gazillion different chat room commands. The TAs try to be helpful, but their mastery of English is below what's needed to communicate effectively. (NB: This isn't true of just one or two. It's almost all of them. And students from past semesters tell me that's how it was then, too.) Whoever writes the problem sets has the same problem, which is probably a source of some of the ambiguity. That, or sloppiness. Often there are just words missing in the middle of a sentence. They also don't respond usefully to Piazza posts; a non-trivial share of posts get responses like "well, I think X", when what we want is not "what do you think?" but "what is the official expectation for students in this class?" As best I can tell, grading is arbitrary -- I'm doing well, so that's not sour grapes talking -- and the solutions are poorly written enough (and dependent enough on particular interpretations of ambiguities in the questions) that it's basically impossible to argue your grade. Oh, and did I mention that the textbook sucks? It feels like one of those high school chem textbooks, in that it both doubles nicely as a doorstop and is jam-packed with unnecessary verbosity and cute little asides about real-world applications. There are glossy graphs, and maybe an equation every 30 or so pages. Not coincidentally, the book seems like it's written for a high school student, or maybe a smart middle school student. It is decidedly not written with the time constraints and intellect of a college student in mind, particularly not those who have spent enough time immersing themselves in CS to be taking a 4000-level class. Protocols are never proved correct, elementary concepts like a hash function are explained at length, and so on. What this class needs is a big dose of rigor, not to mention a more disciplined professor. So, please, Columbia, can you get Jae Lee to teach this class, too? Give him a time-turning or something. I'm sure he'll do it.
I agree mostly with the reviewer below me. Basically, Augustin is very enthusiastic about the material, teaches energetically, and is fairly approachable in person and happy to discuss research topics. The main issue is the lack of organization. He seems to be a pretty busy researcher, as he had to cancel two classes and was often not reachable by email/Piazza. It seemed like he kept pushing back assignments/the exam. At one point he scheduled a make-up class on a day that we are not scheduled for, and we finally had our midterm the last day of class. Also, the grading scheme was not very clear, and the exact percentages were definitely never announced until he sent us a note at the end of the semester. We got very little direction for the final project, which is basically a very condensed 2-page paper that is supposed to have interesting, novel, and relevant results in a research area. This was by far my lowest grade, but in the end he curved the class quite highly. I would say the workload was quite heavy, relative to how much we learned in lecture. By the way, there's no textbook - only recommended reading from A LOT of papers (some from sociology). Note that this class is very math/theory heavy, so you really need to be comfortable with probabilistic analysis and graph concepts. I came from this background and still sometimes felt challenged. There are also "data challenges," which basically are exploratory problems with real data. The stressful thing was that our programs were graded relatively to each other, so performance was normalized against the best performing program. Finally, the TAs were not that helpful, and we always got back grades very late. I felt like I was in constant anxiety the whole semester and too busy to really appreciate the material. I spent half of my vacation working on the research paper, which in the end, was graded harshly. Augustin knows his stuff and is overall a nice guy, but the way he managed the class made it very stressful.
The Good: AC has a great classroom presence. He is enthusiastic and will immediately give an apple(the fruit) to someone who gives an answer, asks a question or makes any remark at all. This tends to create more dialogue and fosters a good learning environment. He is very knowledgeable. In the rare case that he canâ€™t answer your question in class, he will post a thorough answer on Piazza shortly thereafter. The book is clear and the slides that he uses from the authors can in some cases be used as a substitute for the book. On theory assignments, most of the questions are easy to moderate. There are questions that require â€˜advancedâ€™ probability, but these are worth a small fraction of the total homework grade. The Bad: The programming assignments were poorly written. The second in particular was poorly designed. Once one was able to translate the second assignment into English, it was incredibly difficult to program. The second assignmentâ€™s sections had a lot of functional overlap, but this overlap was difficult to capitalize on due to unnecessarily unstandardized features throughout the assignment. Itâ€™s unclear if AC wrote the assignments or if the TAs did. Either way, most of the TAs were not nearly helpful enough in explaining the assignments. The Ugly: For the spring semester that I had him, AT THE END OF MARCH, he changed the grading scheme as follows 10% ->15% for Prog Assignment 1 10% ->15% for Prog Assignment 2 25% ->15% for Midterm AC did not announce this change. Aside from a student posting this change on Piazza after it was made on the class webpage, the class might not have realized this until weeks later. I have never in my time at Columbia had a teacher so secretly and drastically make a grading scheme change so late into the semester.