Talks to Watch

Domain Modeling Made Functional - Scott Wlaschin - KanDDDinsky 2019

74K views · Dec 6, 2019 · 50:49 · 3 HN recommenders · 4 mentions · discussed 2020–2026

Scott Wlaschin shows how statically typed functional languages, using F# examples, can model a business domain so that invalid states cannot be represented. The type system acts almost like an instant unit test at compile time.

Why Hacker News points people here: HN treats it as the canonical, approachable example of domain-driven design with types and 'make invalid states unrepresentable'.

“this talk opened my eyes to the power of f# philosophy and type system”HN comment, 2020

What Hacker News said 4

Strongly recommendsdevmunchiesAug 2020

“this talk opened my eyes to the power of f# philosophy and type system”

Opened commenter's eyes to F# philosophy and type system.

Full comment

I wouldn't say its unloved or on a side track, it's baked into .net as a first class citizen and has dedicated engineers at Microsoft working on it. When I started I was pleasantly surprised how easy it was to download .net core on a mac and not do anything else to use F#. Its less popular than C# so its there's not as much documentation from 3rd party sources, youtube videos, etc, but you can use any C# modules in F# so you'll get used to reading C# docs. I would highly recommend this overview of the .Net ecosystem: link I really like how it showed a preview of "modern C#" at 12:20 which is being influenced by F#. After that, this talk opened my eyes to the power of f# philosophy and type system: this video

in “Draft of OCaml Scientific Computing book” · view on HN
RecommendsHuggernautFeb 2021

“For anyone looking for a smaller introduction to this book”

Short introduction to the book of the same name.

Full comment

For anyone looking for a smaller introduction to this book, the author Scott Wlaschin has a talk with the same name: this video It doesn't cover a lot of good topics in the book, but it might whet your appetite.

in “Learn Functional Programming Visually” · view on HN
RecommendsrapnieSep 2025

“offers a very appealing example for making making invalid states unrepresentable”

Appealing example of making invalid states unrepresentable.

Full comment

I can recommend "Domain Modeling Made Functional" by Scott Wlaschin presented at KanDDDinsky 2019, that offers a very appealing example for making making invalid states unrepresentable. The example code is in F# but that is a perfect language to demonstrate the general idea. Best-practice I guess boils down to finding the right balance throughout the application design. this video

in “'Make invalid states unrepresentable' considered harmful” · view on HN
RecommendsrapnieFeb 2026

“See "domain modeling made functional" [0] as a nice example”

Nice example of making invalid states unrepresentable.

Full comment

You can also search for "make invalid states impossible/unrepresentable" [0] to find more info on related practices. See "domain modeling made functional" [0] as a nice example [0] link [1] this video

in “Parse, Don't Validate and Type-Driven Design in Rust” · view on HN