Long-form tutorials, essays, case studies, and development journals connect design principles to running code. Related articles are collected into ordered series without requiring each article to use the same format.

Series preview Building High-Quality Software
A preview of eleven lessons about turning architectural intent into executable constraints, using Mixology as the worked example. 11 lessonsWritten + videoGo architecture Open article
Architecture guide Turning Cross-Domain Calls into Enforced Boundaries
A worked path from direct cross-domain orchestration to transactional retirement, owned reactions, and package rules that preserve both current operations and history. Bounded contextsTransactional eventsExecutable architecture Open article
Planned workshop Growing a Reciprocal Domain Workflow
A planned vertical-slice workshop that adds Procurement to Mixology, connects it reciprocally with Inventory, and finds the boundary between transactional handlers and explicit workflows. Vertical slicesReciprocal eventsProcess managers Open article
Domain modeling guide Preserving Truth Through Operational Degradation
How explicit replacement, review states, readiness reports, and historical snapshots let a modular application degrade honestly without erasing business context. Domain modelingLifecycle stateCross-domain consistency Open article
Architecture guide Building an Application TUI Toolkit
How Mixology combines proven MVVM ideas with Bubble Tea's message loop to create a consistent, testable terminal application without inventing another framework. Bubble TeaMVVM patternsTestable TUI Open article
Completed experiment Growing Mixology with a GUI Surface
A development journal for adding a retained-mode Fyne desktop client to Mixology while preserving bespoke surfaces, executable boundaries, and testable application behavior. Fyne desktopThree surfacesTestable MVVM Open article
Implemented pattern Authorization Is Part of Navigation
How Mixology carries Cedar authorization through workspace discovery, dashboard summaries, row filtering, and action availability without turning the interface into a second policy engine. Cedar authorizationNavigationInformation boundaries Open article
Implemented pattern Bespoke Views over a Shared Application Boundary
What Mixology shares across CLI, Bubble Tea, and Fyne, and why each surface keeps a presentation model shaped for its own runtime instead of adopting a universal view model. Application boundaryThree surfacesPresentation architecture Open article
Implemented pattern Typed Filtering over SQLite
How Mixology gives people and programs one typed filter language, then translates its safe subset into SQLite while retaining exact application semantics. Typed filtersExprSQLite Open article
Completed migration Migrating Mixology from bstore to SQLite
How Mixology replaced its embedded bstore backend with SQLite while preserving transactions, typed queries, domain ownership, filtering semantics, and application errors. SQLitePersistenceApplication boundaries Open article
Architecture guide Using a Third Surface as an Architecture Test
What Mixology's Fyne client revealed when a third, substantially different presentation runtime had to use the same application boundaries as its CLI and TUI. Three surfacesArchitecture testingApplication boundaries Open article
Domain modeling guide Making Illegal States Unrepresentable in Go
What F#'s algebraic types teach about modeling identifiers, validated values, closed variants, and workflow stages in Go, including the places where constructors and linters must complete the guarantee. Algebraic typesGo domain modelingExhaustive handling Open article
Testing guide Testing Native Go Desktop Applications Headlessly
A layered testing strategy for Fyne applications, from deterministic presentation models and virtual widgets through composed lifecycles, fresh processes, race tests, and visual evidence. Fyne desktopHeadless testingGo testing Open article
Architecture guide Building a File-Backed Columnar Event Pipeline
How immutable Parquet batches, snapshot metadata, DuckDB, Arrow, and Protobuf form a columnar event path from storage to results. ParquetDuckDBArrow Open article

Updated: