Skip to content
HomeVideos
AllLongsCategoriesPlaylists
BooksBlogsPodcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K

    Domain Modeling Made Functional - Scott Wlaschin

    NDC Conferences

    6 HN recommenders · recommended in 9 months, 2018–2024

    YouTube

    51:40 · 71K views · Jul 5, 2017

    Scott Wlaschin's NDC talk on using statically typed functional programming, F# in particular, to model a business domain. Types are used to represent the domain precisely and to encode business rules so that illegal states cannot be built, with the compiler acting as an instant unit test.

    HN people recommend it as an eye-opening talk whose domain-modeling ideas carry over to other languages and make a strong compiler feel like a coding partner.

    Software Engineering & LanguagesFunctional programmingSoftware architecture & designProgramming language design
    1. 39:40
      "Type-Driven Program Synthesis" by Nadia PolikarpovaStrange Loop Conference15K views • 8 years ago
    2. 46:09
      Why Isn't Functional Programming the Norm? – Richard FeldmanMetosin1.6M views • 7 years ago
    3. 1:04:45
      Stanford Seminar - Concatenative Programming: From Ivory to MetalStanford Online14K views • 8 years ago
    4. 1:05:51
      The Functional Programmer's Toolkit - Scott WlaschinNDC Conferences79K views • 7 years ago
    5. 1:07:10
      Brian Beckman: Don't fear the Monadjasonofthel33t415K views • 13 years ago
    6. 1:02:26
      Solving Problems the Clojure Way - Rafal DittwaldClojure/north87K views • 7 years ago
    7. 1:01:45
      Four Languages from Forty Years Ago - Scott WlaschinNDC Conferences33K views • 8 years ago
    8. 1:00:10
      Functional architecture - The pits of success - Mark SeemannNDC Conferences152K views • 10 years ago
    9. 1:14:52
      Effective Programs - 10 Years of Clojure - Rich HickeyClojureTV176K views • 9 years ago
    10. 45:03
      Keynote: The Last Hope for Scala's Infinity War - John A. De GoesScalapeño36K views • 8 years ago
    11. 1:12:14
      Beyond functional programming: a taste of Verse. Simon Peyton Jones & Tim Sweeney | Lambda Days 2023Code Sync30K views • 3 years ago
    12. 36:31
      Hey Underscore, You're Doing It Wrong!InfoQ141K views • 13 years ago
    13. 1:09:24
      Effective MLJane Street30K views • 10 years ago
    14. 1:12:56
      Lecture 1A: Overview and Introduction to LispMIT OpenCourseWare421K views • 7 years ago
    15. 53:22
      Ruby Conf 12 - Y Not- Adventures in Functional Programming by Jim WeirichConfreaks66K views • 13 years ago
    16. 34:55
      "Outperforming Imperative with Pure Functional Languages" by Richard FeldmanStrange Loop Conference98K views • 5 years ago
    17. 1:04:16
      Simon Peyton-Jones: Escape from the ivory tower: the Haskell journeyChurchill College, University of Cambridge170K views • 9 years ago
    18. 1:12:56
      Lecture 1A | MIT 6.001 Structure and Interpretation, 1986MIT OpenCourseWare995K views • 17 years ago
    19. 53:56
      Expert to Expert: Rich Hickey and Brian Beckman - Inside Clojurejasonofthel33t119K views • 13 years ago
    20. 58:22
      Lecture 1B | MIT 6.001 Structure and Interpretation, 1986MIT OpenCourseWare116K views • 17 years ago

    9 comments from Hacker News

    1. @BoiledCabbageNov 2019· in “Why functional programming matters (1990) [pdf]”

      If anyone is looking for a really eye-opening video take a look at that this. "Domain Modeling Made Functional" It's applying Functional Programming to plain old Enterprise line of business apps in F#. The author argues why it's so much simpler, and simply walks through an example with cases. It's hard not to be persuaded. It leaves behind all of the lofty crazy maths you see in a lot of presentations of FP, and just shows how it's a simpler technique to solve real world problems. Domain Modeling Made Functional - this video (Watch on 1.25x speed) It's really impressive, and also surprising why more people promoting FP don't show it's tangible benefits and simplicity vs. the theoretical/abstract way it's usually presented. It's also a great introduction to 'Domain Driven Design' and data modeling regardless of the language you use.

      Strongly recommendsView on HN
    2. @markdoubleyouSep 2018· in “Try OCaml”

      The "F# for fun and profit" site by Scott Wlaschin is a great jumping-off point: [LINK] I discovered it when I was reading a lot about domain driven design, and I stumbled upon a talk by the author that kind of blew my mind: "Domain Modeling Made Functional" this video

      Strongly recommendsView on HN
    3. @carapaceJan 2021· in “Haskell is a Bad Programming Language (2020)”

      In re: Haskell's goodness or badness, compare and contrast with, say, PHP (crap language with wild success.) Or Prolog (a stately Elven language with deep but obscure success.) Haskell is what it is. In re: types and data, FP is good for that. See e.g. "Domain Modeling Made Functional" by Scott Wlaschin ( this video ) it's about F# but the concepts apply cross-language. In re: FP PLs "done right" I submit Elm lang. I've been using Elm recently and it gets the job done. It's weird though: on the one hand, as a experienced professional it feels like a toy. The error messages feel almost insulting, like I'm being patronized. On the other hand, once I got over that (silly) reaction, they're awesome. Changing code is a breeze, because Elm leverages the crap out of the type system, and the structure of the code and runtime prevent whole vast categories of errors. Combine that with the sort of Domain-Driven development that Wlaschin is talking about and "baby, you got a stew going!"

      RecommendsView on HN
    4. @rashkovAug 2020· in “BuckleScript Is Rebranding”

      Yep! This talk captures it pretty darn well: this video Besides that, the compiler becomes a partner in coding. - Refactoring things is no longer something I avoid, because the compiler will point out any unexpected places that interact with a given piece of code. - I can code for an hour without loading the app, and be reasonably certain that the code I'm writing will be more or less be correct. Overall, I feel like the compiler does the double-checking and second-guessing that I was always doing in the back of my head, which gives some peace of mind and frees me up to focus on the actual task.

      RecommendsView on HN
    5. @carapaceDec 2020· in “Write code. Not too much. Mostly functions.”

      I like this talk: "Domain Modeling Made Functional" by Scott Wlaschin this video He's working in F# but the concepts map. There's a fascinating book "Data Model Patterns: A Metadata Map" by David C. Hay that's pretty much a Pattern Language or catalog for data models. You can just implement the subset of Hay's patterns that make sense for your application.

      RecommendsView on HN