professor
Alexander Pasik

This professor has earned a CULPA silver nugget

Jul 2014

I took Data Structures in Fall 2013 with Professor Pasik and it was one of the worst decisions I could have made. He starts off the class by letting the students know that he codes differently than most professors and has his own styles. This "style" is pretty much squeezing your entire program into one line of code for no reason. We had quizzes that consisted of regurgitating exactly what was on his slides for class. The worst part was that there was no textbook to supplement the lecture. He very much minimized how horrible his teaching style was by saying that if you attend class you would get an A. This class is only for people who like to teach themselves through other classes textbooks or magically understand this secret coding style that he has created.

Dec 2013

I haven't written any CULPA reviews prior to this, but I feel compelled to do so now, because I am really quite surprised by how negative the two previous reviews are. I really liked Professor Pasik and didn't think he was at all arrogant. Yes, it may have been kind of inconvenient that he didn't have any formal office hours, but he was always receptive to questions during class and was also available before/after class. While going through code during most classes can get a bit dry after a while, some of his lectures/stories about AI at the end of the semester were really great. (And there were a few other interesting anecdotes he told throughout the semester.) As the previous review mentions, it can be somewhat difficult to study for the exams; however. that isn't really a problem, but rather reflects the fact that as long as you have a decent conceptual understanding of the material and understand the code that is shown in class, you should be okay. Regarding Pasik's coding style, I don't think there's any reason to make too big of a fuss--it may be slightly different in certain aspects from how other people would code, but it really doesn't make things any more difficult.

Dec 2013

I have no idea why this guy has a silver nugget. I've had a couple professors with silver nuggets who are great, but Professor Pasik is not one of them. Pasik's class has a couple problems: 1) his TAs. They are almost all jaded graduate/PhD students. In our case, 2 left throughout the semester, so as a result, all our assignments came back late. He did not hire new ones. They made TONS of grading errors, so make sure to go to office hours to check up on your quizzes. Finally, their rubrics are sometimes laughable. They award lots of points for the simplest things, and few for the most difficult parts. 2) the structure of his class. He starts by covering a new topic with slideshow-supported lecture (slideshows posted on CourseWorks), consisting mostly of code and some text here and there. After each major topic (every 4 lectures or so), there's a quiz. Memorizing his code is a surefire way to get an A on these quizzes -- if you don't look at the code and didn't follow the lecture, expect to fail the quiz. Winging it is pretty tough. That being said, I failed two quizzes, but then scored significantly above the average for one I didn't study for at all. Why? No idea. After the quiz, you may or may not have a programming assignment. The programming assignment will probably be super easy. 3) his code. Like people have said below, his code is extremely, extremely dense. He prides himself on brevity, but there is essentially a learning curve to reading his code (which shouldn't be the case, since you already know Java if you're taking this class). He teaches bad style that is not based on Java. 4) him. Pasik is arrogant, but more importantly he doesn't hold regular office hours, so if you want to see him, either deal with his awful TAs or schedule an appointment. 5) emphasizes weird things. We barely spent any time on hash tables and hash maps, but then spent tons of time on miscellaneous artificial intelligence topics at the end of the course, just because he enjoys them. You are learning the wrong material! Tl;dr: please, please take a different section. This class is a crapshoot -- I never knew why I was getting the grades I did. I really regret not having actually put off data structures for another semester until another professor came along. This guy is no good.

Oct 2013

This was a HORRIBLE class. The instructor does not explain the coding and his slides do not make sense. There is no textbook for the class, so there is nothing else to use to understand the material. When asked about this, the Professor instructed us to use Wikipedia to understand the material. I think that this approach is ridiculous - Why pay for a columbia university class when you are told to use wikipedia to learn the material?!? The instructor is very arrogant and spends more time talking about how wonderful he is than trying to teach the material. He belittles and embarrasses students who ask questions, telling them that what he explained was crystal clear and that there is no need for clarification. This is not a good learning environment and is not appropriate for a class at Columbia University, which should hold itself to much higher standards! The material on the exams was not covered in class. Unless you have prior experience with data structures, I don't know how you can do well in this class with this instructor. I wish this class were taught by someone else, who would actually teach.

Jan 2013

