This sums up every self-help and business book, blog post, podcast, and talk I’ve ever seen/read/whatever:
- pick a direction
- listen to users/customers/people-you-care-about
- adjust course
- do the work
- repeat until success
Anything more is just tactics or advice on the level of "These are the lottery numbers that worked for me".
Let me explain it to you like you're
five a computer. Time for stochastic search algorithms! \o/ My favorite and nerdiest way to think about life.
Let's say you're you, and you want to have the best life you can. You don't know what you're looking for, and you don't know how to get there. You think you'll recognize "best life" once you're there. Psychology says that you won't.
Your life is an optimization problem. You pick a fitness function and search for the combination of inputs that returns the highest result – the global maximum.
Your fitness function can be anything from "How much \$\$ I'm making" to "How happy do I feel on average". Often, it's a combination of things. People often have a function called "career", another called "family", and still another called "health".
In the beginning, you know nothing about the world, the problem you're solving, or the destination. Any direction will do as long as you're not standing still.
Use your fitness function to see if your direction is correct.
A good proxy is talking to the people you care about. Users and customers will tell you if you're making things better or worse and what they want or need. Your friends, your family, and your gut will tell you if you're becoming a better person.
Trust your gut.
If people keep asking you to do X, and you're doing Y, try X. Your fitness function might improve quicker.
Probes in random directions are a good way to find promising new directions.
If you don't do the work, you don't get the results. This is the most important step.
You start with huge steps, then make your steps smaller and smaller as you approach the optimum. Otherwise, you might overshoot the peak.
This is an iterative algorithm. The more iterations you perform, the closer to optimum you'll get.
When you find an optimum, and there are many, you can shake things up and try finding a better optimum.
How fast you get to optimum, and how high it is, depends on factors largely outside your control: luck in picking your initial direction, fortune of circumstance and ability, "life events", and macroeconomic trends.
I write articles with real insight into the career and skills of a modern software engineer. "Raw and honest from the heart!" as one reader described them. Fueled by lessons learned over 20 years of building production code for side-projects, small businesses, and hyper growth startups. Both successful and not.
Subscribe below 👇
Join Swizec's Newsletter and get insightful emails 💌 on mindsets, tactics, and technical skills for your career. Real lessons from building production software. No bullshit.
"Man, love your simple writing! Yours is the only newsletter I open and only blog that I give a fuck to read & scroll till the end. And wow always take away lessons with me. Inspiring! And very relatable. 👌"
Have a burning question that you think I can answer? Hit me up on twitter and I'll do my best.
Who am I and who do I help? I'm Swizec Teller and I turn coders into engineers with "Raw and honest from the heart!" writing. No bullshit. Real insights into the career and skills of a modern software engineer.
Want to become a true senior engineer? Take ownership, have autonomy, and be a force multiplier on your team. The Senior Engineer Mindset ebook can help 👉 swizec.com/senior-mindset. These are the shifts in mindset that unlocked my career.
Curious about Serverless and the modern backend? Check out Serverless Handbook, for frontend engineers 👉 ServerlessHandbook.dev
Want to Stop copy pasting D3 examples and create data visualizations of your own? Learn how to build scalable dataviz React components your whole team can understand with React for Data Visualization
Did someone amazing share this letter with you? Wonderful! You can sign up for my weekly letters for software engineers on their path to greatness, here: swizec.com/blog
By the way, just in case no one has told you it yet today: I love and appreciate you for who you are ❤️