Search
Lessons (24)
- What Is Clean Code?
Clean code is code that another person can read, understand and change safely. Here is why that matters …
- Clean Architecture
… dependencies always point inward](/img/clean-code/clean-architecture.svg) 💡 The one rule to remember, the Dependency Rule …
- Onion Architecture & Clean vs Hexagonal vs Onion
Jeffrey Palermo's Onion Architecture layer by layer, then a clear side-by-side comparison of Clean, Hexagonal …
- Clean Error Handling
… balance; }  Rule 3 …
- Choosing an Architecture
… Q2["2️⃣ Code organisation<br/ How is code structured INSIDE each deployable?"] -- A2["Layered · Clean · Hexagonal ·<br/ Onion …
- Clean Architecture in Depth
… of Clean Architecture and the Dependency Rule](/img/architecture/clean-circles.svg) 📘 The Dependency Rule: source code dependencies …
- YAGNI: You Aren't Gonna Need It
… Clean, tested code is what lets you change safely later. - Do think ahead for decisions that are expensive …
- What Is Software Architecture?
… subgraph Code["Organising code inside an app"] L[Layered / N-tier] M[MVC · MVP · MVVM] C[Clean Architecture …
- Layered (N-Tier) Architecture
… Changes cut across every layer "Add a discount code field" touches the controller, the DTO, the service, the …
- Finding Service Boundaries with DDD
… auth, email, payments"] -- GenHow["Buy / use SaaS"] Put your best engineers and cleanest design into the core ; buy …
- Domain-Driven Design: Strategic Design
… in conversations, documents, tests and the code itself . mermaid flowchart LR subgraph Without["❌ Translation everywhere"] E1["Expert: 'The …
- Comments & Formatting
… headline first, details later.  KISS = Keep It Simple, Stupid …
- DRY: Don't Repeat Yourself
… one source of truth instead of many copies that drift apart](/img/clean-code/dry.svg) DRY = Don …
- Hexagonal Architecture (Ports & Adapters)
… Exactly the same rule as Clean Architecture, drawn differently. A complete example: a library loan system 1. The …
- D — Dependency Inversion Principle
… The key to swappable, testable code. The big idea Your lamp doesn't have a wire soldered directly …
- Meaningful Names
… what is inside without opening the box](/img/clean-code/labelled-boxes.svg) 💡 Rule of thumb: If you …
- Small Functions That Do One Thing
… focused functions are like a chef's knife set, not a Swiss Army knife](/img/clean-code/one …
- DSA Interview Patterns Cheat Sheet
… Optimise<br/ name the pattern"] -- C["5️⃣ Code<br/ clean names"] -- T["6️⃣ Test<br/ walk through"] -- X …
- Deploying & Operating Microservices
… code is in production, flag off)"] -- Staff["👩💻 Staff only"] -- Ten["10% of users"] -- All["100% ✅"] All -- Clean["🧹 …
- Behavioral Patterns I: Observer, Strategy, Command, State
… who talks to whom, who decides what, and how to change behaviour without rewriting code. --- 1. Observer (Pub …
- Vertical Slice Architecture & the Modular Monolith
Organise code by feature instead of by technical layer, and split a monolith into well-bounded modules that …
- Domain-Driven Design: Tactical Patterns
The building blocks for modelling rules in code. Entities, value objects, aggregates and their four rules, repositories, domain …
- Caching & Redis
… loads from the DB on a miss Cleaner app code Needs a cache library/provider that supports it …