Extremely arrogant, with the worst and rudest TAs (with the exception of Ashish Chhabria, who was very helpful and understanding), but a very effective teacher. The class was very well organized, each class covering a series of slides. The slides are also extremely clear, with very good examples, although there are many small bugs in Pasik's code that you may find while reviewing for tests, which is confusing. Definitely go to class - you learn so much so quickly with Professor Pasik, as much as you may despise being in his presence. He also offers a lot of extra credit, so this class is an easy A/A+. All in all, take this course even though Pasik's personality is awful.

Nov 2012

Disclaimer: I got a very high grade in this class. I feel bad for anyone who was slightly interested in computer science before they took this course. The class is as boring as you could make it, and the teacher is awful. You would think he might learn a thing or two after teaching for thirty years but the practice didn't do him any good. He prides himself on making his code as compact as possible, squeezing as much stuff in to one line as possible, which is stupid. It would be like cramming this whole paragraph in to one grammatically correct sentence. Sure, it's still "right," but there's a reason no one does it, and that is because it is a fucking stupid thing to do. I took data structures at a different school a few years ago, and I thought I should take it again to brush up on the basics. It was a pretty big mistake; you would learn way more about data structures by skimming wikipedia for a week than taking this course. In fact, I would recommend learning the material elsewhere and then checking his slides to see the stupid shit he changes. If you're interested in CompSci, know that this is not what it's usually like.

May 2012

From everything I can tell, he's a very different teach when teaching Data Structures and when teaching AI. I've heard and read so much about how he doesn't actually teach in AI, but for Data Structures that was certainly not true -- over the course of the semester we covered a lot of material even if it's less than you would in some other Data Structure sections. It is true that he only ends up coming to class about 2/3 of the time since there's 4 quizzes, 4 review sessions, and 1 final. When he's there though, he's very passionate and often quite amusing. I also found that between the lectures and the programming assignments I came out with a very thorough understanding of what he covered. Beware though that his programming style is extremely bizarre so you may pick up some weird habits. The quizzes were kind of mini-midterms -- they took the whole class but only counted for 10% of your grade and only covered 3-4 lectures worth of material. Of the 10 points, 7 usually entailed coding and the others were either on theory or definitions. Since most of the class doesn't have a CS background (since the class isn't for the major) he spends a decent amount of time reviewing basics although if you really never understood Java at all, you'll be in trouble. One last plus about Pasik is that he's very organized: he puts up the class-by-class syllabus and all the homework assignments weeks before the semester even starts so the expectations for the class are unambiguous.

Apr 2012

This was probably the most fascinating course, which is saying a lot given that Pasik is the professor. Learned a lot but only because this is material that I hadn't been exposed to in other classes and I could have learned 3 times as much had Pasik not ended class half an hour early (on average) every class and skipped 8 classes for review sessions/midterms. Additionally, it should not have been required to learn LISP which wasted an additional 2 weeks at the beginning where we didn't learn any AI. He also cancelled a class at the end because he didn't have anything else to teach us. Overall, if you consider that he only used about 2/3 of the allotted class time, we had about 10 lectures on AI for the whole semester. How do courses at CMU, Stanford, MIT and Cornell manage to do fill a whole semester? As stated in other reviews, all of his lectures are taken totally out of the book, except the knowledge representation lectures. In these lectures, rather than covering the interesting material on epistemic logic that the book had, he spent the entire time on algorithms for expert systems which haven't really been used since the 90s. He also arbitrarily set his curve to a B-/C+ which would be fine except no other professor in the department does that. Basically Artificial Intelligence is an extremely interesting field and the fact that I am still interested in it despite Pasik is a testament to the material. However, if you can avoid Pasik, do so.

Jan 2012

If tl;dr, just scroll to bottom. Of the three CS classes I've taken so far at Columbia, this was hands down the worst of all of them. Prior to enrolling in the class, I read the reviews here on CULPA and figured that the people complaining about Pasik's teaching style and glossing over LISP and other concepts were simply whiners. It took me 3 lectures to completely reverse my initial opinion. Let me preface this review by saying that I'm not disgruntled because I did poorly in the class (even without the extra credit, I would've gotten an A). I'm bitter about enrolling in this class because it was nothing short of a waste of time and money. Over the course of the semester, I've come to realize that Pasik really doesn't put in that much effort into teaching. Here's why: of the 28 days that the class was scheduled to meet, 8 of them were committed to other activities (6 reviews, 2 exams). Of these review sessions, Pasik shows up to exactly one. While I thought the review session that he conducted was actually the best among all of them (probably because the subsequent reviews were horrific), he prepared no material and basically held an hour-long Q&A section. Moreover, he canceled one additional class, and ended at least 5 classes 20+ minutes early. So all-in-all, instead of using 28 days to teach, he effectively taught for roughly 18. The result of this is that we barely covered any material. A simple google search of Artificial Intelligence syllabi from top institutions like Stanford, CMU, MIT, etc, reveals that we covered about 1/3 of the material they did. And that's a generous estimate. I have one word for that: pathetic. One aspect of Pasik's teaching that many of my classmates found irritating was the fact that he read directly off of his slides. In the past during my undergrad years, and even this past semester, I've had professors that used PowerPoint slides extensively. Sometimes, they even read off of the slides verbatim just like Pasik. This I have no problem with. What annoyed me the most was the dearth of content in those slides and how cryptic most of them were. This can be especially frustrating when some of the material he presents is not covered in the book, and the only source of reference you have is a figure of a rectangle with a few splotches of color that's supposed to represent the effectiveness of parallelism. Finally, a feature of Pasik's teaching that I found to be ineffective and even counterproductive was his insistence on going over code in class. I think the main problem with this is that code in LISP is not readable. The task of keeping track of what all the different built-in functions in LISP do in addition to the user-defined functions Pasik writes results in students being confused as everything becomes just one huge convoluted mess. I think that the time spent in analyzing LISP code would be better spent if the algorithms were presented in pseudo-code (mostly in ENGLISH) rather than actual code. Since the course is comprised of mostly grad students, converting pseudo-code to LISP code should not be hard once the students actually understand what the program is supposed to do. Is Pasik a nice guy? I wouldn't know since he has no office hours and is only transiently available before and after class. I stopped emailing him questions shortly after term started since his responses are one-liners and don't really answer your more complicated questions. Maybe it's because he's involved in many other activities that doesn't give him time prepare and do the material justice. I get it, professors are busy people. But there's a line between being a busy person and simply not giving a damn. Bottom line: if your main objective is to get an easy A, this course is the one for you. If you want to actually learn something, take a different class.

