I learned about Haskell in 2003 and used it for all my PhD implementation work (https://github.com/tamarin-prover/tamarin-prover and https://github.com/meiersi/scyther-proof). Since then, I've been a professional Haskell developer, first at Better (www.better.com) and now at IBM Research Zurich.
Simon Meier
As of March 2020, School of Haskell has been switched to read-only mode.
The Service Pattern 3 Mar 2015
This tutorial presents the service design-pattern, which one can use to modularize access to shared state like caches and shared sub-systems like logging or databases.