TG #40: Abstraction
July 11, 2017 – 2:30 amPodcast: Play in new window | Download (Duration: 27:50 — 25.9MB)
This week’s episode has us discussing the use of abstraction in engineering and in pet management.
Lamest News of the Week
The serious story: Hobby Lobby reaches settlement on importing Biblical artifacts. http://www.cnn.com/2017/07/05/us/hobby-lobby-ancient-artifacts-trnd/index.html
The lame part: The actual name of the court case! https://drive.google.com/file/d/0B7iIRjahNvNcclpUZXdDaU83eE0/view
Abstraction
Some real reference for further reading: https://en.wikipedia.org/wiki/Abstraction_(software_engineering)
- Abstraction is the art of simplifying a system, so that rather than needing to understand HOW something works, you only need to understand how to interact with a system.
- Why is it important? It allows you to deal with a problems in a more componentized way.
- A good gauge for abstraction is when you create something, do you just “ask it questions†without fear that it will do something unexpected
Examples of abstraction:
- Shadow Is  a Kitty, and she eats. Her favorite food is tuna
- Unicron is a giant robot and he eats. His favorite food is earth.
- Amoebas are single celled organisms and they eat. Their favorite food is brain tissue.
Rather than deal with these things on a one by one basis, we can say that:
- They all eat
- They all have a favorite food
When abstraction goes wrong, though…