May 2011

Great guy, really gets excited about the content. I don't know how someone could get so worked up about recursion and binary trees, but it made the class a bit more interesting I guess. I didn't pay attention most of the time, but when I did, he was pretty clear and the content was relevant to our assignments and midterms. In the end, I feel like I learned a lot about data structures, although if you are an IEOR major, there isn't a high chance you will use it again.

Mar 2011

What's not to like about Pasik? He's a good teacher and a friendly guy. He's super patient and all kinds of approachable. If there's ever anything you don't understand he's more than happy to explain it to you. Unfortunately his office hours are practically non-existent, but he's always around for about half an hour before class, and for as long as you need after. The course was taught in LISP, but if you're not familiar with this language, don't worry. He usually spends some time at the beginning of the semester explaining the basics, and none of the assignments require any really advanced level knowledge of LISP. If you get stuck, you can almost always find what you need with a little Googling. His lectures are interesting and if you show up consistently and take thorough notes, you may not even need the textbook. Be warned, you will hear lots of stories about him and his family's zany adventures, but he's a good story teller and there's always an AI related moral in the end. As another person pointed out, there is a lot of discussion about the philosophy of AI, but if you look up, you'll see that the name of this class is not “Artificial Intelligence Programming”, it's just “Artificial Intelligence”. The history and theory of AI are relevant to the course, even if they're not all that relevant to the grade. There will be some readings on this and probably one question on one test somewhere. If you decide to skip it all together it won't kill you, but it is interesting and might even help you out a little on the homeworks. The assignments are deceptively complex, but they're not very difficult once you figure out what you're supposed to be doing. Give yourself some time. You're not going to bang them out in one night, but you can get them done over the weekend if you don't have much else to do. The tests are sort of cumulative. It's usually around 3/4 new material and 1/4 old material. Expect a coding question, usually just a variation of something from the homework. He expects you to know all the algorithms by name so be sure you've go that down. Pasik will tell you himself that if you do the homework early you'll be pretty well prepared for the test and this is definitely true.

Dec 2010

