CS 373 Spring 2022 — Week 9 Blog, Joseph Muffoletto

This past week, I studied for my Reinforcement Learning exam, worked on the backend of our SWE project, continued debugging the code signature for my game development research, tutored at Govalle Elementary, hung with friends, and propagated many of my plants.

I have spread myself too thin for this semester, so it is hard to make time for my commitments. When one improves, another suffers. It's a frustrating cycle that I am still working on balancing.

Next week, I want to wrap up my game development research, help my group complete our phase II submission, complete my project proposal for my synthesis/verification course, catch up on my Roman history course, tutor again at Govalle Elementary, generate data for my autonomous systems research, and begin the literature review for my Reinforcement Learning course project.

I thought it was interesting, but also a bit redundant. At its core, the DIP is a design that combines the Liskov Substitution Principle with the Open-Closed Principle. To eliminate bad design (rigidity, fragility, and immobility), the author posits that modules should only depend on abstractions and that these abstractions should not depend on details.

The lecture I enjoyed the most was the one over decorators. Oftentimes, I find myself having debug statements littered throughout my code. With decorators, it seems like there is a clean way to: a). enable/disable debug statements with a small change and b). add logic to debug statements without adding clutter.

This week, I volunteered as an after-school tutor at Govalle Elementary School and it was a really enjoyable experience. The kids were hilarious and so eager to talk to us. I’m really looking forward to going back again this week.

Pipreqs is a Python package that automatically generates a dependency file (requirements.txt) for any Python files you specify. While pip is able to generate a list of module dependencies, the list includes all of the modules installed in your environment. As such, if you did not use a virtual environment to isolate your backend’s modules, you will want to use a package like pipreqs.

--

--

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