CS 373 Spring 2021 Week 8: Ian Trowbridge
What did you do this past week?
I finished a test for my class on concurrency and started my portion of the second phase of the SWE project. I created several python functions to programmatically scrape information from our APIs and output JSON files with several model instances.
What’s in your way?
What will you do next week?
I will work on Phase II of the SWE project. I also need to start and complete a project for my concurrency class where I program the K-means algorithm on a GPU.
If you read it, what did you think of the Liskov Substitution Principle?
I thought the Liskov Substitution Principle was rather interesting. I always thought of object inheritance as an ISA relationship, but the author pointed out some glaring errors that result from that model of inheritance. The rectangle-square relationship example effectively showed how the square inheriting the rectangle methods was poor design despite how a square is a rectangle in geometry. Otherwise, the paper detailed how following the Liskov Substitution Principle is useful to properly design and use polymorphism with inherited classes. The idea is abstract, so it will take practice to implement this principle correctly in my programs.
What was your experience of iteration, comprehensions, generators, and digits iterator?
I thought that the information about iterators and iterable objects was clearly conveyed and understandable.
What made you happy this week?
I am very happy that Spring Break started. I have a lot of work to get done for various classes so this break will hopefully give me enough time to finish
What’s your pick-of-the-week or tip-of-the-week?
Using the aiohttp package with asyncio allows you to create client-server sessions in python that asynchronously request information from your API websites. This package allows you to concurrently run several functions that are all performing GET requests to your APIs, which could be helpful if you need to quickly page through a lot of data.