I highly recommend this course with Tychonievich. Every lecture is completely optional because he posts every lecture online with all of the code, so if you're really busy one day you can just skip the lecture and watch it at a time thats more convenient for you. Tychonievich is very enthusiastic and quirky which makes the lectures pretty interesting. Like many other people have said, the difficulty of the course picks up about half way through, but its definitely manageable. For the first half of the semester the amount of work per week is probably 0 to 20 minutes, but after that, you might spend 30 min to an hour on a weekly assignment. You just have to be willing to put some more effort in and maybe go to a couple office hours, either with him or the TAs. In his OH he is very willing to help and will explain concepts over and over again until you understand them. Also there is a free online textbook that we had readings for, but I never did them and got by just fine. I had 0 prior knowledge of programming, but I am still ending with an A and didn't think the course was terribly difficult. Take this class with Tychonievich if you can.
Grade Distribution
No grade data available
45 Reviews
Professor Tychonievich was a great professor, and I deeply enjoyed the class. He clearly seemed to care about the success of students. The tests in the class are very fair, and they are graded pretty fairly in my opinion. The exam is easier than the assignments, so don't be afraid of the tests. Just study and understand the topics and you will be fine. Some people complain about the variance in helpfuness of TAs, but that is not really a big problem for me in my opinion. In my view, the biggest problem of the class is the availability of office hours. Some of the later assignments are difficult, and it is a bit frustrating and disheartening to wait 30 minutes and then get 3 minutes with a TA for help. The time you spend on the assignments will increase exponentially as you get further into the class so be aware. I got pretty stressed out for the last few assignments as a result of this.
I love this course and Tychonievich does a great job with it. He is very animated and emphatic in class; its very hard to not pay attention. I took this class looking for something different and I discovered I love CS and I'm hopefully going to pursue a CS major now. Tychonievich starts at the baiscs and really makes the material easy to understand. The amount of homework is manageable and the assignments are actually helpful. I consider textbook readings optional. I did well without them and think the lectures cover the necessary material very well. Also, all lectures are recorded and posted online which is a very helpful study tool. Great class, great professor, highly recommend.
I am honestly very surprised at all of the negative reviews. I took this class because I was interested in being a CS major, and this class completely solidified that decision for me. I have never enjoyed a class so much since I have been at UVA. Tychonievich is a great lecturer. He's quirky, fun, and cares about his students. He finds a way to explain things in a way that is very easy to understand. I had 0 coding experience before this class and came out with an A-. I think a lot of it just has to do with how much you care about succeeding in the class, and how your brain works (put me in a history class, and I fail miserably). I'd have to say I disagree with previous people who reviewed and said the homework assignments don't correlate with lectures...there were days in class leading up to the homework where he would essentially give us the code we needed to know for homework. He never outright said 'hey, this is for your homework', but I often found myself working on the code for homework and thinking "oh, this is exactly like what he covered in class the other day" and then I knew exactly what to do. I WILL say the class does get much harder about halfway through the semester, and it can take you by surprise. But overall, great class. I cannot recommend it enough.
I took 1110 because programming is extremely useful and I had heard good things about the class. If you love programming and want to devote a majority of your time to it, then take this class, otherwise it is not worth it. Luther is a really nice guy, but the course is very disorganized-by test time many people would not even know what they had to know and basic concepts had not been explained. Luther gives you specific examples of code instead of getting you to understand how the method works. Many times I would get help on homework and learn you were supposed to do it a way that he hadn't been taught. The class is very easy at first but right after the withdraw deadline the difficulty increases a lot with no warning, and I spent the rest of the semester extremely frustrated with the difference between what was taught in lecture and what was expected on assignments. Many of the assignment write-ups are unclear and not well written, sometimes half of doing your homework is just trying to understand what they want. On the final, an entire question had to be taken out because no one could understand what they wanted. On that note, tests are generally graded fairly but Tychon. does not provide much (if any) review materials, the week leading up to the test people were still trying to figure out what would even be on it/ how it would be formatted. Another poster said to learn some programming over the summer in order to do well and they are right, but that should not be necessary in an intro level class. Some of the TAs are helpful, but a lot of them don't know what they're doing. The system at office hours is designed poorly. It is done on a queue system, but not on when you arrive, but how much you get help(more times=farther down on queue). So you are penalized for getting help! I would sit there for two hours and not move from position 40 or get a TA that didn't know how to help me.. Lab is only graded on attendance so it is easy but not very useful. In response to someone who said that another poster who made a negative review was just a bad coder, I want to end by saying that I am a science major with a 3.9 GPA, so while I was not the best in the class I am a smart person. Many of my friends who took this class were frustrated by the disorganization and the way it was run.
I definitely enjoyed my time in this class. Luther is a generally clear and enthusiastic lecturer. He posts all of his lectures online, which is really good if you don't like huge lecture halls and/or have something else to do at lecture time. The assignments sometimes could take a pretty long time to finish, but they were never impossible, even without TA help. The difficulty level is nowhere near, say organic chemistry or mathematical statistics. Also, I agree that the poster below is exaggerating and/or a bad coder; most of my programs were under 50 lines.
Tips: Definitely try Codeacademy over the summer to familiarize yourself with coding rudiments and do the readings before lecture. Don't treat the class like a blow off, and you won't feel overwhelmed towards the end of the semester. CS 1110 was actually one of my easier classes.
I really enjoyed this class for the first part of the semester, but as most people have said, it does get pretty difficult. My advice is, rather than try to go to the TA's, find a friend and work on the assignments together. Some people are exaggerating in saying the assignments were "hundreds of lines of code." The majority of code you'll write for each homework is less than 100 lines. Luther is a decent professor, but has trouble explaining harder concepts to people who have never coded before. I would advise people to do outside readings for better understanding, and find coding practice problems to do to prepare you for the exams.
This is an intro to programming course and I took it as an elective due to its reasonable grade average and because I thought the subject matter was interesting and relevant. This first 1/2 the semester is mind numbingly easy I got a 97 on the first midterm without ever going to class. The day after the withdraw deadline weekly homeworks increased to hundreds of lines of code including methods we had not learned in class. Tychonievich settles into a pattern of teaching you how to do the homeworks in class 3 hours after they're due. TA office hours are miserable with 40 person queues and over hour long waits. Their system is not first come first serve and most the TA's are useless. Multiple told me the wrong answer and I had to go back another day to get one of the useful ones to help me fix it. That being said like 2/50 TAs actually knew what they were doing so kudos to them. If you want to dedicate hours of your life to CS or already have previous knowledge knock yourself out. Don't take this expecting helpful teachers/TAs
Luther is a good professor but this course is disorganized in some ways. It tries to teach you bits and bits of the Python language and just jumps around all over the place. However, if you have time and dedication for programming, you will do well in this course and getting an A should not be difficult. The course is fairly easy the first half of the semester, then the difficulty level increases like no other. If you aren't really planning on majoring in CS, I would suggest learning Python yourself.
Without any prior CS knowledge I found this class pretty easy at first, but the level of difficulty increased very fast. This ended up being one of my most difficult classes and made me decide I do not want to major in this. Luther is a good professor. His lectures can get boring, but he records every single one if you miss something.