Prof Pasik has a very good presentation style, but unfortunately the AI material, he covers, lacks body. He uses slides, not more than 10-12, and you would have guessed that only some introductory and intermediate concepts are covered. He spends too much time on the philosophical aspect of AI; important it may be, but I would imagine that one lecture would have been more than enough to convey the message. Programming assignments are to be done in LISP. And if one has good enough experience in programming, LISP shouldn't be too hard to adapt to. Good thing about LISP is you don't have to learn it all in order to get started. I did enjoy programming in LISP and assignments were engaging but not too difficult.

Dec 2010

I 100% agree with the reviewer from April 15, 2010, and the later ones. I really want to emphasize how insufferable the homework assignments are. The assignment descriptions sound straightforward and manageable, at first. It is when you start to work on it that you realize you know WHAT the homework means (that is all the lectures are good for), but not HOW to implement it. Most of the time will be spent figuring out how the program should work, even in a conceptual way, in order to achieve the algorithm that Pasik wants. This is made harder because (a) You are using Lisp for probably the first time, a language that is not used anywhere outside academia and will never be useful to you again. No other language you have learned or lab you have taken in CS at Columbia will prepare you for understanding Lisp except the concept of recursion (b) You will not learn, during lectures, the Lisp you need to do the homework. After the first couple lectures, Pasik will not continue to teach Lisp and consider everyone a "Lisp expert" (c) You will spend hours reading Lisp primers before you actually work on the program. For this reason (and the fact that you have 3 other CS classes to worry about), the assignments will most likely lead to several all-nighters. Pasik has a 1-point-per hour deduction late policy, which is the most ridiculous policy I've ever come across in a CS class. If a student must resort to submit late, do you really think it will be by a couple hours? For a class like this, 25% deduction per day is much more reasonable. The lectures are brief (usually they take Pasik 30 min to get through), with a focus on definitions instead of Lisp-based, example-driven concepts. Typically, a lecture will have one or two high-level examples (i.e. a diagram or graph), and one or two, if at all, slides of lisp code that do not relate to the homework in any way and will not be useful for exams. As for the exams, I really didn't mind them. They are straightforward. However, each question is usually 1 point out of 10 points, so four points off already puts you at 60. Pasik will not tell you what questions will be on the exam. The best method is to read the slides carefully and focus on definitions. Also, there will be a lisp question on each exam that relates to the homework (i.e. a snippet of code from your hw).

Dec 2010

He's an entertaining and friendly guy. Class is always interesting, and he incorporates more philosophical aspects of AI into the class, besides just focusing on algorithms. There were four programming assignments, the first one was extremely easy, as it was just to teach you LISP. The other four assignments did take some time, but they weren't break-your-back difficult. The tests were all very reasonable and short. If you read the textbook and went to class, you couldn't help but score well. Honestly I'm surprised at some of the reviews here. First and foremost, some people seemed to say that he was poor at answering questions. If anything, I'd say the exact opposite! He would always take time to address questions, and would even work them out on the board if he didn't have the answer on the top of his head. He was in *no way* dismissive of questions, and actually was looking for questions from the class more often than we had them. I can understand that some people might dislike his teaching style if they don't want to engage with him, but really, if you pay attention, you learn a lot and are entertained at the same time. And by the way, as some people have mentioned, he really does like LISP and recursion. Overall, I definitely would recommend him, and I think he is deserving of a silver nugget. I think the best thing about him (and this course) is that he inspires interest, because you are exposed to so many new topics.

Jun 2010

This class was crazy hard, but Professor Pasik is a good teacher and did his best to guide you along. As a student with no natural ability for Comp Sci I managed to survive the class, and in the end I learned a lot. Make no mistake this is an extremely difficult class, but is also rewarding. Pasik focuses on programming a lot more than other professors that teach the class. Overall do not take this class lightly, but if you want to be challenged and learn A LOT than I definitely recommend him for Data Structures. If your just looking to get through the class than you should take the class with a different professor.

May 2010

