CS371p Spring 2021 Final Entry: Ethan Lao

Ethan Lao
Trees Grow Down
Published in
3 min readMay 7, 2021

How well do you think the course conveyed those takeaways?
I thought the course did a great job of conveying the takeaways. I think the biggest one is about testing: it is always smart to think of the end goal result first before starting on the implementation, and consistently testing the code using a pipeline ensures that we are maintaining a consistent goal.

Were there any other particular takeaways for you?
The class taught me a ton about many general programming practices, which help make the code cleaner, more compact, and simpler to add features to in the future. Both the papers and lectures provided clear and understandable solutions to programming design issues, which I fully intend to apply in the future.

How did you feel about cold calling?
I felt comfortable about the cold calling, and Professor Downing makes it a relaxed environment to learn and ask questions. I thought it was a great way to add some engagement and interactivity into classes.

How did you feel about lab sessions?
I thought the help sessions were great for working out the kinks in project code, and the TA’s were always willing to listen and provide their feedback. Don’t be afraid to ask for help, everyone is friendly!

What required tool did you not know and now find very useful?
I thought that Docker was useful for creating a sharable “library” of tools so that an entire team does not have install the many tools onto their own machine. In addition, many other tools have support for Docker, like AWS, which is helpful for combining the many different tools.

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?
The papers provided many simple examples that made understanding the design concepts more straightforward. They have taught me a ton about the best coding practices to maintain in code that will minimize the future pain!

You should have read two papers that advised minimizing getters and setters. What insights have they given you?
I always thought that getters and setters were normal to have, but the papers and lectures helped me understand why minimizing them is important for reducing dependencies and writing clean, scalable code.

Give me your suggestions for improving the course
I have enjoyed this class a lot, and not having tests relieved a lot of pressure to allow us to concentrate on the projects. I thought the exercises were a great way to help us learn by practicing, but it was a little difficult to communicate properly when one person codes and the others constantly and stressfully give feedback, making the grade for an exercise sometimes not reflective of the actual understanding of the group in general. However, I think they could be much more effective if we were not completing them through screen-shares and Zoom!

--

--

Ethan Lao
Trees Grow Down
0 Followers
Editor for

Computer Science Student at the University of Texas at Austin