Professor profile for Hamilton Richards
Student reviews of Hamilton Richards
Review from a student who took CS 345
Overall, I think this is a good class to take. It is probably the most organized course I've ever taken at UT. His lecture notes are available to buy before the semester starts. The notes are where you'll get most information for the hw/tests, and are very detailed. There are ten homework assignments, which you can work on in a group of up to four people, and turn in jointly. They are very lengthy - they could take anywhere from two to seven hours to complete - so you'll probably need to join a group if you want to finish them. They're worth doing though, as most test questions are very similar to the ones on the homework. The day after you turn them in, he'll give a very detailed solutions sheet. The tests are moderately difficult, but he'll let you bring in one page of notes. I suggest taking a look at the previous exams on the web page, and getting a lot of example problems down on the cheat sheet. The lectures are pretty boring. He usually reads the lecture notes for a bit, and then asks for questions. However, he's extremely knowledgeable about the subject and answers questions very well. He's also very helpful in giving homework hints before and after class. A lot of people complain about too much haskell (it's probably about 40% of the course material), but i think there's plenty of c++ to make up for it. Overall, nice guy, good course.
Overall, I think this is a good class to take. It is probably the most organized course I've ever taken at UT. His lecture notes are available to buy before the semester starts. The notes are where you'll get most information for the hw/tests, and are very detailed. There are ten homework assignments, which you can work on in a group of up to four people, and turn in jointly. They are very lengthy - they could take anywhere from two to seven hours to complete - so you'll probably need to join a group if you want to finish them. They're worth doing though, as most test questions are very similar to the ones on the homework. The day after you turn them in, he'll give a very detailed solutions sheet. The tests are moderately difficult, but he'll let you bring in one page of notes. I suggest taking a look at the previous exams on the web page, and getting a lot of example problems down on the cheat sheet. The lectures are pretty boring. He usually reads the lecture notes for a bit, and then asks for questions. However, he's extremely knowledgeable about the subject and answers questions very well. He's also very helpful in giving homework hints before and after class. A lot of people complain about too much haskell (it's probably about 40% of the course material), but i think there's plenty of c++ to make up for it. Overall, nice guy, good course.
Review from a student who took CS 336
I have to admit that I actually did pretty mediocre in this class. But if I had to go back and choose a lecturer to take for this class, I would choose Dr. Richards again. I could have taken CS 336 with another lecturer and gotten an easy A, but Dr. Richards knows the material very well. Don't get me wrong, his course is very hard, but it's worth the effort because he actually teaches the stuff you'll be seeing in your later comp sci classes. The only gripe I have is that the homeworks can be ridiculously hard because of a lack of references. Fortunately the homeworks can be turned in as a group, so you can divide up the homework. While it's a prereq class for comp sci majors, he does an excellent job covering the material. Definitely worth taking with him. Just watch it when you go to his office hours. He seems to be quite annoyed when you visit him at times.
I have to admit that I actually did pretty mediocre in this class. But if I had to go back and choose a lecturer to take for this class, I would choose Dr. Richards again. I could have taken CS 336 with another lecturer and gotten an easy A, but Dr. Richards knows the material very well. Don't get me wrong, his course is very hard, but it's worth the effort because he actually teaches the stuff you'll be seeing in your later comp sci classes. The only gripe I have is that the homeworks can be ridiculously hard because of a lack of references. Fortunately the homeworks can be turned in as a group, so you can divide up the homework. While it's a prereq class for comp sci majors, he does an excellent job covering the material. Definitely worth taking with him. Just watch it when you go to his office hours. He seems to be quite annoyed when you visit him at times.
Review from a student who took CS 345
For the greater part of this year, I jokingly refered to this class as "HI -- Haskell Indoctrination." If anybody tells you that Professor Richards will indoctrinate you with his views, its really true. Even though the class is called "Programming Languages," he spends most of his time teaching Haskell, an unknown third-rate functional language that nobody uses. However, you will also learn C++, Pascal, Modula-2 and ADA. That said, Richards is an excellent teacher. He's always receptive to questions, always glad to see you in office hours, always glad to talk to students. He is one of the few teaching professors I've seen at UT. His lecture notes are unbelievable; he gives his students all of the old midterms and finals; he gives detailed typed solutions to his homework (which although are quite long, can be done in groups). If you are hesitatnt about learning Haskell, don't be. Even though its not an industry-standard, you probably already know C++ or Java anyways. So keep your mind open and take this class. You won't regret it.
For the greater part of this year, I jokingly refered to this class as "HI -- Haskell Indoctrination." If anybody tells you that Professor Richards will indoctrinate you with his views, its really true. Even though the class is called "Programming Languages," he spends most of his time teaching Haskell, an unknown third-rate functional language that nobody uses. However, you will also learn C++, Pascal, Modula-2 and ADA. That said, Richards is an excellent teacher. He's always receptive to questions, always glad to see you in office hours, always glad to talk to students. He is one of the few teaching professors I've seen at UT. His lecture notes are unbelievable; he gives his students all of the old midterms and finals; he gives detailed typed solutions to his homework (which although are quite long, can be done in groups). If you are hesitatnt about learning Haskell, don't be. Even though its not an industry-standard, you probably already know C++ or Java anyways. So keep your mind open and take this class. You won't regret it.
Review from a student who took CS 345
I'm amazed to see positive results for Ham "Haskell" Richards. His idea of a survey of programming languages is Haskell (plus a bit of other random stuff). His lecture notes are thorough and, yes, he gives you past quizzes and tests... but none of this makes up for mind-numbing lectures. He simply starts going through the slides at the beginning of the lecture and stops when the time is up. Unless functional programming is a particular interest of yours... I'd put a lot of effort into taking your classes with another prof. If you do end up with Haskell's programming languages, be sure to get a capable homework group because the load can get pretty heavy.
I'm amazed to see positive results for Ham "Haskell" Richards. His idea of a survey of programming languages is Haskell (plus a bit of other random stuff). His lecture notes are thorough and, yes, he gives you past quizzes and tests... but none of this makes up for mind-numbing lectures. He simply starts going through the slides at the beginning of the lecture and stops when the time is up. Unless functional programming is a particular interest of yours... I'd put a lot of effort into taking your classes with another prof. If you do end up with Haskell's programming languages, be sure to get a capable homework group because the load can get pretty heavy.
Review from a student who took CS 345
I don't know what's so bad about taking Richards for CS 345. He's actually not as hard as he was in CS 336. Richards can be a little propagandish with his teachings, but he knows the material very well and he actualy makes you think change your preconceived notions of what you thought about computer sciences. His homeworks are time-consuming, but doing them (along with checking out his in-depth lecture notes that come in a packet) are extremely helpful for his exams. His lectures can be dull, but he throws in a lot of interesting anecdotes and related information concerning the topic he presents. While the class is called "Programming Languages", he dominantly uses Haskell, so you may want to prepare for it early on or take CS 337 before signing up for his class. Richards is also the most experienced CS 345 lecturer, so don't be fooled if another professor teaching the class fills up faster. It just means that the people signing up for the other CS 345 section are ignorant.
I don't know what's so bad about taking Richards for CS 345. He's actually not as hard as he was in CS 336. Richards can be a little propagandish with his teachings, but he knows the material very well and he actualy makes you think change your preconceived notions of what you thought about computer sciences. His homeworks are time-consuming, but doing them (along with checking out his in-depth lecture notes that come in a packet) are extremely helpful for his exams. His lectures can be dull, but he throws in a lot of interesting anecdotes and related information concerning the topic he presents. While the class is called "Programming Languages", he dominantly uses Haskell, so you may want to prepare for it early on or take CS 337 before signing up for his class. Richards is also the most experienced CS 345 lecturer, so don't be fooled if another professor teaching the class fills up faster. It just means that the people signing up for the other CS 345 section are ignorant.
Review from a student who took CS 345
My complaint is more about the course then the professor. Dr. Richards knows what he's talking about, cares about your academic progress, and will try to make you think. Unfortunately, the course moves slowly, and the material, depending on your background, might be as little as 10% new. Much of the course is spent learning Haskell, where I think it could be better spent focusing on other things. The course is pretty easy. His attendance policy is lax, his grading policy is generous, and his lecture notes are very good.
My complaint is more about the course then the professor. Dr. Richards knows what he's talking about, cares about your academic progress, and will try to make you think. Unfortunately, the course moves slowly, and the material, depending on your background, might be as little as 10% new. Much of the course is spent learning Haskell, where I think it could be better spent focusing on other things. The course is pretty easy. His attendance policy is lax, his grading policy is generous, and his lecture notes are very good.