Writing vs. Thinking

Masoud Bahrami ยท article ยท 2026-09-21 Reader ๐Ÿ–ฅ๏ธ

Software Design FundamentalsWriting as Thinking
Writing is not merely a record of a thought fully formed beforehand but one of the mechanisms by which thinking itself happens โ€” a claim the author grounds in how articulation forces precision, how revision continues (rather than merely polishes) an argument, and how the same dynamic explains why naming and language do real design work in software, not just communication work.

theoretical, illustrated practically ยท reflective essay (personal blog), built from a real LinkedIn exchange and worked examples โ€” Structured as a chain of short, titled sections rather than a formal argument; moves from a personal anecdote to a general claim about cognition, then to a worked practical exercise, then to a domain-specific application (software naming/DDD), and back to the opening exchange. No citations beyond one passing reference to Vygotsky; evidence is introspective and anecdotal throughout, not empirical.

Structure

PartRole
Opening exchange with Mathias Verraesnarrative hook / thesis trigger
"The thought we think we already have" (personal example)supporting narrative
"Writing is not a printer for thoughts" (+ Vygotsky citation)core supporting reasoning
"Try explaining something you think you understand" (fill-in-the-blank exercise)practical demonstration / reader-replicable evidence
"Speaking is not writing"contrast / boundary-drawing
"The page remembers for you" (A/B/C contradiction example)mechanism claim
"Revision is not just cleaning"reframing / extension of the thesis to editing
"And sometimes you discover that you were wrong" (component-size example)narrative payoff
"This is also why language matters in software" (ProcessRequest example)domain transfer / central parallel
"Code is another form of writing"generalizing move
"Have all the ideas already been said?" (return to Mathias)resolution of the opening tension
"Writing as a conversation with your future self"closing reframing of revision
"The last edit" (closing)conclusion

Key terms

Propositions

Arguments

Writing is a way of thinking, not merely a report of thought that happened beforehand. strength: medium
Explicit premises:
Implicit premises:
Inferences:
In software design, naming and language don't just communicate a design โ€” they help discover it, extending the general writing-as-thinking claim into the domain of code. strength: medium
Explicit premises:
Implicit premises:
Inferences:

Narratives

Questions addressed

Gaps

Closes gaps elsewhere

Related documents