Christopher Okhravi
172K subscribers
Searching for effective abstractions. I've been fascinated by abstractions for almost two decades. This continues to shape how I think about software and has led me to complete a PhD. On this channel, I share practical frameworks, mental models, and real-world examples to help you make better decisions as a developer. Whether you’re a student, entrepreneur, or seasoned programmer, the right abstraction can make all the difference. I make videos on: 1. Choosing effective abstractions. 2. Reducing complexity without losing flexibility. 3. Decision-making tools for scalable code. 4. When and why to make trade-offs. If you’ve got a question, challenge, or story, email me—I’d love to hear from you. Note: Some links on this channel are affiliate links. If you buy through them, I may earn a commission at no extra cost to you.

Always Use Interfaces
Christopher Okhravi · 61K views · 2 years ago

Rebuilding Pokémon with Object Oriented Programming
Christopher Okhravi · 277K views · 7 months ago

Strategy Pattern – Design Patterns (ep 1)
Christopher Okhravi · 1.7M views · 9 years ago

Only Use Inheritance If You Want Both of These
Christopher Okhravi · 37K views · 2 years ago

Command Pattern – Design Patterns (ep 7)
Christopher Okhravi · 297K views · 9 years ago

The Only Time You Should Use Polymorphism
Christopher Okhravi · 108K views · 2 years ago

Dependency Inversion - how, what, why? (examples in C#) | Code Walks 004
Christopher Okhravi · 65K views · 10 years ago

Rules Have Reasons (Always Ask Why)
Christopher Okhravi · 17K views · 2 years ago

Depend on Abstractions not Concretions (Framework)
Christopher Okhravi · 24K views · 2 years ago

They Knew Waterfall Didn't Work
Christopher Okhravi · 14K views · 2 years ago

Strategy Pattern Screencast – OO Design Patterns Screencasts (ep 1)
Christopher Okhravi · 53K views · 7 years ago

Single Responsibility Principle (SOLID) | A single reason to change — Code Walks 006
Christopher Okhravi · 69K views · 10 years ago

Null Object Pattern – Design Patterns (ep 18)
Christopher Okhravi · 69K views · 8 years ago

7 Tips to Grow as a Developer
Christopher Okhravi · 18K views · 2 years ago

Never Rewrite Code (open/closed principle) | Code Walks 039
Christopher Okhravi · 27K views · 10 years ago

Liskov Substitution Principle
Christopher Okhravi · 22K views · 2 years ago

Testing VS Checking | Code Walks 034
Christopher Okhravi · 1.4K views · 10 years ago

Accidentally Used Design Patterns When Rebuilding Pokémon
Christopher Okhravi · 11K views · 6 months ago

Classicist vs Mockist Testing | Code Walks 036
Christopher Okhravi · 2.8K views · 10 years ago