Building Scalable Web Applications with Haskell
summary
A production Haskell web app of 100,000+ LOC uses Yesod, Template Haskell and Persistent to enforce rich domain types, type-safe routing to prevent broken links, and per-request caching so multiple widgets don’t trigger duplicate DB reads; integrated Hspec tests run against Postgres and slow the suite so SQLite in-memory is recommended for speed, Hedgehog property tests verify round‑trip serialization, subsites replace microservices, and centralized isAuthorized logic controls access.
AI-written summary · about
chapters (11)
- 0:00Introduction and team overview
- 8:22Debunking Haskell myths
- 19:31Type safety and parametricity
- 24:46Type-safe routing in Yesod
- 33:39Testing strategies in Haskell
- 40:23Widgets and frontend architecture
- 44:35Database interaction with Persistent
- 47:05Authorization and access control
- 48:08Form handling in Yesod
- 50:16Scaling with subsites instead of microservices
- 51:20Q&A and closing remarks
related talks
17mBuilding web apps with Haskell and IHP (Lightning Talk)
32mHeadfirst into Haskell
01h 03mBuilding a Blogging System with Haskell and Yesod - Part 5 of 6
55mBuilding a Blogging System with Haskell and Yesod - Part 2 of 6
57mReal-world Haskell: Good, Bad, & Ugly
31mWhy Haskell is a Terrible Choice for Startups (And Why We Picked It Anyway)
55mModern Software Development with Haskell
34mPurely Functional Web Apps
