Stoicism: A software developers guide.

Many of life's issues are already solved. That means we can learn incredible lessons from the past ... here are my top 5 ideas from the stoic philosophy and how you can leverage them too.

Most problems have happened before. If we search back in history far enough, we’ll find someone overcoming a problem we now have. Stoic philosophy (Stoicism), when studied can give us many of the answers to problems we already face. I am only a beginner when it comes to Stoicism. But I’ve already had benefits leveraging some of the learnings from their teachings.
Rather than spending your time reading the works and figuring out how they apply to you. I’ve distilled 5 of the top lessons, from the perspective of a software developer.

1. On Mastery and patience

Judging from what you tell me and from what I hear, I feel that you show great promise. You do not tear from place to place and unsettle yourself with one move after another. Restlessness of that sort is symptomatic of a sick mind. Nothing, to my way of thinking, is a better proof of a well ordered mind than a man’s ability to stop just where he is and pass some time in his own company– Seneca, Letters from a Stoic.
Seneca opens his book with this quote. It’s likely the most important one. Especially for software developers. Of which I am definitely not exempt. It’s definitely one I struggle with a lot… sticking to one task and seeing it through. Choosing one thing at a time, and not trying to multitask or chase the next new thing.
As software developers, we’re always thinking of the next thing. The next framework, the next language feature. All without actually spending time mastering our current tools. Overwhelmed with everything we could learn we starve ourselves of a depth of knowledge. When we have a mastery or a speciality this helps make us more valuable. What’s in low supply has more value.
In Average Is Over economist Tyler Cowen highlights three things valuable in the future: 1. Quality land and natural resources 2. Intellectual property, or good ideas about what should be produced 3. Quality labour with unique skills. The only way to cultivate unique skills is to sit “and pass some time” in our own company. Hardening our mastery.
This is advice that repeated by Cal Newport. In his book So Good They Can’t Ignore You Newport argues that passion is not what makes people love their work. He goes on to say that it is when we commit to getting good that we gain leverage. We achieve this by investing what Newport calls “Career Capital”.

2. On turning adversity to advantage

Our actions may be impeded … but there will be no impeding our intentions or dispositions. Because we can accommodate and adapt. The mind adapts and converts to it’s own purposes the obstacle to our acting. The impediment to action advances action. What stands in the way, becomes the way. – Marcus Aurelius, Meditations.
In every situation, there is always an upside. It’s not even about “being positive”. But about focusing our attention on what is really important. No matter what happens we can always reverse what happens to us to make the most of the situation.
In Discourses Epictetus states ‘What’s that you say, friend? It’s only my leg you will chain, not even God can conquer my will‘. Here, he is showing that we have the decision to make the most out of even the crappiest situations.
For software developers, this means making the most out of a boring job. Or doing a task we don’t want to do and seeing the upside in it. Realising there’s almost always an opportunity to learn and progress. No matter the hand that we’re dealt.

3. On watching others

Do not waste the remaining part of your life in thoughts of other people. When you are not thinking with reference to some aspect of the common good. Why deprive yourself of the time for some other task? I mean, thinking about what so-and-so is doing, and why, what he is saying or contemplating or plotting and all that line of thought, makes you stray from the close watch on your own directing mind– Marcus Aurelius, Meditations
Around 6 months ago I took all the social media apps off my phone. I can’t say I’m someone who usually spends much time on them. But actually, it’s not the time that’s the biggest evil, either. The biggest evil is spending time with anxiety on what others are doing. It paralyses us.
David Heinemeier-Hansson and Jason Fried summarise this pretty well in their book ReWork:
Focus on your competitors too much and you wind up diluting your own vision. Your chances of coming up with something fresh go way down when you keep feeding your brain other peoples ideas. You become reactionary instead of visionary.
For us all, our careers and lives are completely different. Even if we wanted to copy someone else’s moves it wouldn’t make sense. They’re them and you’re you. Let’s focus on doing what you’re good at, not being paralysed at what everyone else is doing. Switch off the social to switch on what you need to.

4. On stories we tell ourselves

Do not elaborate to yourself beyond what your initial impressions report. You have been told that so-and-so is misaligning you. That is the report. You have not been told that you are harmed. I see that my little boy is ill. That is what I see: I do not see that he is in danger. So always stay like this within your first impressions and do not add conclusions from your own thoughts – and then that is all. – Marcus Aurelius, Meditations.
In every situation, there are 2 things: The situation itself… and the story we tell ourselves about it. As humans, we like to think that everything is connected. We connect dots and see patterns that aren’t actually there.
When we master this, we become powerful. Speaking to someone at work, asking for a raise or quitting our jobs. No matter the task at hand it’s always so much easier if we don’t tell ourselves stories. Stories about how important we are, what’s at stake or what this means. It doesn’t mean anything. Stop telling yourself that. It is what it exactly what it is, nothing more.

5. On having an opinion.

In the case of a grown man who has made incontestable progress it is disgraceful to go hunting after gems of wisdom, and prop himself up with a minute number of the best-known sayings, and be dependent on his memory as well; it is time he was standing on his own feet. He should be delivering himself of such sayings, not memorising them. It is disgraceful that a man who is old or in sight of old age should have a wisdom deriving solely from his notebook. ‘Zeno said this’. And what have you said? ‘Cleanthes said that.’ What have you said? How much longer are you going to serve under others orders? Assume authority yourself and utter something that may be handed down to posterity. Produce something from your own resources. – Seneca, Letters from a Stoic.
One of my favourite chapters. As software developers, we work in a community. It makes sense to share. When we make a decision to start helping out in the community, writing or contributing we get seen more. We get picked in for jobs and we get our name out there.
“Marketing ourselves” doesn’t have to be sleazy. It’s as easy as giving back. Being part of the conversation. It’s the simple act of commenting on a pull request, raising a bug on a repo or writing an article on Medium. There’s nothing stopping us, except that nagging feeling that we’re not good enough. That we’re not yet an expert so why should we write anything? When we get over that feeling and start contributing good things happen.

More from the Stoics

If you liked this and think it’s something you want to dive into. Here are some books that I’d recommend. I’ve ordered them by “ease of reading”. If you’re not feeling too academic right now, I’d suggest starting at the top. But if you’re used to diving into some ancient works, then head straight for Letters from a Stoic. That’s my personal favourite.