This class is a joke. Go to class, everyone says. And it is true, you should go to class if you really want to understand the material. What he does in class is he just goes over the coding that is on courseworks, first in general and then looking at the code itself. So for say, the linked lists, he would first explain what linked lists are, and then go over it in code. Of course, you really don't even need to take any notes, since if all you do is pay attention, you'll understand how the structures work and then you can just read the code to refine it even more. He also let us out more than twenty minutes early multiple times, because that's how clear he makes the material. So what makes this class a total joke? First, he assigns six homeworks. They aren't hard at all, and if you have a comp sci-major friend, they're actually easy. They don't take all that much time to do, and best thing, they're worth 50% of your final grade. 50% for six homeworks? Yup, he takes the "lowest" grade (you should be getting 10's on all the homeworks anyway) and adds it on as extra credit. If you have good enough friends, you should be getting ten points extra credit. Not only that, but on two of the assignments he had two MORE ways of getting extra credit: one was a simple, two line code, and the other was a bit tougher but still very doable, and he gave three points each for a grand total of sixteen points extra credit max. And note, these are on the HOMEWORKS, not on the tests that actually test your knowledge. The tests make up the rest of your grade. Two midterms worth 15% each (15 points each) and a final worth 20% (20 points). They were also jokish. On each midterm he made sure to put at least one problem where you have to code, and one problem where it's a freebie 3 points if you went to class and listened (simple things like 'what is the time complexity of heapsort'). The final was a bit different: one tough problem, one very very easy problem (his freebie question worth 6 points, everyone should have gotten this one) and one coding (practically the same as the code in class). Even more, because all his midterms are point-based (they're out of 15 points), it's not like other classes where it's out of 100 and then scaled. What you get is how many points you add onto your final score, but with your sixteen points extra credit, you technically don't even have to take a midterm and you'll still get an A+. But even if you do, you're practically guaranteed an A+ unless you really don't know java, in which case you'll just get an A. He practically guarantees that everyone gets at least 7/15 points, so at most, if you aren't that good at java, you'll get 14/30 from the midterms. The final was much harder, but the TAs said that they graded generously, so you should probably get at least a 13/20 on the final, so that's 27/50, and then you add the free points from extra credit, and you get a 77/100, but then you add the extra credit and voila, you're back at a 93/100, and you get an A for doing so badly on the tests. Don't be scared when, in the first day of class he complains about grade inflation and describes how one standard deviation above the mean is a B and two standards is an A, because really, with that much extra credit (and the ease of this class), at least half the class got A-range grades.

May 2010

Like everyone else said, go to class! There's no textbook and it's at 6:10 so it's not like you're skipping a morning class to sleep. Pasik is an excellent lecturer and if you go to class, the material is very clear. I had no programming experience before college, and I didn't do amazing in 1004 and I got a freakin A+ in this class! (HOLY CRAP!!!) He LOVES recursion. Definitely try to learn it because it really opens your mind about programming. Also, learn a bit of LISP before hand because Pasik basically programs in LISP but in the Java language. It'll be a lot less overwhelming when you meet recursion for the first time. His grading style is very interesting. He curves to a B- but there's a decent amount of extra credit to be learned. The TAs are super nice so if you have trouble with the assignments (AKA not enough experience with Java like me), they are really helpful. Keys to success: GO TO CLASS. Seriously, try not to miss any lectures. Start the assignments early. (I have stayed up to 4am debugging. It was terrible.)

May 2010

I liked Doctor Pasik's class. It seemed I have a better programming talent than my peers, so take this review with a grain of salt. You must go to lecture in order to do well; there is no course textbook. He's taught this course many times, so he knows what he's doing. There is a mad steep learning curve, starting with recursion. Once you get this, however, his code becomes a lot easier to understand. For each data structure, there is an abstract understanding of it, and there is a programming understanding. The conceptual understanding is more important; the programming is only important in the assignments (and he posts all his code on Courseworks anyway). His conceptual explanations makes use of diagrams, so recommend taking notes on pencil and paper. His explanation of each data structure is very systematic in this way. Doctor Pasik is very approachable, but only after class (he has no office hours). He always stays to answer all questions the students have; you can often get hints on the assignments this way. Additionally, he has lots of insight into the rest of computer science, and potentially a networking contact, depending on your desired industry. The assignments can be difficult; however, you never have to work from the ground up (except the last one). You take his code from Courseworks, and using those basic methods, you build the rest of the methods to complete the assignment. Again, these additional methods require a conceptual understanding of what you are doing. His grading style is interesting. There are 60 points worth of assignments (6 assignments, 10 points each), and 50 points worth of tests. To calculate the curve, he will take the 5 highest scores from everyone's assignments and the 50 points from the tests and calculate the average from that (curved to a B-). Then he'll add on the raw points from the 6th assignment to the score, boosting everyone's grades.

Apr 2010

