CS 371g Summer 2020: Michael Lee

What did you do this past week?

In terms of school, I spent most of my time working on the Integer project for this class. There was definitely a lot to implement this time around and I also ran into some issues with the Hackerrank tests that took a lot of time to debug.

What’s in your way?

I need to figure out what else I can optimize in my implementation for Project 3 that would be enough to pass the last test case on Hackerrank. Though, seeing as I’ve already implemented the two main optimization algorithms for power and multiplication. I’m not sure if I’ll be able to come up with a new solution that doesn’t exceed the time limit.

What will you do next week?

I will finish up whatever I can for this project before the due date and work on the final project for my other class.

What was your experience of Test #1 and its two-stage nature?

I thought it was interesting and I’ve never taken group test before. I appreciated being able to discuss answers with other students and it definitely gave me more confidence in my answers though so overall I enjoyed it.

How are you doing and holding up? What’s been most helpful for you in terms of support at this time?

I’m doing fine, although this week has been especially busy. I’m currently juggling two online courses and an internship which I would not recommend to anyone else. Luckily, next week will be the last week of my other summer class so that will be a huge weight off my shoulders.

What made you happy this week?

The topic of designing a custom iterator actually came up as part of my internship project this week. In fact, I’ve been pleasantly surprised just how much overlap there has been with what I’ve been doing at my internship and the topics being taught in this class. Much of my work last week has been looking at the source code of a 3rd party library that provides templated iterators over datasets. There were some parts, namely std::iterator_traits, that I hadn’t known about before and was only able to understand because of what we’ve been learning in this class.

What’s your pick-of-the-week or tip-of-the-week?

My pick of the week would be gprof. If you’re not familiar with it, gprof is a code profiler that is very analyzing performance and identifying bottlenecks in your code. I actually used gprof on the last project while looking for areas of my code to improve in order to try passing the last Hackerrank test. Unfortunately, although I was able to find a few places to optimize to shave a few seconds off of my rumtime, I wasn’t able to identify anything substantial enough to pass the last test case.