May 12, 2009 23:40
I spent the spring semester taking another course at NYU SCPS: the next class in the Java certification program, Java I. This time around, I had the unfortunate experience of having probably the worst teacher in my life.
I should've known the class would be awful when the teacher came in 30 minutes late on the first day. He then spent another ten minutes trying to figure out how to hook up his computer to the projector, before someone in the class stepped in to help. This of course gave all of us a bad first impression, and I could actually hear people around the room sighing with exasperation and muttering under their breaths at him. I was tempted to drop the class right away, but I decided to stick with it because I didn't want to have to lose the non-refundable $1,100 I'd paid, it was a required class to get the certification, and there's only one section of it offered per semester.
It was clear right away that his teaching style was not for me. Every other programming class I've taken has been in a computer lab, and in fact I've never heard of anyone taking such a class in a room that didn't have computers. In my previous class, the instructor had even set aside time for us to work on assignments while he went around the room helping us one-on-one (or we helped each other). Here we just had a regular classroom, with a single computer for the teacher and a projector. He'd brought his own laptop as well, but the class was stuck having to take notes on paper. I ended up bringing my laptop to every session so I could at least follow along and perform some of the demos myself, but it's no substitute for actually having the teacher walk around and help you.
He seemed knowledgeable enough about Java, but he was still terrible at teaching. He wasn't good at explaining concepts and would often go off-topic when trying to give an example. He'd spend large chunks of our class time attempting to write out code on the fly and fumbling with it, making careless mistakes along the way. I should've known to quit after the first class, when he demonstrated his inability to add 4 and 9 together ("11?" "15?"). Apart from this, he tried to cram way too much material into an introductory course. We hardly had any time to process a concept before he'd already barrelled onto a new topic, often one that he told us outright was beyond the scope of the class and what we were expected to know. As a result of all this, he usually ended up not having enough time to finish teaching the material that was supposed to be on the syllabus for that class period, and we were expected to learn the rest on our own in order to do the homework. He'd still finish the lesson the following week, but at that point he was already cutting into the time allotted for that week's lesson.
He provided supplementary handouts of 40-60 pages each week, which were required reading in addition to whichever Java textbook we personally had decided to use. He wrote these himself, which is impressive until you consider he has no sense of grammar or spelling (he's a fluent but non-native English speaker), and the code examples he gave also often contained errors. Apparently he's been using these same handouts for 10 years. You'd think after all that time, he'd at least go back and fix the mistakes, or get someone else to do it. This also made it difficult to understand exactly what he was asking for in many of the assignments.
Things really didn't improve over the following classes. He continued to come late, often by as much as a half hour. He gave nearly weekly assignments, but was late in grading them (I still haven't received grades for all the ones I turned in) and was incapable of giving constructive feedback; he'd just point out you'd done something wrong when he'd never been specific about what he was asking for in the first place. I stuck it out, at first determined to do well despite the challenge. Eventually he started moving too quickly through the material, and I ended up sticking it out just to get the most out of my money. The weekly three-and-a-half hour sessions wore on me. By the last two classes, I had mentally checked out and didn't even care anymore about whether I passed, let alone whether my grade was high enough to get tuition reimbursement through my job. I couldn't bring myself to care, because it was clear that he himself didn't care.
By the end, I made my dissatisfaction obvious to my classmates. I told them what I thought of his teaching methods, and that I was going to complain to the department about him. Inexplicably, they all seemed surprised, even people who had initially expressed doubts about him. Several of them proclaimed him to be one of the best teachers they've ever had. During the last class, he ordered pizzas and threw us a "party." Most of the class was ecstatic, and people were thanking him profusely and telling him how much they'd learned from him. One woman even brought a camera to take pictures of him and the rest of the class. Apparently I was all alone in not caring for this guy.
The sad thing is, he's been teaching at NYU for 10 years now. I don't know how a school can purport to have a credible program when they have such an unprofessional teacher. Even worse, he teachers three or four out of the five classes required to earn certification in the program, and since each class has only one session offered at a time, you have no choice but to take multiple classes with him in order to finish.
This is the last class I'm taking at NYU. I've had it with this program. I was looking forward to SCPS as a cheap way to get Java certification, but at this point, I may as well learn the material on my own. It's clear they care about nothing except getting students' money.
FYI, the name of the instructor is Mohammed Rahman.