I Shipped My Side Project and I Feel Embarrassed
I build a productivity tool to fight procrastination. Some nights, instead of building it, I doom scroll until midnight.
That's the truth. And if you're a developer sitting on an unfinished side project, this post is for you.
What I Built
Inner Anchor is a focus tool. At its core, there's a small pill - 400 by 60 pixels - that sits in the bottom right of your screen. When you press the focus button, it shows you the progress of whatever task you chose to focus on.
That's it. It's always there. You drift to Facebook. You fall into a Reddit thread. You open a tab you didn't need. And then you see the pill. You remember what you were doing. You go back.
It's simple. It works. I know because I use it myself.
But right now, that's all it does. It's a task list with a focus pill. No mobile app. No daily journal. No sync between devices. Nothing that makes it obviously different from the hundred other task list apps already out there.
I shipped it anyway.
Building at the Margins
I work full time as a developer. My building window looks like this: get home at 6, eat by 7, build until 11 or midnight, sleep, repeat. Weekends I try to balance life and extra sleep to recover from the weekdays.
I quit going out. Not dramatically. Just... stopped. I don't miss it. Building gives me something going out didn't. There's a specific kind of joy in creating something that could be useful to someone other than yourself.
Some nights, though, I don't touch the project at all. I sit down, open my laptop, and the next thing I know it's 11pm and I've been scrolling through nothing. The tool I'm building to fight that problem? Closed in another tab.
I don't think that makes me a hypocrite. I think it makes me the right person to build this.
The Morning I Almost Didn't Ship
Last Saturday morning, I woke up knowing today was the day. The basic version was done. Usable. Not polished, not feature-complete, but functional.
I hesitated from morning until afternoon.
The voice in my head ran through everything wrong with it. It's not ready. There are defects. It's just a task list. Anyone who finds this will think it's amateur. You're a developer - you should know better than to ship something with bugs.
Then another voice: just do it anyway.
So in the evening, I opened my laptop, hit publish, and... nothing happened. No fireworks. No wave of users. No judgment. I closed the laptop and went to cook dinner.
The most dramatic moment of my project so far ended with me chopping vegetables.
The Embarrassment Is in My Head
Here's something I realized after publishing: nobody has used it yet. Nobody has said anything. The embarrassment I felt - the cringing, the second-guessing - was entirely imaginary. I was flinching from a punch that hasn't been thrown.
I'm embarrassed in front of users who don't exist yet. I'm worried about judgment from people who haven't found the product. The defects I'm losing sleep over? No one has seen them.
This doesn't make the feeling less real. But it does make it less rational.
The Feature That Would "Fix" My Embarrassment
In my head, I have a clear line: once the mobile app and daily journal are done, I won't be embarrassed anymore. That's maybe two months of building.
But here's the question I can't shake: what happens two months from now when those features are done and my roadmap is still full? Because it will be. I already have plenty of features planned beyond those two. There's always a next thing. There's always a reason to wait.
If I waited until I felt ready, I might never ship at all. And I'd rather be embarrassed with something live than comfortable with something no one will ever see.
What I'd Tell You
If you messaged me right now and said "I've been sitting on my project for six months because it's not ready," here's what I'd say:
Ship it.
First, nobody will discover it until you actually put yourself out there. Until you post on Reddit, until you write about it, until you tell someone, your unpolished project is invisible. The world isn't watching and waiting to judge you. The world doesn't know you exist yet.
Second, you need real users. Not your imagination of users. Real people who click around your app and tell you what's broken, what's confusing, what they actually want. I have beta users lined up for exactly this reason. Their feedback will be more useful than three more months of building in isolation.
The irony isn't lost on me. I just told you to do the thing that made me feel embarrassed. But I did it. And the dinner I cooked afterward tasted fine.
What's Next
Inner Anchor is live. It's bare bones. The focus pill works. The task list works. That's about it.
Over the next few months, I'll be adding the mobile app and the daily journal. I'll be iterating based on what real users actually need rather than what I imagine they need.
If you want to try it, it's out there. If you find bugs, I already know. I'm working on it.
And if you're a developer sitting on your own side project, afraid to publish because it's not ready - I was you twelve hours ago. The publish button didn't kill me. It just made dinner taste a little different.
I'm Hung, a fullstack developer building tools to fight procrastination and distraction. You can follow my journey at dhung.dev.