Pasik is without a doubt one of the worst professors I have had at Columbia. Though his lectures are entertaining, they gloss over the course material and provide little to no insight into the concepts, test material, or homework assignments. He always ends class early, for such reasons as "I'm going salsa dancing!" When asked a question in class, he often doesn't know the answer and responds with some bs, or says he'll answer it next week with an example. Subsumption, for example, is not hard and something that he should be able to define and provide an example for on the spot, but he can't. His lectures have clearly not been updated in several years, and it shows. It seems like there are typos from the 90's that would take 2 seconds to fix, but doesn't bother to do anything to fix them. All your homework is in LISP and Pasik barely covers LISP in class. Your knowledge of this language comes completely from independent study, and the homeworks are very time consuming. You would think that he could at least provide some sample LISP programs or god forbid tutorials that he quickly googled, but no, he leaves that up to you. As for the actual homeworks themselves, that are so vague and non-descriptive that you'll spend half the time trying to figure out what you have to do. Days or even hours before the due dates, TA's will post requirements on courseworks of things that you must include in the homework. He does not provide solutions to the homework, so you're screwed in that sense. He reuses the homeworks every single year, without changing them at all. This turns out to be bad because he could make the homework prompt more descriptive than 3 sentences. Be prepared to spend 40+ hours for each of the 3 homework assignments, and start them way early (you do have plenty of time). He probably has never read his own culpa reviews, and doesn't realize that he needs to REALLY update his lectures, homeworks, and tests. His tests are ridiculous. No amount of studying can prepare you for them. It's not because you don't know the material, it's because you have to predict the answer that he's looking to hear. Even if you're answer is correct, as the TA agreed with me on several occasions, he could not award points because it was not identical to Pasik's horrible solutions. If you know the material and feel prepared, you can still do poorly because you did not mention something in your answer that was not asked for in the question. You will lose points for not writing a novel for each answer. Pasik does not hold office hours and does not care about any of his students. Don't bother sending him emails or trying to get help from him.

Jan 2010

Prof Pasik is basically an entertainer rather than a good teacher . His gestures and mannerisms of teaching create humour but at the same time it dilutes the seriousness of the subject . The paper pattern is in no way connected to the teaching in the class. He leaves class about half an hour early in each lecture ; the time duration I thought he could have utilised better by giving more insight about lisp which was alien language to most of the students if not all. Once he even conducted a survey which was his daughters' high school assignment - again a total waste of time . Assignments are not discussed in depth . Avoids answering doubts with cheeky replies . Overall not a good source of knowledge.

Dec 2009

I don't know why Pasik has a silver nugget because there is absolutely nothing good about his teaching. It is very clear that he has experience in the field and he is a friendly and intelligent man, but the fact remains: he reads off slides word for word, cannot answer the majority of questions we ask on the spot, and does not care whether or not we learn the material in the slightest. When we ask questions in class, we get one of the following: "well... that's not important to our discussion right now", "uh... I don't know off the top of my head... but I'll look it up and get back to you next class" (he never did), "<nervous laughter> uh, well... that's a good question! We'll get back to that later..." (of course he never does). All of the homework assignments are purely LISP programming projects, and when asked one day in class how one writes comments in LISP, he did not know! He had to look it up online while we sat there staring at him and waiting! I cannot believe that he would require us to write massively complex programs in a language that (1) is not taught in the class and (2) he doesn't even remember the syntax for something so basic! He does not hold office hours, so the only time you can ask him a question is before or after class, but he employs the same techniques he uses in class to brush off your questions (and you couldn't even go to the TAs for help since they had heavy accents and also had difficulty expressing themselves in English)! Even worse, he didn't even come to class on the last day which was supposed to be our final exam review session, but instead had those same TAs run it. We were not notified of this change until one or two days before the class itself. The TAs did an awful job, just pulling up his PowerPoints and letting us stare at the slides which corresponded to our questions for a few minutes (I'm not kidding - this is exactly what they did).

Dec 2009

The lectures were definitely entertaining, but I can't say I actually learned anything from them. The professor is definitely skilled and experiences, but almost to a point of not caring about our individual class. The professor does not have office hours, and even if you try to schedule a meeting he will simple tell you to stay after class - this is not very conducive for going over material. Also, the teacher did not show up for the last day of class and instead had the TAs teach a review session. We were not informed of this change until the weekend before the last day of class. Since the teacher doesnt have office hours, we should have known that the second to last class (two weeks before the final) would be the last time we see him. Moreover, the final review was worthless - see notes on the TAs below. Finally (though I am about to comment on the TAS individually), I have never been more frustrated with a set of TAS. Despite spending a significant amount of time trying to better understand the assignments in office hours, the tas would ask questions like "Are you sure there is an exam next week?" The TAs spoke so little english that we were reduced to playing pictionary.

