CS371p Spring 2022: Week 8
What did you do this past week?
This past week I had a lot of exams, so I mainly studied for those. I went back home earlier in the week, so I just took my exams virtually. I also finally turned in that big Networks project that my parter and I had been working over the past few weeks, and also the Data Mining sklearn assignment.
What’s in your way?
I am behind in my linguistics classes, so I will probably need to spend some time over break catching on lectures and whatnot.
What will you do next week?
Next week is Spring Break, so I will mostly be taking it easy with family and meet some high school friends as well. I might watch the new Batman movie everybody is talking about. I’ll probably file my taxes as well because it’s a good time to, catch up on my linguistics classes, and just go to the gym regularly.
What did you think of Paper #8: Interface Segregation Principle?
I think it was a pretty straightforward idea, and the article gave good examples showing why the ISP is useful. It also showed that compilation time might a real consideration in larger scale codebases. It was also interesting to see the adapter design pattern being put to use. Essentially, if you are ever doing inheritance and you think that a certain subclass does not need some interfaces that it is inheriting, the ISP is probably being violated.
What was your experience of std::array, iterators, and equal?
These topics were pretty much new to me, as I always typically use the C-style array, and never really explicitly used iterators. It was really helpful to see the different types/strengths of iterators and how they have pointer-like syntax and semantics. I will probably used std::array if I need a stack-allocated array from now on.
What made you happy this week?
Honestly I was happy to finally be done with exams and look forward to spring break. I could definitely use the time to recharge.
What’s your pick-of-the-week or tip-of-the-week?
Ever try to learn a new terminal command, and people tell you “just look at the man page”? Well typically man pages are overly descriptive and kind of disorganized to the point where it becomes hard to figure out the prototypical use of the command. There’s a nice little community-driven tool called tldr pages which simplifies man pages and gives useful examples.