How well do you think the course conveyed those takeaways?
The course conveyed the takeaways really well in my opinion because there were so many different ways to learn from. We had lectures as well as reading and assignments that allowed for me to see hear and do the code and understand it well
Were there any other particular takeaways for you?
I really enjoyed learning about C++ semantics. I am not sure how useful it is in industry, but it is always good to have a foundation in C++ since there is a lot of concepts that really carry over well to other languages.
How did you feel about cold calling?
I think cold calling kept me on my toes and helped me understand the concepts better. I don’t think having the camera on was super necessary though. The same effect of cold calling can occur without having to turn the video on.
How did you feel about specifications grading?
I don’t think the specification grading was super fair from an objective perspective. I think the biggest issue it has is that it disincentivizes students from trying in all categories towards the end of the semester. For example, if a student already missed 5 quizzes, they are at a A- at max. This means for the 5th project if they have done well on the previous 4, there is no reason for them to try to solve the project besides the practice value. I found myself in this situation and I don’t think this situation would have arisen if the grading was normal.
How did you feel about help sessions and office hours?
I think they were pretty helpful. I they helped me understand higher level ideas
How did you feel about the support from the TAs?
The TAs were great. They taught me a lot and helped me understand the concepts of the assignments.
You should have read five papers that describe SOLID design: Single Responsibility, Open-Closed Principle, Liskov Substitution, Interface Segregation, and Dependency Inversion. What insights have they given you?
I wish we talked about these in class because while I understood this idea in principle, going over it in class would have further solidified the ideas
You should have read two papers that advised minimizing getters and setters. What insights have they given you?
These papers changed my perspective on how objects should be designed and who should do what work. It wasn’t until Darwin and Life that I fully understood what it means by minimizing getters and setters
What required tool did you not know and now find very useful?
I found it really useful to understand how GCOV worked. In my last internship, we had a coverage tool similar to GCOV, but I never knew what exactly it was measuring and how to increase coverage. Now I do have a better understanding because of the projects.
In the end, how much did you learn relative to other UT CS classes?
I think I learned a little below average if I am being honest. Most of my other CS classes were really broad and this one was fairly deep in a couple of specific topics. I wished there was more discussion on SOLID design in class so I better understand the principles.
Give me your suggestions for improving the course, but apologies in advance; specifications grading will remain.
I think incorporating discussions of the paper in class would be really useful. I understand as a student we have to read and do our due diligence on these papers, but without classroom discussion, I wasn’t able to learn as much as I wish I could. I wanted to also ask questions about SOLID design which I would be able to do if there was a classroom discussion on this topic.