Apr 2009

Pasik is an interesting and fun guy. It does help to be the right kind of student (interactive, awake, asking questions). He usually doesn't have a text book and doesn't do much on the board or with notes. He basically talks to you. Attendance is absolutely essential. If you show up every day and pay attention, you can't help but get an A, because he explains everything. If you skip classes, and you don't already know the material, then you're in trouble. While I like him as a Professor, he's not the strongest when it comes to math or theory. He's a pretty practical guy. That works for him though, especially in data structures, which is a practical course. His coding skills are very well practiced. If you want your code to be clear, modular, and work the first time, watch him go through code. If he posts code online, take it and put it in your coding base. It's really well written code. By the way, he loves recursion... really loves it. The main thing I learned from him was how to write concise, elegant, semantically clear, recursive code. Little things to note: 1. He will not accept anything late. He assigns things extremely far in advance. Get them done. 2. Make sure you really get the material. Since he lectures well, the average scores on the tests tend to be pretty high (at least in my experience). So if you want an A, you need to do well on the tests. 3. The tests are really straight-forward (no surprises), but they might require you to actually know what you're doing (not just get the gist). He will make you write code snippets on the spot on exams.

May 2008

Entertaining and fun, cares about the material and seems genuinely excited to teach people. Really, really likes Lisp and Recursion. Doesn't use a textbook for data structures. My only complaint is that given the time (one full semester) he could have gone into a bit more detail about various, more exotic, data structures. But what he does cover, he does very well. So I recommend him.

Dec 2007

At first, he might come off as a very strict and hard to approach professor. But once you talk to him, he is very very open and remembers your name. His C coding practices caused me to have a new found repsect for the language C. if you attend classes, you will do well because he is a kind of professor who you can osmosis all the facts and not even study for the final and do well although it might be hard. I know there are two types of student. Student who listens and don't take notes and try to learn everything at the first time VS Student who take notes and don't really intently listen during the class and review the notes and books. first one will do superbly and have fun in his class. second one will hate the class and dthink it is ridiculous. he has no textbook. his words are better than textbook's short definitions of algorithms or bullet pointed algorithms. ultimately, if you are ready to attend classes and focus hard for 1:15 then you will succeed.

May 2007

Excellent lecturer with exceptional preparation. He has an extremely old-school, no-nonsense approach to coding, and every word he speaks is something new you're learning. He is, however, the biggest hardass with whom I've ever taken a class at Columbia. There was absolutely no leeway on assignment deadlines, and to attend office hours with him, you'd have to schedule a time for him to come to campus on a Friday from his midtown office. Intimidating, unapproachable, and unforgiving. If you're confident in your C skills, and want to raise your CS and programming skills to the next level, take his class. If you're not very confident in your C skills, his class could be a nightmare.

May 2007

WTF? Maybe Pasik's a good professor in Java or something. I think he's awful. His lecture style is agonizing and grating. I feel bad, because he obviously *does* want people to learn the material, and seems offended when you don't get it. But ultimately, he's kind of an ass. On the plus side, you don't have to go. At all. Homeworks are submitted by email. Usually I just read Wikipedia ten minutes before each exam, and this was enough to walk away with an A. So... whatever. Did you take AP CS? You're done, then.

May 2007

