Typeclasses in practical Scala: behaviour without inheritance
How a typeclass separates behaviour from data, how Scala 2 implicits and Scala 3 given instances supply evidence, and when the pattern is worth using.
Read articleInsights
Technical articles on languages, databases, serverless platforms and the awkward realities of keeping systems moving.
Showing 55–63 of 71 articles
How a typeclass separates behaviour from data, how Scala 2 implicits and Scala 3 given instances supply evidence, and when the pattern is worth using.
Read articleModel expected failures with sealed types and Either, keep unexpected failures distinct, and translate both deliberately at HTTP and asynchronous boundaries.
Read articleHow Option, Either, collections, Future and IO represent different computational contexts, and how map, flatMap and for-comprehensions compose them.
Read articleA type-led guide to transforming and sequencing Option, Either, collections, Future and IO, including for-comprehension translation and common nesting mistakes.
Read articleWhy returning JsValue from a service and hiding data shapes behind aliases can weaken a Scala application, and how to keep Play HTTP, domain and persistence contracts explicit.
Read articleA practical method for reviewing behaviour, types, failure paths, tests, compatibility and production impact without turning every pull request into a style debate.
Read articleA technical guide to Scala’s type system, execution models, common use cases and the libraries that turn the language into a production stack.
Read articleA technical decision guide to compatibility, macros, dependencies, compiler migration modes, cross-building and a staged route from Scala 2.13 to Scala 3.
Read articleThe Play version gets the blame, but the real trouble is often hiding elsewhere.
Read articleStart a conversation
A feature that needs shipping, an ageing service that needs attention, or a deployment that has become harder than the code. Talk to us about your problems.