Final Entry

Jeff
CS373-Blogs
Published in
2 min readDec 5, 2020

It’s the last blog of the class :)

Here’s a list of the class takeaways.

  1. test first, test during, test after, test, test, test
  2. when designing algorithms, demand the weakest capabilities (e.g. iterable vs. indexable)
  3. when designing containers, provide the strongest capabilities (e.g. indexable vs iterable)
  4. build decorators on top of containers, iterators, and functions
  5. utilize the benefits of being lazy (i.e. yield)
  6. always look for reuse and symmetry in your code
  7. collaboration is essential to the quality of your code and to your well-being in producing it
  8. refactor, refactor, refactor
  9. make your code beautiful

How well do you think the course conveyed those takeaways?

To be honest, I didn’t even realize I was learning about these takeaways until I saw the list. Throughout the class, these takeaways seem like the logical decisions given the context of the situation. But now that I am looking at the list, I realize that I’ve picked up a lot of these heuristics.

Were there any other particular takaways for you?

I think takeaway #5 was pretty interesting for me. This was the first time I’ve worked with generators and they definitely changed the way I code and the way I think about code.

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

I like the two-stage system. It is more accommodating for students that are less prepared. I didn’t really know what to expect on the first test so I went in with the mindset that it would be like a recruiting hackerrank. To say the least, I was sorely surprised and performed really really really poorly (10/65). However, after reflecting on the first part, I realized it was less of a recruiting hackerrank and more of a programming language logic puzzle. Ever since changing my mindset, I’ve been doing pretty well. If it was a one-stage test, I would not have a chance of getting an A.

How did you feel about cold calling?

I hate Zoom cold calling but I don’t think it would be as bad in person.

How did you feel about office hours?

Pretty great! The TA’s are super helpful :)

How did you feel about lab sessions?

Very useful! Our team benefitted from lab sessions a lot :)

Give me your suggestions for improving the course.

I think the first part of the second test could be improved in terms of question specifications and testing. I also think the piazza post on what areas points will be taken off on was very useful. Having that in multiple areas (such as on the website, canvas assignment, etc.) would be nice. Also it was kind of difficult to find the idb assignment page on the class website.

Overall, I had a great time in this class and I would definitely recommend it! :)

--

--