I have to say, I'm really not sure where the previous posters are coming from. Maybe Pasik liked the material in the other classes better which would be highly understandable. I'll admit, Prof. Pasik taught concepts well. He definitely oversimplified a lot of material though (recursion, abstract classes etc). There was no real textbook for the class. Everything was essentially from lecture but only 1/3 of the class went anyway. You only had 2 case studies: A rational number calculator, for which Pasik made his own random classes rather than using standard Java classes like Number, and Scopa, an Italian/Sicilian card game. Everything was based off of those two (and I mean everything.) Word of warning: he doesn't accept code that doesn't compile on CUNIX nor does he take late homework assignments (Each was 15% of your grade so don't save it to the last night). Also, don't think that AP Java AB will help you. Some concepts may be easier but watch out for his random implementations while you scratch your head because you know there is an infinitely more efficient algorithm out there. You have to use his code.

May 2007

If there was ever a man who enjoyed teaching object oriented java, it would be Prof Pasik. Him frustrated is just him smiling more and getting happier. Without seeing his website, it was difficult to tell if he had a curriculum planned out for this class. Lectures past the first few consisted of him explaining example code off of his laptop and the projector. You probably won't see what's on the screen if you aren't sitting front and center and have 20/20 vision (though he posts the code online as well). It's disconcerting to hear him say you aren't supposed to learn something in this class but he's going to teach it to you because your assignment directly relates to it. Goals-wise, the assignments are a bit too open-ended for a low level class like this. The exams are straight forward but tend to have an air of scariness to them (mostly because you aren't sure if your answer will fit his requirements since he likes to tell you not to worry). His class essentially is about putting in effort. He gives bonus points which are not counted into the curve so anyone who actually does the extra work will get the "better" curve.

Apr 2007

Very interesting professor, just go to class and enjoy, very funny guy and makes class very enjoyable, tests aren't that hard and assignments are pretty decent. Nothing is hard and he makes class very fun. just make sure you go to class.

Dec 2006

Pasik is the best professor by far I have had in the Computer Science department and was my favorite professor I've taken so far overall as well. He made his class very interesting and made it easy to do the assignments just on his notes, as he did not seem to like the book that much (I never even opened it up) If you go to class, to me it seems like the class is a breeze, but seemed like more than half of the class did not show up for his lectures and thus complained it was too hard. With and excellent professor, fairly easy grading and very fair tests, and a ton of extra credit, I don't see how anyone would pass up the chance to take a class with him.

Dec 2005

Definitely agree with the first poster, though for a different class. He's one of the best professors I've had at Columbia, and has given me a great passion for AI. His lectures are very interesting; even though it was 9am I always went to almost every class (that's very unusual for me); and though I often brought other work to do, I never got any done. Except for the day or two when he'd go over the homework or test, he had my rapt attention every moment of class. For AI in specific, he not only focused on the computer science of it, but also asked students to read a book called "The Mind's I", and set aside a few days to talk about the more philosophical (and very intriguing) side of AI. He is a hard teacher though, and it's a hard class. Below the mean all get C's theoretically. However, he does offer enough extra credit to shift the curve up to the high B's if you choose to do it. He never accepts late work, but even I (who chronically turns everything in late) made every deadline.

May 2005

The best professor I've had at Columbia, hands down. He not only knows his stuff, but is enthusiastic about teaching the material and has an excellent ability to get that knowledge across to students in his lectures. He's extremely organized, always showing up for exams with a detailed plan of exactly what he wanted to do, but never afraid to deviate slightly to answer a student's question. (The only exceptions were the two exam review classes, when he stated up front that he would show up with no plan, and spend the time answering whatever questions people had.) There was no book for the course, but he walked us through the methods of constructing and traversing data structures, and really worked on explaining the rationale behind the use of different ones. If you come to class and follow what he's going through, you'll be fine. He's always open to answer questions, and will be happy to explain why he does things in certain ways before going on. Just a note: show up on time for class! This course met at 9:10 on the 7th floor of Hamilton. Yes, I know that feels early, especially for CS majors. Yes, I know it's a pain in the ass to get to the 7th floor of Hamilton without getting to the building at least a few minutes early. Make the effort to do so. Professor Pasik was always in class at least 10-15 minutes before it was scheduled to begin, and was happy to answer questions about the course work, CS in general, or anything else (he's a somewhat experienced scuba diver). He starts class exactly on time by laying out exactly what he's going to cover, and giving infrormation that's really necessary for understanding the rest of the material in that class. Lots of people would then routinely walk in 10, 15, or even 30 minutes late, then wonder why they were having trouble understanding the material. Professor Pasik was always available after class to talk with students, and was great about responding to e-mail messages. The material in this class is not so intuitive to plenty of people, but it's a lot harder if you don't come to class. For those of us who came to class ontime regularly, it was a lot easier. Pasik doesn't expect you to just copy the data structures from your class notes. He wants you to be able to understand how and why they work, so you can effectively use them. At the beginning of the semester he doesn't expect a full comprehension of all of it, but by the end he really expects people to have picked up on the things he was driving home all semester. The homework assignments follow this trend. All in all, a great professor. I'm hoping to have the opportunity to take more classes with him.