02 — Resources

A working library

Hand-picked articles, videos, libraries, and tools. Filter by pillar to narrow the list.

Build / Library

servant 0.21 in production

A field report from a team running servant-based services for three years. Patterns that scaled, ones that did not.

Pavel R.
Connect / Discussion

Discourse thread: hiring junior Haskellers

Practitioners share what worked when bringing developers without prior Haskell experience onto production teams.

Haskell Discourse
Learn / Article

Lazy evaluation, debugged

Reading :sprint, spotting accidental thunks, and a shortlist of strictness annotations that pay rent.

Andre M.
Connect / Event

ZuriHac 2026 — June 12–14

The annual gathering returns to Rapperswil. Hack on libraries, meet maintainers, eat lake-side lunches.

Community
Build / Library

persistent + esqueleto cookbook

Recipes for the queries you actually write: joins, conditional updates, batched inserts, soft deletes.

Sasha B.
Connect / Channel

#haskell-beginners on Matrix

A patient room for first questions. Answered, on average, within fifteen minutes during European working hours.

Matrix.org
Learn / Article

A field guide to Foldable

The instances, the laws, and the small-ish lookup table you can keep on your desk to read code faster.

Iris L.

Essential Toolkit

04 — Toolkit

What we keep on the bench

The tools most working Haskellers reach for. Versions are kept current with stable releases.

GHC

9.10.1

The Glasgow Haskell Compiler. The canonical implementation; what production code is built with.

Recommended ghcup install ghc 9.10

cabal-install

3.12.1

Project building and dependency resolution. Pairs with Hackage; speaks `.cabal` files.

Recommended cabal build all

Stack

2.15.7

Curated snapshots through Stackage. Reproducible builds without a flake or pin file.

Alternative stack build

HLS

2.9.0

Haskell Language Server. Editor integration, type-on-hover, code actions, formatting hooks.

Recommended ghcup install hls latest

GHCup

0.1.30

Installer and toolchain manager. The friendliest way to keep multiple GHCs side-by-side.

Recommended curl ghcup.haskell.org | sh

fourmolu

0.16.2

Configurable code formatter. The community default for projects that want predictable diffs.

Style fourmolu -i src/

hlint

3.8

Suggestions for cleaner Haskell. Enforceable in CI, configurable per project.

Linter hlint src/

cabal-fmt

0.1.10

A formatter for `.cabal` files. Keeps stanza ordering and comment placement consistent.

Style cabal-fmt -i *.cabal

Community Board

05 — Community

Where Haskellers gather

Highlights from people building things, plus the channels where conversation actually happens.

Community Highlights

  • A pragmatic guide to monad transformers

    Lena O.

    “Most of the time you do not need mtl. Most of the time you do, you only need three layers.”

  • servant 0.21 in production

    Pavel R.

    A field report on running servant-based services for three years — what scaled and what we replaced.

  • Showcase: polyglot-rpc 1.0

    Yusuf D.

    A typed RPC layer that speaks JSON, MessagePack, and Protobuf. Schema lives in Haskell, clients in seven languages.

  • Discussion: junior hiring, what worked

    Mira K.

    A long thread of stories from teams that brought in juniors without prior Haskell experience and made it work.

Contribute

Help keep this workshop tidy

haskeller.net is community-maintained. Suggest a resource, fix a broken link, or submit a write-up — everything happens in a single repo with light review and short feedback loops.

Submit a resource Read the contributor notes contribute :: IO Pull Request