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.
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.
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.
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".
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.
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.
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.
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!
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.