CS371p Fall 2020: Jed Benedict Eloja: Last Entry

Jed Eloja
3 min readDec 7, 2020

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 the course did a good job reinforcing the importance of the points above. While I do think that the projects in this course were easier to execute that the ones assigned in C S 373, they were not trivial enough to complete without considerable effort. Having good design, tests, and reusability made each successive project both faster and easier to complete.

Were there any other particular takeaways for you?

I think the many of the big takeaways were listed above, but I think the biggest lesson this class has to offer is the importance of having good design in your code. I spent more time completing the earlier projects for this class than I did the later ones despite the easier nature of the former. I credit this to my increased time spent planning the design of later projects. This allowed me to be more productive when actually programming.

How did you feel about two-stage quizzes and tests?

I enjoyed the two-stage quizzes and tests. Having a pool of different minds to pull from was very useful when I did not understand topics as well as I should have. Having the collaborative stage of the quizzes and tests follow the individual portion was particularly useful because I could discuss with others what wasn’t clear immediately after being made aware that I had gaps in my knowledge.

How did you feel about cold calling?

This is my second semester taking a class under Professor Downing and I feel the same way about it now as I did after the first semester. The cold calling is fine and not as scary as it may sound to people who are nervous after hearing about it. Professor Downing often guides you to the right conclusions even if you aren’t entirely sure yourself going into being called. Being called also feels like you are part of a conversation instead of merely answering a question. You work through the solution with Professor Downing instead of being asked for it.

How did you feel about office hours?

I personally did not attend office hours this semester, so I cannot comment on how they were. Piazza was very useful and would took care of any concerns that I would have brought up in an office hours visit.

How did you feel about lab sessions?

I did not attend any lab sessions this semester, so I cannot comment on how they were.

Give me your suggestions for improving the course.

I personally cannot think of anything too drastic that I would suggest changing about the course. I believe having an extra lecture at the beginning of the course on makefiles could be beneficial, but I think that is the only thing I would suggest changing. I felt like the class was handled excellently and would highly recommend it to any student in UT CS.

--

--