[Final Entry] CS371p Fall 2020: Nour Hajjar
How well do you think the course conveyed those takeaways?
- test first, test during, test after, test, test, test
- when designing algorithms, demand the weakest iterators (e.g. bidirectional vs. random access)
- when designing containers, provide the strongest iterators (e.g. random access vs bidirectional)
- build adapters on top of containers, iterators, and functions
- always look for reuse and symmetry in your code
- collaboration is essential to the quality of your code and to your well-being in producing it
- refactor, refactor, refactor
- make your code beautiful
I think it did an excellent job conveying all these ideas. Every idea had to come up somehow in every project or exercise we have done and it became more clear throughout those many exercises during the semester.
Were there any other particular takeaways for you?
There were many take aways for me espcially when it comes to build my personal projects. First, getting introduced to all tools in docker, learn how to read and edit makefile, learn how to work with GitLab, do unit testing and testing in general ,and the most important thing to me was the work in pairs which I made use out it in all four projects. Sometimes, It really made me look at coding problems from a different angle or approach it differently besides that I had the chance to work with new tools like VSCodeLiveShare which is a tool one of my partners told me about. Finally, it is about all those things that I’m sure I will be dealing with a lot in this industry and it’s about learing and buidling the best code structure.
How did you feel about two-stage quizzes and tests?
Honestly it’s the first time for me to see this format and I really liked it. It’s a simplified format for a team work and espically for those who decided to do all projects individually. Even if you think you are very expert at coding, sometimes if you have someone looking at your code, they will catch bugs that you can’t see yourself or they might suggest something that make your code cleaner and more beautiful.
How did you feel about cold calling?
I’m not a fan of this it’s just because most the time I know the answer and it won’t come up right maybe for being nervous, but it’s a very good way to make student prepare ahead, attend lectures, and stay awake during lecture.
How did you feel about office hours?
I went couple times to office hours and most of the time I get all my questions answered. It was really helpful especially on problems that require deep look.
How did you feel about lab sessions?
I barely attended lab sessions, but it’s an extra help in which student feel comfortable asking code-related question without worrying much about time limit.
Give me your suggestions for improving the course
I think there’s nothing much to improve. It’s really well-organized course. Maybe throwing some extra exercises on HackerRank before the test that somehow matches the difficulty and time limit that is similar in the test.
