Using the Cynefin framework as a lens, complicated problems (known unknowns) are often avoided in favor of complex ones because they feel tedious and invite criticism. A practical approach to tackling them is demonstrated through a real Marten (PostgreSQL event store) multitenancy bug: enumerate all permutations in a table, implement centralized decision logic with clear variable names and inverted ifs, and cover every permutation with parameterized unit tests using XUnit's Theory attribute. Key advice: don't refactor and make complicated changes simultaneously, and accept that even a methodical approach may miss edge cases.

16m read timeFrom event-driven.io
Post cover image