I’m Good at Building Apps. I’m Terrible at Shipping Them.

As a software engineer, modesty aside, I'm really good on what I do. Not in an arrogante way, just in the "I have spent a lot of years getting good at this" kinda way. I know how to build solid apps. I care about good code, clean architecture and properly testing the code I write. All the things that good software engineers are supposed to care about.

Well, honestly, I think that's part of a problem. I have high standards for anything that I put my name on, but sometimes that commitment to make great things turns into a prison.

I have quite a few side projects and ideas that I'm excited about. Some of them are 80 or 90% done, but I never feel like they are ready to launch. It always feels like I'm missing something: the onboarding could be better, the billing system needs to handle more edge cases or the mobile user experience could be polished more. And while I'm sitting here tweaking everything, people out there are shipping worse products (and I mean it) and getting real customers, earning real money.

THeir apps have bugs on things that you notice on the first time you try the app, not on weird edge cases, but on basic funcionality. They have a terrible UI and a bunch of half baked features. But they're live, they are making money, and they are growing. Meanwhile, I'm stuck polishing dashboards that no one has ever seen.

I think being good at this comes with this "curse". You know exactly how bad your unfinished productd is, you see every f*ing edge and every weak spot. Every potential issue that no one else would notice and maybe never will.

Because I see all the flaws, I'm terrified to put it out there. Imagine what others will think, right? So I wait, tweak and polish, while watching worse products passing by.