You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
refactor: rewrite about page for clarity and specificity
- Replace generic philosophy with grounded Statsbomb constraint (VAR, World Cup spec gaps)
- Eliminate repetition: "building products for the humans" (3x → 0x), "illegal states" moved to case study only
- Replace Technical Expertise list with Domains (Sports Data, Fintech, Developer Tools)
- Reduce word count: 350 → 145 words (-59%)
- Fix callout button: broken "#" link → "/portfolio"
- Show pattern transferability (sports data → fintech editorial)
- Stronger ending: ongoing exploration vs tech stack listing
What if we asked <i>why</i> before <i>how</i>? Building products for the humans showed: when teams explore constraints first, architecture emerges from real problems people face.
Working with distributed teams editing shared content—regulations collide with cultural nuances, offerings vary by market. The problem space is architectural: how do we maintain coherence when constraints multiply? Building editorial infrastructure that handles global→local complexity through structural separation.
34
+
Spec gaps emerged during live collection—VAR reviews in World Cup matches, new positioning requirements from clients. Updates couldn't wait for engineering sprints when the next match started in hours. This drove an approach: separate what changes (domain rules) from execution (validation), let domain experts express solutions without code, design structure that eliminates coordination overhead.
Functional programming principles emerged through production bugs. Traditional thinking treats velocity and correctness as opposing forces. Building products for the humans revealed they're complementary: when you separate behavior from state and make illegal states unrepresentable, both increase together. Still learning what's possible when architecture constrains failure.
38
+
The pattern transfers. Fintech editorial teams hit the same wall: regulatory content updates outpace engineering deploys. When domain experts control rules through configuration rather than code changes, teams ship faster without compromising correctness.
How do systems adapt when human needs change unpredictably? Building products for the humans showed: when you make illegal states unrepresentable, systems handle surprises structurally. Exploring how LLMs fit—cognitive partners revealing possibilities for serving people better. Primarily TypeScript, Python, Go, and Clojure.
42
+
Exploring how LLMs reveal design possibilities beyond code generation—architectural partnership, not just automation. Based in UK, working with distributed teams on fintech content systems. Still exploring what becomes possible when constraints shape architecture instead of fighting it.
67
43
</Body>
68
44
69
45
<Calloutvariant="primary"size="compact">
@@ -72,14 +48,14 @@ const expertiseItems = [
72
48
<Triangleclass="w-5 h-5 inline mr-1" />
73
49
Curious about the <strong>why</strong> first—it sometimes reveals the <strong>how,</strong> but always clarifies what we're building.
0 commit comments