How I Accidentally Started a SaaS While Fixing a CSS Bug

It started, as many bad decisions do, with a <div>.

I wasn’t trying to start anything. I was just trying to align a button.
One rogue margin-top turned into an existential spiral, and next thing I knew I was three days deep into redesigning an internal dashboard no one had asked for - not even me.

The original bug? Still unfixed.
But somehow I had a prototype, a Figma graveyard, and a README that said “temporary dev workspace” with the kind of confidence only sleep deprivation can generate.

The rabbit hole:

  • Tried fixing CSS.
  • Realized the whole UI felt cursed.
  • Rewrote the layout “just to clean things up.”
  • Needed state management.
  • Started organizing my own tasks in the app.
  • Accidentally built a micro-CRM.
  • Added auth, thinking: “Might as well.”
  • Spun up Postgres because storing things in local JSON felt too unhinged.
  • Googled: “am I building a SaaS?”

At that point, I had multi-user support, a kanban board, and a settings page.
The button? Still not centered.

Why this always happens

Every developer I know has built at least one tool they didn’t mean to.
You go to fix a small bug, and next thing you know, you’ve built infrastructure.
You tweak one setting, and somehow you’re maintaining a CLI.
You try to ship a feature, and end up with a startup.

Sometimes I wonder if startups are just bugs that escalated.

What I learned (besides how to center a button)

  • If you build something for your future self, someone else probably needs it too.
  • The best ideas don’t start as ideas - they start as annoyances.
  • Never trust a dev who says, “this’ll only take a second.”

If you’re deep in a CSS bug right now, I hope you make it out.
But if you don’t? You might accidentally build something worth shipping.

Just don’t forget to come back and fix the original bug.
Eventually.


(P.S. If you’ve ever accidentally built a workspace tool you wish actually existed - I might be working on something you’ll like. Stay tuned.)

Subscribe to deadinit.dev

Don’t miss out on the latest issues. Sign up now to get access to the library of members-only issues.
jamie@example.com
Subscribe