CS371p Spring 2021 Week 9: Yichen Zhang

Yichen Zhang
2 min readMar 27, 2021

What did you do this past week?

This week I spent most of my time learning to build my own website using React and practicing coding in C++ for an upcoming interview. I also finished a group project for Autonomous Driving this morning. Yesterday afternoon after lectures, I went to the Greenbelt trail for a walk.

What’s in your way?

I’m desperate for a job for the summer. If the interview doesn’t go well next week, I’ll probably end up chilling for the whole summer, which is also pretty nice. The other concern is that I have to decide which offer to accept from a couple of admission letters from grad schools.

What will you do next week?

As mentioned above, I have a technical interview next week and I will continue to perfect my website. After that, I’ll probably dive into deepening my knowledge in Machine Learning.

If you read it, what did you think of the Interface Segregation Principle?

Interface Segregation Principle is basically the idea that clients should not be relying on a class that provides a set of methods that it will not use. Interfaces should provide the smallest set of methods needed by the client to complete the job.

What was your experience of initializations, and vector? (this question will vary, week to week)

I noticed the weird syntax when initializing a vector, i.e. ‘vector<int> x(4)’, but I never looked into it. I definitely have a better understanding of the nuances between all four ways of initialization after lectures this week. It’s amazing how flexible initialization is in C++ than in Java. I use vectors and other STL containers, such as priority_queue a lot recently for the coding interview. One thing about a vector that is better than ArrayList in Java is that it allows us to index it instead of using .get(index) for ArrayList.

What made you happy this week?

I’m really excited to receive an offer from Columbia University earlier this week. That’s my highlight of the week.

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

scikit-learn is a wonderful Machine Learning library in python. It provides us pretty much everything we need to train a model and to analyze it. Something like cross-validation can be done in just one line and the correctness is guaranteed, which saves us tons of time.

--

--