After learning to code, I heard that Object Oriented code was bad. Convinced by the arguments, I moved into functional programming. It blew my mind. It changed the way I write code. But I was still implementing a lot of interfaces. Now more than ever. Because ideally, you can build your software like Lego blocks where pieces of it can be easily switched in and out.

Anyway, I moved back to writing TypeScript again, now with new ideas. Hyper minimalism. TSDocs on every function. Fully tested. At first I avoided using classes. But then I realized they're the best way to implement interfaces. Now everything is about interfaces. What's right is the *separation of concerns*. Thanks for coming to my TED Talk.