Thank you for sharing. I just read through several of your blog posts and especially resonate with your “evolutionary design”. The idea of integration tests/test harness first over unit tests makes a lot of sense to me too. As a one person team myself, the “art” of creating quality software products, at speed, is revealing itself and is quite fascinating.
It’s not everyday that devs like me get to learn from someone with as much experience as you have. Thanks again for sharing your knowledge!
As a solo dev, "slow is smooth, smooth is fast" coupled with ruthless focus and prioritization has resulted in the biggest increases in my productive output.
None of the OP’s tips for increasing product velocity apply to my company. The essence of product velocity reveals itself when N=1.
Focus on a few things.
Don’t rush, do them well. Say no to everything else.
“Hyper growth mode” = hiring as fast as possible. Startups gotta borrow and spend their way to success, and fast, ya know. Can’t keep the VC’s waiting on their returns.
Anyone have recommendations for how to get a code mentor? Aside from people at work. I work for myself, by myself now.
I want to write better quality code: less fragile, easier to change. Which is something I haven’t really done for one reason or another. Now, to level up my development skills, I just finished reading Philosophy of Software Design, Clean Architecture, and Design Patterns. I guess Stackoverflow is a good place for me to get most questions answered. But I like the idea of an “in-person” mentor who can help me discover things I don’t know I don’t know. Things about the general “art” of being a good developer that seems to encompass much more than just knowledge about what good code is like.
Would be curious to hear what you’ve discovered the cause to be, and potential solutions you’ve considered.
In my experience with my own difficulties executing, I’ve found that ineffective action comes from inner struggle. Inner struggle comes from an inaccurate view about how thought works. See my comment here: https://news.ycombinator.com/item?id=34692137#34699010.
With less inner turmoil, inspired, effective action becomes effortless to do and maintain.
Tricking yourself (motivation, discipline, etc.) to do something means you don’t really want to it. This results in a feeling of struggle, and also repression. And thus, ineffective outcomes as you sabotage yourself or fail to “stick with” something.
We all naturally know what it is we really want to do. So stop. Relax. Listen to what that inner voice whisper, right now. Not to what others say you “should” do.
Ask yourself: “what would I love to create?”
Listening to oneself may not come naturally. We are trained by society, our parents, and schools to listen to “authorities”. So thoughts about what we “should” do run rampant in our minds.
But who’s the greatest authority of your life? You.
Once, I truly internalized the above, everything changed. It can happen to you too.
Same. For me, the creational mindset led to a sense of freedom and excitement that the problem-solving mindset can never get close to.
Problem-solving mindset: what problem do I need to solve? “Problems” will always arise life (due to other people, random events, our brain always wanting novelty, etc.), so this mindset is a reactive one that leads to anxiety and lack of direction.
Creational mindset: what would I love to create? This mindset can seem harder to get at because of all the conditioning we’ve gotten from society and childhood. But all it takes is a simple perspective shift. It leads to more proactivity, and trust that you’ll be able to do whatever you need to do. All the secondary, tertiary, etc. questions about how get answered relatively easily when you’re clear about what you want to create.