I strongly suggest you to NOT take this course. The title of the course is very misleading. There is nothing about AR in such. The course is all about UI and graphics, and the professor does not want you to do any new things in his course. Any new idea will be crushed by professor and his some puppet lab assistant who are equally rude as him. The course content has nothing to do with the assignments or the final project you get. For the first half of the class his slides as basically history classes for graphics and you get to learn nothing. If you want to get grade in this class you need to be in his lab all the time just do what he says basically just follow him and forget the other courses you take. No matter what project you do you will not get marks because he neither tell you anything that is wrong with your project nor gives any suggestions until the final presentation by then you are basically screwed. My language might be harsh but this is nothing in comparison to the disappointment we got after taking this class.
I would not recommend anyone take this class with Feiner if it's not for a major requirement. However, it looks like it's being taught with Lydia Chilton this spring, so it might be worth it. She was a guest lecture this past semester, and was really enthusiastic and engaging. As you can probably tell from the other reviews, the lecture is extremely dry and covers a large number of UI studies, with almost no relation to the assignments. While it may be extremely painful, and no one else does it, going to lecture helps with remembering the seemingly random theories/studies asked about on the final. How to do well: For the assignments, remember that the most important thing is that your application meets Nielsen's Ten Usability Heuristics (and if they were coding projects, that they work). For the final, I picked out ~50 theories/studies from the lecture slides and memorized summaries of them, which worked out well.
Boring lectures, outdated material, slow grading, unrelated exam, unforgiving curve. Take these into account when signing up for this nightmare of a course. The lectures use outdated technologies presented on the most milktoast, text-riddled slides you will ever see. Feiner was extremely unorganized to the point that he never assigned homework 3 and then allocated those points to the final project and exam: both of which were rushed and poor reflections of actual student learning. The only way to even hope you can pass the final is brute memorization with zero application of course concepts. The first homework is a solid way to learn API interactions, but the others are just awful. Wait until another professor teaches this course, you seriously won't regret it. I was able to pull a B+ in this class because I took essentially the same course in undergrad, but many of my friends fell in the C-range despite actually being pretty good in the class up until that point. Overall, just don't.
The class is very well organized but the lectures are really boring. The assignments in this course are all based on Flash Builder with 3 assignments(2 individual) and a final project. The theory exams are totally theoritical. If you have a really good memory, you can do very well in the exam. Just read everything from the textbook as well as his slides thoroughly, as questions can come from anything: Be it a single line mentioned in the slide or rather a random paragraph from the tetxtbook.
This class is great for someone that is planning to go into UI research. For everyone else, not so much. It should actually be called "The History of User Interface Analysis and Research." Feiner spent many of the lectures describing, in laborious detail, research projects and ideas from 15 to 30 years ago. As the review before mine points out, the tests are sadistic. Unless you have a photographic memory, you are not going to do well. The midterm's questions were based on less than 1% of what was covered in the lectures, textbook, and articles he asked us to read. For example, 20% of the test was based on one random paragraph from one of the many articles. Another 20% was based on a topic he spent literally 5 minutes talking about during a lecture. Why is this a bad idea? It rewards students that have better memories or, to a lesser degree, that happen to get lucky because they studied the 1% of material that shows up on the tests. Studying for Feiner's tests is essentially a game of roulette, but with much a lesser chance of success. Oh yeah, and Flash Builder 4 is terrible.
I would not say that Prof. Feiner has a harmonious relationship with teaching, but it's hard to be more specific than that. He is careful to be organized and to cover material on schedule; yet he obviously hasn't edited the material he teaches in years - it's old and mostly irrelevant, although the final 3 weeks of class finally had some traction. He tries to be a good guy (I guess) by telling you how to prepare for exams and then says "do all the [voluminous, outdated] reading and review your class notes," as though that's helpful -- and then asks a couple of questions on the exams that are calculated to punish all but those who memorized the course material. 40% of the midterm, for example, was based on a topic covered by 3 pages in the text and a couple of his slides -- all of which seems faintly sadistic. The individual HW's were interesting; there could have been more of them. The team projects, as always, were an aggravating waste of time. I think that if, as a start, Feiner updated 60% of his course material and learned how to relax, both his and his students' attitudes would improve.
A word of caution. Feiner seems to have a predanatural power to remember faces. His class will bore you to tears, so few people show up. However he still knows who people are, and for those that are on this floor a lot (CEPSR 6), this is a big problem. I mean either that or scowling glares are the norm in his lab. PS: The material covered is common sense. Any basic design class (in any field) will teach you everything this class does (and then some). The biggest problem with way this class is presented is that there are 200 billion different rules and guidelines, which all together sound like superstitious drivel. The field has few (important) pricinples, all of which are presented in the first week. The rest is a waste of time.
I mostly agree with what's been said by earlier reviewers, but wanted to point out some ways in which the class was different in the fall of '03 compared to earlier years: Professor Feiner makes extensive use of powerpoint nowadays, as well as videos, some overhead slides, etc. The powerpoint slides aren't especially comprehensible in isolation, though; when reviewing for the midterm, have the notes in one window and google open in another to look up terms that aren't explained directly on the slides. Apart from that, I don't feel like I really learned the vocabulary and concerns of interface designers working in industry; the class focused more on academic UI research, past and present. I plan to redress this by doing a fair amount of independent reading this term.
Since you really have to take Feiner if you want to ever take UID, you need to just ignore his poor ability as an instructor; just use this opportunity to read a lot of textbook material and research papers in this field. It is a field that is completely ignored in ALL other classes, and it is quite important. Unlike most courses in the department it actually practical and applicable to anything you'll ever program. I do agree with all previous (bad) reviews. However, the problem with the allegedly harsh grading of the homework is that most of the grade is not based on functionality. Your program may follow all specs, but still get a C. It is the USER INTERFACE that gets you most of the credit. And you can only start thinking of user interface AFTER you completed all specs, which is usually around 5am the night before it is due. And that is truely a big problem with this class. But as you know from the previous reviews, you get some penalty-free late days to use on any combination of the first 3 (!!!)assignments. Another major problem is that there is a lot of reading, and it is all asked about in the midterm and final. As a rule of thumb, if there is a formula of some sort in any of the papers, it will appear eventually on a test. You will probably have to state it and explain it. Nothing too fancy, but you do need to memorize a bunch of them like it's a high-school history test. Not the end of the world, though. It is true, this class feels more like a Humanities class that a regular CS class. You have to read a lot papers, and there are never problem sets (only programming projects with minor explanations of "why did you choose the interface that you did"). It is, though, not the hardest class you have taken or will take in the department, and it opens a window to a very neglected (and again, practical) area of compters. Lets face it, in the real world, your boss/client is much more likely to care about the interface of your program. And like in this class, they are going to take the functionality as a given.
I will admit that his lecturing style is pretty bad. But he does make time for his students in office hours, and looks like he genuinly wants to talk to you. You meet with him once, and he will remember your name. So that is one good part of this professor that shoudl be remembered. Workload in the class is not that bad.
Never in my life have I seen a professor hold so much contempt and disdain for his students. Feiner's lectures are flat out boring and . He has you read one or two of around 25 long research papers, and then just stands in a corner and writes sloppily on an overhead projector while discussing it. He is impossible to approach, because he seems to believe that students (and their questions) are below him. The three homework assignments here were not hard (about 15 hours each, roughly), but the final project was tough only because of the demo. Doing a demo with Feiner is basically him apathetically saying "mm hm" every two seconds to your explanation, and then bringing up every bad aspect of your program to you that he can find in the 5 minute span and grilling you on it. Tests are tough, too. Feiner holds you responsible for those research papers on his tests, which are entirely essay form. The bottom line: unless you enjoy reading insane amounts of research papers, steer clear of Feiner.
Why does this Prof. even bother to teach, it's so obvious that he hates it and has contempt for students. There is too much reading for the class, as in addition to the textbook (not bad) he assigns copious amounts of PHD disertations that are total BS. The subject is interesting, but he berates his TAs and they then grade the projects harshly.
Interesting material but presented in a very confusing manner. Will someone explain to Feiner how to use Visio and Powerpoint so that no other student has to put up with his badly drawn overhead slides, he does also teach User Interface Design. Very confusing and extremly poorly written programming assignments that the majority of students have no idea how to tackle. TAs are swamped with questions. Makes disparaging remarks in class about those who do poorly in midterm.
A mediocre lecturer who takes a lot of time to confuse you, instead of doing it quickly like other comp sci profs. At least, that was my impression until I stopped going to class. His lateness policy is a breath of very cool fresh air -- thank god, because the assignments themselves are poorly designed and students are ill-prepared for them. Like in some other comp sci courses (ahem, OS), you get the feeling that the professor and TAs started out with very ambitious assignments that they were going to prepare students for -- until they forgot to do the preparation part. But even that may be being overly generous, because the net result is inexcusable: students have no clue how to approach the programming, and TA office hours (again, so much like OS and other high-level CS classes) turn into unofficial cheating sessions where beleagured TAs have no choice but to disseminate crucial information (that the rest of the class doesn't get). I don't know if Feiner and his TAs even realize how much potential for learning gets thrown out in the process. And while there may be worse professors in the department, that doesn't make Feiner good. The bottom line? Steer clear.
User Interfaces contains useful, if somewhat obvious, material. He basically follows the book without adding a huge amount. He has a fair lateness policy, but seems unable to deviate from it when student's circumstances require it (i.e. sickness).