Most product ideas begin in the wrong place. They start with a market gap, a trend report, a brainstorm about what "people" might want. The founder builds for an imagined user. The imagined user never shows up.

I work the other way around. I solve problems I am personally sick of dealing with. Not hypothetical friction. Not startup ideas. Actual, recurring annoyance in my own workflow. If something wastes my time every day, I build a tool to remove it. That is the entire method.

The interesting part is why it works: if a problem is real enough to make me stop and build something, it is almost certainly real for thousands of other developers too.

The evidence

LazyCommit started because writing commit messages felt like busywork. Not an experiment in AI, not a "what if." Just annoyance. I automated the entire thing with an AI-powered commit generator. Today it has 130,000+ downloads on npm. I did not plan that number. I just removed a task that was repeatedly wasting my time, and it turned out the frustration was universal.

Doable came from the same impulse. Creating issues in Linear was turning into a mini-job: repetitive, manual, slow. I wanted bulk creation, bulk deletion, instant assignment, all from a single prompt. So I built it: a Linear-style UI with an AI agent built on Vercel SDKs. It now has 200+ signups and 2,000 organic visitors.

Quotick exists because adding backticks manually in code is repetitive, pointless, and easy to get wrong. It automatically inserts backticks when you use ${} syntax. 500+ installs across VS Code and Cursor. A small tool for a small annoyance, which is exactly the point.

Stage happened when I needed clean screenshots for my portfolio and realized no existing tool gave me what I wanted: fast, polished, export-ready. So I built a screenshot showcase generator. 12k visitors, 5.5k+ images exported, 300+ stars on GitHub.

What connects these

The pattern is not "find a gap and fill it." The pattern is: notice what you repeat, notice what irritates you, then remove it. The only validation that matters is whether the problem is real enough that you would build the tool even if nobody else ever used it.

That is also why adoption follows. You are not guessing at someone else's pain. You are documenting your own.

On AI as a building tool

AI tools accelerate development, but only if you already understand the fundamentals. If your CS basics are weak, building with AI is like building on sand. One unexpected edge case and the whole thing folds.

If the foundation is solid, AI becomes a force multiplier. You iterate faster, test faster, move faster. It does not turn inexperience into skill. It amplifies the skill you already have.

On choosing a stack

I build most things with Next.js, React, Node + Express (sometimes FastAPI), Postgres with Prisma or Drizzle, and Better Auth for authentication. Not because this combination is objectively "the best." Because I know it well enough to move fast without stopping to debug unfamiliar tooling.

Familiarity beats novelty. The best stack is the one where your muscle memory does most of the work.

The real insight

If you want to build things people use, stop looking outward for ideas and start paying attention to your own frustration. Your repeated annoyances are a roadmap. Your daily irritations are product opportunities. Your workflow struggles are problems that millions of developers share, they just have not built the solution yet.

The best products are not born from inspiration. They are born from impatience.