If you want to start or join an early-stage startup, the most important investment you could make today is inner work to ensure you have the stamina & resilience to do extremely hard things.
Here is all self work I did between my 1st and 2nd startup that paid off big time:
1. Understand what matters to you
Startups are hard; if you start one you should aim to work on it for at least 5 years. To do something difficult for a long time you should care enough about it you'd do it for free.
Startup highs can be ecstatic and lows can be crushing. As an entrepreneur, you have to try to be solid as a rock on both the ascent and descent.
I wrote about how you can use framing to control your mood: amasad.me/framing
4. Be grateful
In the midst of the emotional turbulence of a startup, remind yourself that all is well. If you have shelter, food, & safety you're doing better than most humans who ever lived.
Enjoy the ride and try to make the world slightly better: amasad.me/grateful
5. Have a daily practice
It doesn't have to be meditation, or something overbearing. I like negative visualization which lets you be okay with all the things that could go wrong. If you know that the downside is not that bad, you can focus on the upside.
A good diet can make you up to 2x more productive. If you're eating right there should be no after-lunch slump, and you should be able to focus for extended periods of time without food.
This YouTube channel is great:
8. Find your wellness routine
When you're stressed out, mind is racing, and can't focus, what do you do to recenter yourself?
For me, that's heavy lifting followed by a sauna & cold plunge. It resets me like nothing else.
Don't have a thread/blog on this but maybe I should?
9. Challenge yourself
I had a fear of public speaking so I signed up for improv, did tech talks without preparing, and did a storytelling show.
The best way to get rid of fear is by exposure. The fear will go away and by doing hard things you're becoming more resilient.
10. Find mentors & a peer group
Surround yourself with awesome people who can energize, challenge, and teach you.
Twitter is great for this. I've made many founder friends on here -- just be yourself and share your learnings.
Books can also be a great stand-in for mentors.
That's it for now. I'll do threads in the future more focused on aspects that I haven't explored in-depth in the past. Please feel free to share your ideas!
• • •
Missing some Tweet in this thread? You can try to
force a refresh
I landed in the United States 10 years ago with nothing but credit card debt.
After one startup exit, one big tech job, and one unicorn, I genuinely believe that it wouldn't have been possible anywhere else in the world.
Here are 10 things I love about this country:
1. Work Ethic
First thing I noticed was that everyone regardless of occupation took pride in doing a bang-up job, even when no one looked.
I asked people: "why do you pour everything into a job even when it is seemingly thankless?" And it was like asking fish "what is water?"
2. Lack of corruption
In the 10 years in the US, I've never been asked for a bribe, and that's surprising.
When you know that you predictably get to keep a sizeable portion of the value you create and that no one will arbitrarily stop you, it makes it easier to be ambitious.
I've dealt with poor sleep for many years. As someone who's excited & energetic, I had a hard time going to sleep. And as a startup founder, I've had a hard time staying asleep.
Today I sleep ~8 hours, and almost every aspect of life is better. Here is an ordered list of tips:
1. Schedule
Your mum was right: Go to bed and wake up at a consistent time. Weekends, weekdays, holidays, etc -- always stick to a routine!
If you sleep late after a night out, wake up early. If you're tired, resist going to bed early.
Eventually, sleep will become automatic.
2. Sleep hygiene
It's all about programming yourself for better sleep. Keep your room a sleep sanctuary. Resist working in there. Or even reading. The more things you associate your bedroom with, the weaker its automatic connection to sleep is.
Fascinating that infinitely complex systems can be constructed from ONE key component. Examples:
- NAND gate and computers
- Neuron and brains/minds
What other systems are like that?
When I was designing a debugger I figured that you could construct it from one operation: STEP_IN which returns stack and other info. Then everything else could be on top of that. E.g STEP_OVER is simply a series of STEP_IN until the stack is length is equal to the starting point
It’s fun to design systems by boiling it down to one thing. But it might not be practical (eg slow). Nonetheless it gives you a better grasp on the problem.
Today this is most apparent in autocorrect, but the idea -- in a more advanced form -- goes back to the early days of computing. Interlisp shipped with a feature called Do What I Mean, which corrected spelling but also basic programming logic errors.
A more advanced and fascinating idea is for the computer to detect intention and act on it. Humans do it all the time; we see the intention in other people and act on it.
Software too can and should do basic intention-detection and I'm surprised I don't see it much in the wild.
We grew up in a very competitive field. Online environments have more dead startups than alive. We zoomed past startups 10x our size and capitalization, and we thrive despite incumbents many orders of magnitude larger than us.
We do it while rarely thinking about competition.
First, an axiom: humans are memetic creatures.
Remember how every startup was a chatbot startup a few years ago? Or a more recent example: Metaverse. Facebook renamed to Meta and two days later Microsoft announced their Metaverse strategy. I'm sure IBM is working on it too.
A new kind of program analysis is emerging: AI code analysis. Here is the current state of analysis and where I think it’s headed:
Static analysis, arguably a Good Old Fashion type of AI, it relies on explicit “reasoning” about the program using tree search and other algorithmic methods.
It’s painfully limited because it’s an ultimately undecidable problem. Eg, try proving that a program never halts.
To make code more analyzable there has been a trend to push the programmer to do more of the work. People are adding typing to all the dynamic languages: JavaScript, Python, Ruby.