I came to Stoicism not through philosophy courses but through engineering problems.
Production incidents. Ambiguous requirements. Decisions made under pressure with incomplete information.
The Stoics — Marcus Aurelius, Epictetus, Seneca — kept returning me to the same discipline:
distinguish what is in your control from what is not, and act well within that boundary.
That turns out to be surprisingly useful advice for writing software.
"You have power over your mind, not outside events.
Realize this, and you will find strength."
Marcus Aurelius — Meditations
The dichotomy of control is the foundation. In engineering, the events outside your
control are everywhere — a dependency breaks, a deadline moves, a requirement changes
overnight. What remains constant is the quality of your response. This is the frame
I return to whenever a system misbehaves in production.
"Waste no more time arguing about what a good man should be. Be one."
Marcus Aurelius — Meditations, Book X
There is a version of this in software: waste no more time debating the ideal architecture.
Ship something well-considered and iterate. The bias toward action — without losing
the discipline of thought — is something I try to carry into every project.
"It is not that I'm so smart. But I stay with the questions much longer."
Often attributed — on the value of sustained attention
Not strictly Stoic, but it fits. The hardest problems in engineering rarely yield
to cleverness alone. They yield to patience — to staying with the question past
the first uncomfortable moment of not-knowing. Epictetus would call this the
discipline of assent: don't rush to conclusion.
"First say to yourself what you would be; and then do what you have to do."
Epictetus — Discourses
Intention before execution. In practice: before writing a line of code, be clear on
what you are actually solving. Many bugs are not bugs in the code — they are bugs
in the specification of intent. Epictetus was writing about character; the principle
applies to systems design just as well.
"Omnia, Lucili, aliena sunt, tempus tantum nostrum est."
Everything, Lucilius, is alien to us; time alone is ours.
Seneca — Letters to Lucilius, I
Seneca on time as the only non-renewable resource. The opening line of his first
letter. I think about this when estimating project scope — not as an argument for
urgency, but as an argument for honesty about what is worth doing at all.
Every technical decision has an opportunity cost measured in time.
"The impediment to action advances action. What stands in the way becomes the way."
Marcus Aurelius — Meditations, Book V
Ryan Holiday popularized this as "the obstacle is the way," but the original is
sharper. In engineering, the constraint is often the most clarifying thing. A tight
memory budget forces better data structures. A hard deadline forces scope discipline.
The obstacle is information — use it.