Your feedback has been sent to our team.
60 Ratings
Hours/Week
No grades found
— Students
After getting an uncurved 68 on the final, I thought I'd speak up... This class is a ridiculous amount of work for those who don't have coding experience. I spent at least 6 hours in office hours probably every week after the homework started to get hard. I would certainly suggest taking 1112 if you are interested in trying programming and don't have experience. I'm enraged by the score I got on the final compared with the level of work I put into the class. Sherriff is funny during lectures but extremely condescending when you ask him questions.
Sherriff did a very good job overall in overseeing probably the most well-run course I've taken while at UVa.
Attending class isn't wholly necessary (he even podcasts his lectures and posts code from them) but I found it very helpful to take the time to be there and practice along in person.
Homework ranges from very easy to relatively strenuous - get ahead on programs of the day and see TAs (top to bottom an outstanding and enthusiastic group of students) whenever help is needed. Submit them to the system early and check back to see if any adjustments are needed, and repeat. Same thing goes for the projects, which are all doable but require effort and communication between oneself and their partner. It is very doable to get a 100% on the homework and extremely doable to get above a 100% on all the projects - complete the tasks and be sure to use the lab time given wisely.
Labs are not bad - attend them, do your best, and likely you will get another 100% on the lab portion of your grade.
The first two exams were good in that they were largely what was to be expected - the posted reviews matched up with the material and if one is feeling confident about their understanding of the material and the process of coding excess studying is not necessary. The main difficulty inherent within them is that they are usually quite a lot to try to fit within 50 minutes.
The final exam this semester was disappointing. What had been billed as a walk in the park by both students from last semester and the professor himself was not so. Instead of being a few long coding questions (essentially simplified homework problems), the new final exam was (due I believe to grading time constraints) one coding question and 40 of some of the most inane, confusing, and unpractical multiple choice questions I had encountered. Totally unlike essentially anything that had been discussed with any depth during lecture and problems that someone would never realistically run into while doing basic coding. The professors and TAs essentially issued a mea culpa following said exam and curved it (a practice usually not done). I would not expect a similar model to be used ever again in the future, but it is something to be aware of.
Overall, a good time with Sherriff and a helpful and worthwhile class for just about anybody to take.
Great lecturer. He's pretty funny too. This class caters to students who have no experience with coding (like me). The POTDs can get really tricky and time consuming after the first several. Also the tests are difficult because you only have 50 minutes and a good bit of code to do by hand. This class is probably easier now because it is no longer taught in Java, but Python.
Sherriff is a great professor and lecturer. He does a really good job of explaining concepts and is engaging during lecture. It isn't absolutely necessary to go to lecture, but for someone who has never coded before, I found it extremely helpful to code along with him during class. This class does take up a lot of time trying to finish the homework (POTDs) and going to office hours, so allot enough time for that if you want a good grade. Exams weren't terrible, but again, you will need to put in the time and effort to study and read the textbook, especially if you haven't coded before. Overall, I enjoyed this class and even considered pursuing CS after taking it.
Sherriff is an amazing lecturer. He is very enthusiastic during lecture and always makes sure that people understand before moving on. The homework (POTDS) isn't terribly hard; the first couple ones will take you less than 30 minutes (with moderate typing speed) if you understand the very very basics. Around POTD 10 (there were 15 in total), the homework starts getting kind of hard and will take you over an hour to complete. However, the TA office hours are plentiful (4:30 - 9 M - Thursday + Sunday) and they are very helpful. Lab is heavily dependent on attendance and just trying your best. If you show up and try to do as much as you can, you'll get 100 for lab. The exams are fair; if he says something isn't going to be on the exam, it won't be on the exam.
There were some kinks in the course this semester because it was the first time the course was being taught in Python (it Java before) but those kinks were very minor.
It was a great course and I recommend it for everyone, even if you're not planning to major in CS.
Nevertheless, you have to put effort into the course and definitely start on the POTDS and projects EARLY because you might run into a problem and won't be able to do anything. The project take up a lot of time so make sure to start on those early enough (right when they are assigned).
This is definitely one of my favorite classes this semester. As a math major, I was required to take it but I really enjoyed it and will consider taking more CS classes. Professor Sherriff is very excited about what he teaches and wants you to get excited about programming. This class is not difficult to do well in if you put in a considerable amount of time. Don't be fooled by the grading distribution and think it's an easy A. To get an A, you really have to spend time on your homework and actually do it correctly and allocate your time efficiently during tests because you will likely run out of time. You can do fine without going to lectures but it helps a lot to practice along. If you do go to every lecture, you barely have to do outside work other than working on your POTDs (homework). Overall, I recommend this course to anyone who wants to know the basics of programming or just looking for a worthwhile class.
Sherriff is really funny and a cool guy; This class is super easy and Sherriff does a good job of trying to make sure you learn programming basics that you can apply to real life. The exams are of average difficulty (the averages are usually around a B) but they only count for 15% of your grade each. The 15 programs of the day (POTDs) are a big chunk of your grade, but if you work ahead and do a bunch of them in advance it's a lot easier and you don't have to stress out the night before they're due. I hated CS when I took it in high school but this class made me want to do a CS major. Highly recommend.
This is my favorite class I have taken at UVa so far. Professor Sheriff is good at explaining the concepts and he's very entertaining. Like others have said, it is really not mandatory to attend every lecture. The homework can be time consuming, but some of the problems were actually kind of fun. The only bad thing about the tests is the time limit. The final, however, provided much more time for its completion and, thus, was not too difficult.
It is important to go to every lecture and pay close attention to everything that is done with the code in class because it could be beneficial to know on your POTDs (homework), labs, and/or tests. POTDs become harder and harder as the class goes on but if you go into office hours and start your POTDs early you should be fine. Tests are manageable as long as you have practice and best way to practice is to do the POTDs and understand how the concepts that are gone over in class works.
Sherriff is a very good professor, but not a great one. Sherriff is good because he breaks down material very easily and conveys new concepts with ease (go to lecture!). Sherriff is not great because sometimes he can be abrasive and, frankly rude. That said, I would still recommend this class to anyone looking for an introduction to programming and problem solving. Sherriff had a lab for this course that met once a week. Weekly work consisted of lab work and homework: POTDs (program of the days which were actually done about once a week). The grading system for these programs is online and very helpful because you can submit assignments early and get feedback from the grading system which tests your program.
Get us started by writing a question!
It looks like you've already submitted a answer for this question! If you'd like, you may edit your original response.
No course sections viewed yet.