How well do you think the course conveyed those takeaways?
I feel that the course conveyed the takeaways pretty well. Everything was well explained and I got to learn more about the topic and how everything works under the hood. Going through multiple examples really helped.
Were there any other particular takeaways for you?
I liked that we got to work with partners since it will make the projects much easier to understand and work through. Also, the workload is less when you partner up. The one thing that I did not like was that we cannot be with the same partner as before, but I understand since it is part of building relations and be prepared for the outside world. I also liked that we can get extra tokens easily to help us with our final grade.
How did you feel about cold calling?
I really hate cold calling, of course, since this is coming from an introvert’s perspective. I don’t like to be put on the spot, and also don’t want to embarrass myself when I do not know the answer to the professor’s question. On the other hand, it does keep me focused and attentive at the lecture and the material we are covering since the next person who gets called on might be me.
How did you feel about specifications grading?
I feel that overall, it is a good grading method. It is simple to understand and it seems that it is easier to get an A if you do the bare minimum. Also, the rules when it comes to resubmissions seems totally fair. Pretty straightforward, if you ask me.
How did you feel about help sessions and office hours?
I did not go to office hours or any help sessions.
How did you feel about the support from the TAs?
The TAs are super helpful, especially when we are in the breakout rooms doing the exercises. They tell us how to do things, correct us on our mistakes, and come to help when requested.
What required tool did you not know and now find very useful?
I find that Valgrind is very helpful because not only it helps you with the unit tests to see if your program is working perfectly, but it also tells you if you have memory leaks. Memory leaks are a huge deal in C and C++ and you should always take care of it no matter what.
You should have read five papers that describe SOLID design: Single responsibility, Open-closed principle, Liskov substitution, Interface segregation, Dependency inversion. What insights have they given you?
The insights that it has given me is that it has helped me become a better OOP programmer. It taught the yays and nays about OOP development and how you should design your code. I has changed the way I develop OOP projects from now on.
You should have read two papers that advised minimizing getters and setters. What insights have they given you?
It has showed me that it is very dangerous to use getters and setters since we may accidentally mess with the data of that instance in ways that we don’t want. It will be hard to change this habit because I am a Java person at heart, and that has been my entire experience with Java. Getters and setters are the norm when growing up with Java.
Give me your suggestions for improving the course, but apologies in advance; specifications grading will remain.
Everything was great, the course way well managed. The only issue I have is when it comes to regrading requests. I feel they take too long for our requests to be accepted, but I understand the TA’s are also busy and have a lot on their plate.