Tell me if you've been in this situation before. You are sitting in a meeting at work or you're sitting in class, and you get called on to talk about that report or answer a question from the homework, and you didn't read the report, you didn't do the homework, and so now you are woefully unprepared. Sure, you have a vague idea of what it was about, but if pressed, like you are being pressed now, you can't really answer anything meaningful. You can't go deeper than just knowing the absolute basics.
This is a terrifying situation to be in, and it's one that makes me think about writing software with AI. Because if something comes up, if there's some problem, if you are called on to fix the software you didn't write, you're going to have no idea what's going on. Which begs the question: Should solopreneurs be using AI to write software for their personal needs? That's what I want to talk about today.
Hey, everybody. Welcome to another episode of the Streamlined Solopreneur. My name's Joe Casabona, and I help solopreneurs replace manual tasks with reliable systems so they can take time off worry-free. Part of putting those reliable systems in place is not filling the time you freed up with things you should not be doing.
And I worry from experience that too many people are trying to vibe code or use AI to code something and then falling down a rabbit hole where they are wasting a ton of time. So I want to give you a quick decision framework for if you should be trying to write your own software with AI.
But first, let's get into the reason why we might want to do this. I mean, now that we can basically prompt anything into existence, should we use AI to build the perfect software for our needs? Aren't we getting sick of all the subscriptions and the feature bloat, and justifying the price of the subscription by adding in AI features and making the software bloated, even though we didn't ask for those AI features?
I'm looking at you, Zoom. I'm looking at you, Descript and Riverside. I've canceled all of those plans within the last couple of years because they have justified raising the price, because they've added AI features, AI features I didn't want. I just want my software to do one thing extremely well.
I am lamenting the death of single-purpose software. And with AI, heck, I can build my own single-purpose software. I have made my own single-purpose software. In fact, I have an iOS app in TestFlight right now. You can join the beta over at streamlined.fm/app. I'm going to talk about it in a little bit, but I have this, so wouldn't I be a hypocrite for telling people don't do it, which is spoiler alert, what I'm about to do.
And the truth is, I have a master's in software engineering. I have a healthy skepticism of just taking code I don't understand and putting it somewhere where it could access important things. Or do I?
One of the things that I was thinking about when I started to put together this episode is isn't AI creating apps on platforms very similar to what WordPress or Joomla did in the mid aughts, the mid 2000s? They enabled people who had little to no coding background to make websites. Did they do it? Well? Not necessarily. Did the people who made the plugins do a bad job? Many times, yes. But it happened because it enables. It gives people a power that they didn't have before. And that's amazing. And so are we just seeing the next iteration of that, where now instead of websites, we can make iOS apps or Mac apps or Windows apps by just telling a machine to do it?
So I think writing your own software is really powerful. But as I alluded to, I think the answer to the big question, should solopreneurs build personal software? Is mostly no. And here's why. Because even if you are using the AI to develop the software, you still need an understanding of three areas. Clarity on features, execution of the actual software itself, and maintenance. I wrote a blog post about this recently.
There's still a lot of things you need in order to create good software. You need to have a good idea. You need to be clear about the goals of the software and the features of the software. You still need to understand what a good user experience is.
AI in my experience, isn't great at that. It'll do what you told it to do. But unless it has specifically been directed to consider the user experience, whatever an AI thinks that could be, it's up to you to design and architect that. You still need to be able to articulate what you want clearly. You can't just say, " Give me an app that tracks my books”. You need to be able to break up the features into clear, communicable prompts. You still need to be able to test it. You still need to be able to debug it. And if you are going to make this for other people, then you need to consider how people will actually use your app and in what contexts.
So you still need to understand everything outside of the actual writing of code. Because the real issue here is vibe coding. Using AI to write code is really great until something breaks. Then it's like saying you wrote your speech in Ancient Greek, which is cool, until you have to give the speech and you realize you don't actually understand Ancient Greek.
So those are the things that you should consider. And maybe at this point, you're like, look, Joe, you just told me that you made an iOS app. AI makes it really easy. I'm not convinced. And you're right to call me out on that. I've never made an iOS app, and I used to AI to write an iOS app, and I am using that iOS app every day. It's called Daily 3 Task Journal, and it is based on a system I use to help my clients understand what they get done in a day, a week, and a month. And again, it's totally free. I'm not trying to be in the app business. It's only ever going to be on test flight as long as I can help it. So if you want to test it out and try it, you can head over to streamlined.fm/app. Check it out, see how it goes.
But you might be thinking, all right, I still want to try my hand at writing an app. And again, I totally understand this. Right? So here's what I'm thinking. As far as Vibe coding goes, I'm going to share a quick win or a couple of quick wins for you, things that you can almost definitely do very well without it sucking up all of your time. And then I'm going to give you a cautionary tale, because one of the reasons I'm trying to turn you away from this is not because you hit a home run in the first inning to bring in a baseball analogy, right?
Hitting a home run in the first inning is great, but it doesn't mean you're going to win the game. You still have eight and a half innings to get through, and if your closing pitcher gives up a grand slam, you lose the game. And you don't want to waste all of this time writing software that you're ultimately going to scrap because you don't know enough about the process. So, quick win.
I have used AI to make simple WordPress plugins. In fact, streamlinedfeedback.com that audio, like the ability to leave an audio note. I wrote that with Claude's code, I architected it. I made it an HTML page first. And then when it came time to actually work in the storage, I said, " Let's make this a WordPress plugin”.
WordPress is something that I know deeply. I've also used it to write JavaScript, which I don't know that well, but I know enough to test it and make sure nothing breaks. And I've been using it to write data view code, which is how to get these custom views in Obsidian. And it used to take me a long time to get the right code to show the files in the way that I wanted them. And large language models are very good at writing data view code. So those are quick wins. Those save me time and money, right? Because I never wanted to pay for Speak Pipe because I don't get enough voice notes to justify paying 12 to $20 a month. And I thought it was a neat feature, but I went without for a while. And then I wrote this plugin, and it works great. And I tested it a lot, and I had my friends test it, and it works well. So those are some quick wins.
But I also want to share a cautionary tale with you, and that is writing an iOS app. I started that when I had strep throat, and so I was like, pretty laid up. Anyway, I wasn't doing any real work, and I thought, let's see how far I can get on this Task journal app. And it was great.
Hitting home runs in the first inning was fantastic. But then, you know, in the fifth inning, my starting pitcher is getting tired. I know I'm stretching this analogy too much, but I got to a point where I tried to do something, and the app completely broke, and I didn't know how to fix it. I didn't even really understand what was wrong. And the AI couldn't figure out what was wrong either.
And I was building this in Xcode. Xcode has direct integration with both ChatGPT, Codex, and Claude code now. And that's the only way, by the way, that I would ever write an iOS app. Something tells me that the fact that it's in Xcode gives me additional security, right? That it's Apple software dictating what the AI does. Maybe that's wrong, but it's definitely better than just copying and pasting it from a chat window into Xcode.
So the iOS app process took longer than I wanted it to. You know, there was time sucks in bug hunts and learning Xcode. It would tell me to do something, and I couldn't find it. And then I had to share screenshots with it. Submitting it to the App Store took a lot longer. Making the app icon was maybe the most time-consuming part. And once something is broken, if you don't know how to fix it, AI probably won't either.
I knew enough to create what's called feature branches. So like, make copies of the working code and then add something new. And if it worked, great, replace the working code with the new working code. And if it didn't, fine, I could revert back to the original working code. But if you don't know how to do that now, you're at the mercy of the LLM if it could revert the broken changes. So you do need to be careful, you do need to be cautious, and you want to make sure it's not going to suck up a bunch of your time.
So here is a simple decision framework, and then some things to consider if you're going to do this. Number one is does this solve a problem? I know very well you can't reasonably test an app if you don't understand the thing you're doing.
So the app I wrote for iOS implements my own process, and it does it in a way where I knew that there were changes I could or improvements I could make with an app versus just doing it with pen and paper or with my note-taking app.
So does this solve a problem you know very well? Do you have a clear use for the app now? For me, I really didn't, I actually didn't until I saw it working, and I thought, oh, this is actually something I could really use with my clients, right? This was just kind of like a sick day project and then the next workday I had to justify spending working hours on this, and I realized that for my coaching clients, this is actually a very useful tool.
So, do you have a clear use for the app? For the software? Will you actually use it? Cause that's the other thing, right? Maybe you, you sink all this time into building it, and you think, ah, I should have, I should have used the SaaS.
Anyway, that's happening to me right now with my CRM. I built one in Notion, and it was great until it wasn't great, right? Until, like, you know, things started kind of falling through the cracks, and I didn't really notice until I started noticing, and now I'm checking out an actual CRM.
So those are the first three questions. Does it solve a problem? You know, well, do you have a clear use for it, and will you actually use it? The next two questions, can I make the MVP, which is the minimum viable product, one to three features max?
You don't want massive, bloated software. In the beginning, you want this to have a very clear scope because that is what I can handle the best. So can I make the MVP one to three features max? And will this cut into time? I need to pay the bills. In other words, will this distract you from your most crucial work? If you answer these questions right, does it solve a problem I know well? Yes. Do I have a clear use for the app? Yes. Will I actually use it? Yes. Can I make the MVP one to three features max? Yes. Will this cut into the time I need to pay the bills? No. Then maybe give it a go. Try writing the software. My recommendation: Take it one feature at a time. Your first prompt should tell the AI the basic idea, and then have it come up with a simple development plan for you.
In my experience, it actually asked me like, these are the features, which one should we do first? And then each feature should be added to, and you should save your progress, and then add. Save your progress and then add and test each step of the way.
So if you do decide to do this, here are three pieces of advice. This is what I'll leave you with. Don't assume winning the inning means winning the game. Like I said earlier, you can hit a home run in the first inning, that doesn't mean you win the game. Just because you have early success doesn't mean the rest of the process is going to go smoothly. And so you should have a very clear cutoff point where you say, okay, this is feature complete.
I have invested time in this, and it is working, and I like it. Or a time where you say you're going to cut line. I was fully prepared to do that with my iOS app. In fact, if I had spent like another half hour troubleshooting it, I would have said, ah, this isn't going to work.
And I've done that with lots of projects in the past that I've tried using AI for this time around, a year later, which is just the progress has been incredible. This time last year, I tried coding something, and I was like, nope, it ain't there yet. So be prepared to cut line.
Number two. Take time to test it. Don't just assume because it worked this one time on your machine that it's going to work really well and now it's ready for distribution. Use it over a few days, use it over a couple of weeks, see how it goes. Don't rush the release because you are excited because you hit a home run in the first inning. Test it over days and see how it does for you.
And finally, assuming you are not a Software Developer and that is not your core business, use the app as sawdust. This is something Jay Clouse talked about last year at Kraft and Commerce. Use your sawdust. So take the things that are the byproduct of what you're doing for your business and use them in some tangible way.
That's what I'm doing with this app. This app is a lead magnet for me now, and I think it's a pretty good one. So take what you have, what you're learning, and write about it. Make a video, make some content about it. Maybe use the app as a lead magnet if it's good, if you've tested it.
But don't just sink a bunch of time into it and then a month later be like, ah, this isn't really what I thought it was, right? This is what that decision framework is for. So you're not wasting your time. And using it as sawdust will help you get even more mileage out of it. Because there are a lot of ways that we as solopreneurs can be distracted. You probably started your business because you have a lot of really great ideas, and using AI to write software can be the ultimate distraction if you let it.
So use my five-question framework. I will have it in the description of this episode, and let me know, if you have Vibe Coded software? Do you have a software development background? Let me know over at streamlinedfeedback.com, that's streamlined with a D feedback.com. You can see one of my Vibe-coded plugins if you send a voice note.
And if you want to see this iOS app, if you sign up over at streamlined.fm/ app, you will get invited to the Test Flight Beta, and you will see my process for how you can stay focused on your three most important tasks while journaling about how the tasks are going.
The goal of this app is to help you understand how you're spending your time, where you're spending your time, so that you can make adjustments and spend your time on your most crucial work. So it does take some being honest, but the push notifications on your phone help you stay a little bit accountable.
All right, that's it for this episode of Streamlined Solopreneur. Thank you so much for listening, and until next time. I hope you find some space in your week.