> Amin Khansari's Notes
_
≡
Who am I?
Series
Tags
Search
TAGS
23 TAGS
ddd (6)
typescript (3)
effect-ts (3)
event-sourcing (2)
fsharp (2)
llm (2)
architecture (1)
socio-technical (1)
org-culture (1)
leadership (1)
keyboard (1)
linux (1)
neovim (1)
ergonomics (1)
productivity (1)
dotnet (1)
functional-programming (1)
language-design (1)
tooling (1)
observability (1)
logging (1)
tracing (1)
error-handling (1)
SEARCH POSTS
✕
START TYPING TO SEARCH_
[{"id":"the-slop-coding-era","title":"The Slop Coding Era","description":"The hype around AI-generated code is creating a culture where quantity trumps quality. Strategic Domain-Driven Design shows us when LLM can take the lead and when it should stay in a supporting role.","date":"2026-02-12T00:00:00.000Z","tags":["llm","ddd"]},{"id":"mise-everything-in-its-place","title":"Mise: Everything in Its Place","description":"Tired of juggling tool versions, environment variables, and scattered scripts across your projects? Here's how mise brings them all under one roof.","date":"2026-01-30T00:00:00.000Z","tags":["tooling"]},{"id":"designing-with-types-making-illegal-states-unrepresentable","title":"Designing with Types: Making illegal states unrepresentable","description":"How to use union types and Effect Schema to encode business rules directly into your domain model, making invalid states impossible at compile time.","date":"2025-12-08T00:00:00.000Z","tags":["typescript","ddd","effect-ts"]},{"id":"the-right-way-to-code-with-genai","title":"The Right Way to Code with LLM","description":"LLM is a powerful coding assistant, but using it well means staying in the driver's seat.","date":"2025-12-05T00:00:00.000Z","tags":["llm"]},{"id":"designing-with-types-wrapper-types","title":"Designing with Types: Wrapper Types","description":"How to use TypeScript branded types and Effect to eliminate primitive obsession, enforce validation at compile time, and make illegal states unrepresentable.","date":"2025-11-18T00:00:00.000Z","tags":["typescript","ddd","effect-ts"]},{"id":"designing-with-types-introduction","title":"Designing with Types: Introduction","description":"How to use TypeScript's type system and Effect's functional primitives to model domains more accurately and make bad code impossible to write.","date":"2025-11-13T00:00:00.000Z","tags":["typescript","ddd","effect-ts"]},{"id":"a-survival-guide-to-build-healthy-tech-organizations","title":"A Survival Guide to Build Healthy Tech Organizations","description":"How the right balance of structure, culture, and leadership creates tech organizations where both people and products thrive.","date":"2025-09-10T00:00:00.000Z","tags":["socio-technical","org-culture","leadership"]},{"id":"why-are-logs-big-lies","title":"Why Are Logs Big Lies?","description":"Logs promise clarity but deliver confusion. Explore the common patterns that make application logs unreliable and what you can do about it.","date":"2025-09-08T00:00:00.000Z","tags":["observability","logging","tracing","error-handling"]},{"id":"fsharp-features-i-love","title":"F# Features I Love","description":"What makes F# a joy to write after five years of full-time use.","date":"2025-01-07T00:00:00.000Z","tags":["fsharp","dotnet","functional-programming","language-design"]},{"id":"event-sourcing-a-matter-of-definition","title":"Event Sourcing: A Matter of Definition","description":"Understanding Event Sourcing Basics","date":"2024-11-20T00:00:00.000Z","tags":["event-sourcing","ddd"]},{"id":"from-wrist-pain-to-productivity","title":"From Wrist Pain to Productivity","description":"My journey with ortholinear split keyboard, Linux, tiling WM, and NeoVim.","date":"2024-11-15T00:00:00.000Z","tags":["keyboard","linux","neovim","ergonomics","productivity"]},{"id":"a-migration-journey","title":"A Migration Journey","description":"A migration journey from a critical legacy C# system to a reactive Event Sourcing architecture with F#.","date":"2023-04-12T00:00:00.000Z","tags":["architecture","ddd","event-sourcing","fsharp"]}]