Your feedback has been sent to our team.
17 Ratings
Hours/Week
No grades found
— Students
I took APCS junior year of high school, and this class was basically a continuation of that. Edwards is approachable, and though not the best instructor, he gets the point across. Homework assignments were a pain sometimes, but you just had to put the work into them. Labs fairly difficult later on, but the TAs just check for completion. Readings were only necessary to answer two basic questions every class - What did you learn? and What confused you? Also, the in class activities were only checked for completion and not accuracy.
This class is NOT the same as it used to be. Since people in CS 2150 were complaining that they were not adequately prepared for the class, Basit and Edwards ramped up the class. I did very well in CS 1110, and I really enjoyed that class, so logically I thought that CS 2110 would be the same way, but this was not the case. They decided to add in in class activities the semester that usually take 15-20 minutes per class, but this took 15-20 minutes away from the lectures so I feel like I never actually understood what we were doing. The homeworks were very difficult at times, and often require doing things we never talked about in lecture. Overall, if you have to take this class, then you have to take it. If you want to take this class because you enjoyed 2110, then I would definitely consider other classes.
1. Edwards or Basit?
Take it with Edwards. Period. NOT BASIT!!!
It is really hard to choose which professor as both are not the best in the world. But I recommend going with Edwards. I attended both lectures to see who was better since Professor Basit's teaching style did not work out for me for the first exam. I am nerdy enough to attend both lectures but I was honestly enrolled in Professor Basit's section, but I had unexpected travel plans that made me leave the city early so I just attended the section with Professor Edwards. After attending some lectures with Edwards, I just went to his section for the entire semester. Why? I figured out that Edwards was better at explaining the concepts for some reason since he doesn't read off the slides verbatim like Basit. I think he is better at engaging with students which helps you to stay focused and actually get something out of the lecture. Basit unfortunately doesn't do this. She just talks for 50 minutes (excluding during in-class activities) without engaging with the students. I was not engaged when I went to her lectures. But that wasn't only me. I could see more than half of the class just browsing the internet or doing other stuff for the whole class. However, Basit is super nice, especially during regrades. I got up to 10 points towards my second exam because I had a legit reason and explanation of how I interpreted the question. But I also heard she generously gave points back although you were simply WRONG. It depends on the question and the exam, but if you have some kind of reason and explanation you can argue with, I recommend going to regrade office hours. But don't use this system just to raise your grade. It's not fair to everyone.
2. CS 1110 vs. CS 2110 - Part 1
I thought CS 1110 was super easy, especially after they changed the programming language from Java to Python. You just simply code what you learn in class, and the POTDs are just a level above from the lectures. I did not take AP or IB Computer Science, so I was semi new to Java although I had some Java experience in high school. Python is so simple and you can do a bunch of stuff that yields the same result with different coding styles. It is a very open ended programming language. Java is not. It is an Object Oriented Programming Language that might be different at first. It has more rules and you have to create class and etc, but you get use to it once the semester picks up. I recommend though, that if you have some down time over the winter or summer, learn some Java on your own. It is really easy to pick up Java after you have mastered the basics of Python in CS 1110.
3. CS 1110 vs. CS 2110 - Part 2
Abstraction and Data Structures in CS 2110 is the main topic of the course. What is Abstraction and Data Structures? I had no clue what they were at the beginning of the semester since in CS 1110, every data structures like lists, dictionaries are made for you. Nothing was abstract in 1110. You just simply implement these given data structures when you code. VERY SIMPLE. In CS 2110, you learn abstraction, interfaces, Comparable, and Comparators that you have never seen in your life. It gets hard from here. I just figured out it is easier to memorize all the code so you can ace the exam, but in the end, I now know what they are and can code it myself. You will also learn new data structures (linked list, trees, etc) and you have to create it on your own. It is not given to you. It sounds challenging and it is quite challenging at first. It get's worse in CS 2150 (MORE DATA STRUCTURES) as I heard it from my friends. So be ready to spend more time in CS 2110. It is not that simple.
4. How to Succeed in CS 2110
The textbook, 'Big Java' is awful. AWFUL. I got nothing out of the textbook. I sincerely hope that they change the textbook. I personally like reading textbooks to clarify and understand what is actually going in the class, so I purchased a textbook on my own but searching the internet which had very similar topics. 'Data Structures: Abstraction and Design Using Java' is the textbook I bought and it is much more clearer and concise. If you have the extra money and willingness to buy this book, I highly recommend this textbook to everyone, especially if you are struggling on the material and need more resources. It doesn't cover all the material, but I would say it covers at least 80% of the material.
5. Concluding Remarks
I thought I would get an A in this class before the semester since I did so well in CS 1110. I heard from my peers that this class is so easy, even easier than CS 1110, and that this class is a joke. NO. That was not what happened to me. They did change this class a bit and it became more challenging. I admit it. I struggled a bit, and now I am hoping for an A-. If you want to succeed in the class, please read my review and don't take this light and simple like CS 1110. Looking back, I learned so much from the class--abstraction, new data structures, and basic algorithms. I think it is a good preparation for CS 2150 and other upper level CS courses. It only gets worse from here as far as I know, especially in CS 2150, so buckle up and be ready to learn the material. On a side note, there is a 2% Extra Credit on Machine Learning and Data Mining, and you get 1% Extra Credit by filling out the course evaluation. This will very likely raise your grade by the next +/- grade. Not a bad deal!
Great class to gain more experience in coding. If you like CS and want to continue in the CS path it is a great class to take. However lectures are not the best as they get a little bit monotonous at time. Honestly the best way to learn is on your own, you would only need to go to lecture to reconfirm what you learn. The course has changed from previous semesters to where there is more homework given and there are in class activities which count as a grade so its made reason for you to go to class which is a bit unnecessary. It seems as though the class is taught towards getting you toward the in class activity rather than to actually teach. Take this course if you are interested in learning more CS but know that it may not be as easy as it may have been before
First off - Edwards is a super boring lecturer - and going to his lectures does not help whatsoever. It doesn't matter at all whether you get Edwards or Basit - all the homework and tests are the same, and you won't end up going to lecture very often anyways.
This is a really easy class, and shouldn't be difficult for you to end up with an A. For the first two-thirds of the semester we learn Java fundamentals and OOP - basically if you've taken AP Computer Science, you've already learned it all, and it's not hard to pick up if you haven't. At the end you go over some core CS topics like recursion, algorithm complexities and data structures, which I really enjoyed.
As far as the tests go, you only really need to go over the slides the night before and you should be fine - the tests, including the non-cumulative "final", are only worth 50% of your grade. There were only 7 homeworks throughout the sem, and they were all pretty cut-and-dry, although some of them took a while to do simply because the grading system was annoying as hell. The labs are pretty useless and often times don't even deal with material covered in class, but if you go and put in some effort, you get the credit. There is an extra-credit assignment about Machine Learning that adds 4% to your overall grade, so that definitely helps (it's not very time-consuming once you figure out how to do it).
Honestly, not the most inspiring or interesting CS class, but it's an easy A, so I'm not complaining.
This course started off harder than a lot of people thought. The average for the first exam was 81 but after that it just got easier. Basit/Edwards make so many opportunities to help you out. You could earn up to 5% extra credit on top of your entire grade if you did some short machine learning project. (Took about 3 hours).
This was the first semester they took out the Android project from the curriculum, replacing it with a Java Swing tic tac nine project. I thought it was kind of dumb (Project should've been student chosen) but it's only worth 5% of your grade and I spent way too much time on it.
Tests are fairly straight forward; they are only about 20% coding. The first two tests only had 1 coding problem (where you had to code some method).
Overall easy course - I feel like I know more about some CS basics, but I don't feel like I got that much better at coding.
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.