CS 371p Spring 2021: Final Entry

How well do you think the course conveyed those takeaways?

I think the course did a great job of preparing me for the real-world code I will write particularly for my internship, but even onwards for my full-time job. In addition, the ideas of always testing my code and allowing only certain levels of permissions will always stick with me now.

Were there any other particular takeaways for you?

Another takeaway that I had was that design is of the utmost importance when building a codebase. Setting out ample time in the beginning before you begin coding and flushing out a design is not only recommended but necessary.

How did you feel about cold calling?

Honestly, I thought the cold calling kept me focused in the class. In my other classes, it was incredibly easy to get sidetracked but the constant pressure of being called was a positive driving force for my attention.

How did you feel about office hours?

I felt like they were a pretty nice space to ask questions and be vulnerable. The TA’s and Professor Downing are more than willing to help with the projects and general C++ questions.

How did you feel about lab sessions?

I personally went to office hours more often, but I thought they were usually the same as office hours. I was comfortable in both to ask any questions.

What required tool did you not know and now find very useful?

I would definitely say GitLab’s CI/CD pipeline because it made it so simple to see if you were passing all personal unit tests and acceptance tests. This is something I will definitely implement in my future projects.

You should have read five papers that describe SOLID design: Single responsibility, Open-closed principle, Liskov substitution, Interface segregation, Dependency inversion. What insights have they given you?

These five papers describing SOLID design have given me a much better outlook on object-oriented design. I have passed by questions during interviews on OOD and I think these ideas will definitely help me in that realm. In addition, it has also given me the insight of thinking about scalability when building a class or function.

You should have read two papers that advised minimizing getters and setters. What insights have they given you?

Getters and setters reek of bad design because your implementation should embed those getters and setters in the code. This means that the class and the class itself should only have access to its variables. It is much safer and cleaner this way.

Give me your suggestions for improving the course.

I would say to give more time on exercises because I did have some difficulty for the middle exercises finishing on time. Other than this, I thoroughly enjoyed the class and learned a ton!

CS & Math @ UT Austin

Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

Postfix in Docker

Notes for “Learning Hadoop” on lynda

Now we can set the config on each screen with just a call to useStatusBar and it’ll always be…

##A typical processing pipeline will involve multiple operations and each

Selenium 4: Chrome DevTools Protocol [What’s New]

A short journey of processing 150 Mn short files with Hadoop and Spark

Oh My Zsh…

Unit Testing -Junit and Mockito

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Aten Kumar

Aten Kumar

CS & Math @ UT Austin

More from Medium

Why One should learn Java : Object Oriented: In Java, everything is an Object.

Normalization in DBMS

Some JS concept

Questions to ask when defining the UX of an internal tool