Smart Builder Creation Pattern for Rich Domains

Smart Builders A creation pattern for rich domains When working in a domain-driven system, your classes (or types, more generally) become a key piece of self-documenting behaviour. Not only do rich domain objects tell you what they are, but hopefully something about why they are there at all. When the domain you’re working in has a strong need to validate these objects it might be desirable to do so as they are created, keeping significance of that idea high....

September 1, 2023

Why You May Want Types

The debate around strong vs weak and static vs dynamic types is a long and messy one. I don’t expect this post to change that, but I want to offer an alternative opinion. I’ll also simplify things a little here, because simply defining strong, weak, static and dynamic can be tricky. For the duration of this post I’ll define a language as “having types” as having staticly checked type declarations and being able to trust them absolutely at runtime....

July 9, 2023

Navigation pseudo-mode in tmux

I use tmux all the time. Together with NeoVim, it forms a significant part of my workflow in the terminal. A common and valid gripe however is the ergonomics of the prefix key, especially when performing repetitive commands. However after a little digging on the internet, I learned about key-tables within tmux and a little about how to use them. My personal pet peeve was the navigation and sizing of panes in tmux....

June 19, 2023