Series: Leaky Abstractions

1. Law of Leaky Abstractions

Jul 7th 202110:39

Huiqi and I have chat about Joel Spolsky's Law of Leaky Abstractions: https://www.joelonsoftware.com/2002/11/11/the-law-of-leaky-abstractions/. We touch on various topics including TCP/IP, SQL, ORMs, frameworks, and more.

Watch “Law of Leaky Abstractions”

2. Real World Leaky Abstractions 1: Kubernetes, ng, and React

Jul 14th 202113:30

In this chat Huiqi and I give some concrete examples of leaky abstractions. In particular, we give examples in Kubernetes/Docker, Angular, and React in which the abstraction failed to hide the details of the implementation.

Watch “Real World Leaky Abstractions 1: Kubernetes, ng, and React”

3. Real World Leaky Abstractions 2: Sharing TypeScript

Jul 14th 202110:52

In this video I share with Huiqi a war story where I try to share TypeScript definitions among 3 projects: a nest.js project, a React-create-app project, and a React Native/Expo project. It is a classic case of a leaky abstraction: where something which seems like it should be straightforward ends up sendings me through a long series of rabbit holes.

Watch “Real World Leaky Abstractions 2: Sharing TypeScript”

4. Real World Leaky Abstractions 3: Python and Having No Time

Jul 14th 202115:05

Huiqi and I continue our journey into the realm of leaky abstractions. This time we give examples of low code/no code tools, i.e. code generators, Python 2's range function, and then talk about the prospect of making choices when one "has no time".

Watch “Real World Leaky Abstractions 3: Python and Having No Time”

5. Can Leaky Abstractions be Solved?

Jul 14th 202108:43

Huiqi asks me a pressing question: what is the solution to the problem of leaky abstractions? Do I have an answer? Watch and find out.

Watch “Can Leaky Abstractions be Solved?”

6. Open-Closed Principle

Jul 21st 202126:48

Jason, Huiqi and I discuss the open-closed principle while relating it to the law of leaky abstractions. We use Uncle Bob Martin's paper as a reference. We introduce the concept as well as talk about where its applicable as well as its limitations. If you are following along, I strongly encourage you to read the paper yourself: https://drive.google.com/file/d/0BwhCYaYDn8EgN2M5MTkwM2EtNWFkZC00ZTI3LWFjZTUtNTFhZGZiYmUzODc1/view?resourcekey=0-FsS837CGML599A_o5D-nAw Part 2 of this conversation can be found here: https://youtu.be/VIdJ-XcQcKY.

Watch “Open-Closed Principle”

7. Open-Closed Principle Part 2

Jul 21st 202111:44

Jason, Huiqi and I continue our conversation about the Open-Closed Principle. You can find part 1 here: https://youtu.be/tg3ZOS3neaQ. Here we discuss what signs we use to tell us when to refactor and when not to refactor, and how to develop refactoring and software architecture skills.

Watch “Open-Closed Principle Part 2”

8. Leaky Abstractions IRL

Aug 4th 202108:34

Even more leaky abstractions talk! This time Huiqi and I give examples of leaky abstractions that happen in real life, as in outside of coding. Enjoy!

Watch “Leaky Abstractions IRL”

9. Thoughts on Ejecting from a Framework

Aug 11th 202107:21

Huiqi and I talk about the notion of ejecting from a framework using React as an example and I express my problems with the concept.

Watch “Thoughts on Ejecting from a Framework”