Hyperspecific software development
Build for yourself is the moat
I’m sure many of you who spend time on X (or really anywhere online these days) are frustrated by the never ending attack of posts from AI threadbois making us feel like we’re ruining our lives if we’re not vibecoding 24/7.
It’s honestly annoying. I know guys like him are just doing their thing and it works for them. But my issue is that it somehow gets me every time…like I genuinely do panic a bit and start thinking “shit I’m a software engineer by trade and still don’t have a massive portfolio of projects that I’ve vibe coded what am I doing with my life”.
And yes, I can just mute them. But that’s just removing the weeds over and over again. I’m not actually figuring out where the feelings of uneasiness are coming from. Why do I feel insecurity around the fact that I haven’t vibecoded that much? Why do I feel frustrated that I can’t get myself to care?
After sitting on it a bit, I’ve come to realize that I simply don’t want to vibe code a miscellaneous agent or a SaaS spinoff that makes me a few grand a month.
Don’t get me wrong, the cash flow would be awesome. But I’m just not a person who can get myself to build something for the sake of a capturing an arbitrage opportunity.
And the cool part is that I can just be okay with that! There’s nothing wrong with it.
When I reflect on that epiphany a bit more, I realize it’s not even that surprising. I mean…for the last three years I’ve given up a pretty high salary in tech / venture to try exploring the idea maze and figure out what I’m most passionate about.
But! At the same time, I do genuinely care about the craft of software development itself. I am fully aware of the leverage these new tools offer to pull on unique threads that I wouldn’t have a few years ago. And for that reason, I want to get my hands dirty and make sure I am up to date as long as it’s in a way that actually makes sense for me.
So, what does that look like?
This question, perfectly articulated by Nat Eliason, has helped me create a framework around my re-entrance into active software development:
The question is no longer what do you want to build but rather what are you willing to maintain?
With enough patience and a few thousand dollars of AI credits you can build probably 90% of software you might want right now. But are you willing to fix bugs in the middle of the night? Resolve Stripe disputes?
Sure some of that will be taken over by AI agents but there will always be some degree of maintenance you need to do, simply because your attention and energy are the only counterforce you have against the natural entropy that decays anything manmade.
To me, this act of asking myself if I’d want to maintain an idea long term is what keeps me excited to put in meaningful, intentional effort. It goes from being just another “todo list” item I check off to an actual creative endeavor that brings me joy.
For some, this may sound pointless and they’ll respond “dude just ship all of it and don’t think too much”. But I’d argue that I’ll learn a lot more if I pick a project that brings value to me, specifically something I want to work on for an extended period because it forces me to go deep. I’ll iterate on the versions, run into problems that only pop up once you get past the honeymoon phase, and so on.
The way I see it, everyone can spin up a simple app in a day and repeat that process until their portfolio looks cool. But the hard part that actually requires creative endurance is continuing the project and seeing how far these new AI tools can actually take a project over time.
Anu has an amazing reframing in her post Make something heavy that I believe sums up my realization about why I want vibecoding to mean something different to me than how it’s talked about:
Creation isn’t just about output. It’s a process of becoming. The best work shapes the maker as much as the audience. A founder builds a startup to prove they can. A writer wrestles an idea into clarity. You don’t just create heavy things. You become someone who can.
It’s clear to me that the easiest way to make something heavy is to simply build for yourself. Yes yes I know. It’s one of the most cliche pieces of advice ever. But I think “build for yourself” has started to take on a new meaning these days. It’s no longer just a cute piece of advice to do something that makes you happy. Rather, building for yourself is a defensible business moat.
When you build for a generic market, you are competing with everyone using the same AI prompts. But when you build for your own weird, specific workflows, you are creating something that an agent can't easily replace.
I’m going to start by taking Nat’s Build your own apps course. There are a few reasons why:
I’m a huge fan of Nat. I consider him an unofficial mentor in terms of how I want to pursue my professional life and have been following him closely since 2019. It would be awesome to support his work and join the community he’s been building for the past year.
I think it’s important to drop my ego and try relearning software development “from scratch”. It’ll be fun to just go through many of the things I used to do on a daily basis for work and see how it’s being taught with AI tooling.
I’m curious to learn what makes a good course and good community. Everyone who has taken Nat’s course has loved it and it’s been amazing to see how he’s built it in public so quickly. I want to understand what goes into building a course and how I can adapt some of those learnings into my products and workflow.
I’ll keep you all posted! If you know of any other guides or fun exercises you’ve done to get up to speed with best vibecoding practices, please reply and let me know!



