← Back to all articles

Roshan Singh18 January 20267 min read

Take Your Shot. Ship the Ugly Version.

Most people asking for "guidance" actually want comfort and a guaranteed path. The only real path is a loop: ship something messy, show it, get feedback, fix it, repeat. A blunt 14-day protocol to build production instincts by shipping real demos and asking for sharp feedback.

Take Your Shot. Ship the Ugly Version.

Take Your Shot. Ship the Ugly Version.

I get emails that sound like this:

“How do I build production apps?” “How do I get opportunities?” “How do I break in?”

The subtext is always the same.

Tell me the correct path so I don’t have to look stupid.

Here is the problem.

There is no correct path.

There is only a loop:

  1. build something real
  2. show it
  3. get hit
  4. fix it
  5. repeat

Most people never enter the loop. Not because they are dumb. Because they are terrified of being seen before they are ready.

Ready is a myth.

A few months ago I was doing a night shift in a call center, making 30–50k a month. That job does something to your brain. It makes you cautious in the worst way.

You start treating risk like a luxury item.

You come home tired. You scroll. You watch other people build things. You tell yourself you will start soon, once you learn a little more.

Soon never comes.

The moment that changed things was embarrassingly small

I replied to Dr. Aniruddha Malpani’s tweet.

Not a pitch deck. Not a LinkedIn essay. Not a networking plan.

A reply.

People love to turn these moments into mythology. They’ll call it “building in public” or “personal branding” or “network effects.”

Most of it is coping.

The real thing is simpler:

I took a shot.

And because I took one shot, I started behaving like the kind of person who takes shots.

That is what changed my trajectory.

Not some secret message. Not one lucky break.

A pattern.

The advice people want is not the advice that works

When someone asks “How do I build production apps?” they usually mean:

“How do I avoid embarrassment while I learn?”

They want a checklist that guarantees they will look competent.

They want a course. They want a certification. They want a playlist.

They want the feeling of progress without the exposure of shipping.

That feeling is fake.

The only teacher that makes you good at production is production.

The only way to learn what breaks is to ship something that can break.

“But what if my work is bad?”

It will be.

That is fine.

Build the ugly version.

Not as a motivational quote. As a policy.

Because ugly is how real work begins.

One of the cleanest examples from my life is IndianPotholes.com.

It was not perfect. It did not have beautiful design. It had rough edges.

But it existed.

That one fact puts you ahead of 95% of people who are “learning web dev” for two years and have nothing to show.

The world cannot react to your potential.

The world reacts to links.

A demo. A repo. A screenshot. A short video. A thread where someone can click and judge.

Judgment is the point.

Why opportunities come to people who ship

Opportunities are not handed out to “the most talented.”

They are handed out to the most visible proof of work.

People respect motion.

Not because motion is always good.

Because motion is rare.

Most people live inside private notebooks:

  • notes
  • plans
  • bookmarks
  • “I’m working on it”

You cannot get hired by a notebook.

You cannot get mentored by a notebook.

You cannot build leverage inside your own head.

You need an artifact that lives outside you.

That artifact does not need to be impressive.

It needs to be real.

What changed for me

Back then, sitting in a call center night shift, I would not have believed you if you told me I would get to serve 50–60k students.

Not because I lacked ambition.

Because the gap between “me then” and “me now” felt like a gap between species.

It isn’t.

The difference is not some magical intelligence upgrade.

The difference is that I started shipping things that other people could see and react to.

Now the funny part is I get emails from people asking me for guidance on building production applications.

It is funny because I remember exactly how “production” used to sound.

Like a word reserved for real engineers.

It is respectful too.

It means something I made crossed the line from private to public, and someone noticed.

That is the entire game.

Stop asking for guidance. Start asking for feedback.

Guidance is vague.

Feedback is sharp.

Guidance sounds like:

“Bro how do I start?”

Feedback sounds like:

“Here is my demo. What is the biggest flaw?”

Guidance makes the other person do the work of thinking.

Feedback gives them something concrete to react to.

If you want help from serious people, do not send them vibes.

Send them proof.

What “production” actually means (and why beginners get confused)

A lot of beginners think “production” means “clean code.”

No.

Production means:

  • your app fails and you can tell why
  • your app is slow and you can measure where
  • your app is used by someone who will not forgive you
  • your app is deployed somewhere you can access at 2 a.m.

Production is not a programming skill. It is a responsibility skill.

That is why the only way to learn it is to carry responsibility.

Even a small amount.

Even for a tiny app.

Especially for a tiny app.

The 14-day shot protocol

If you want something practical, here.

Do this for 14 days. No breaks. No perfect plan.

Day 1: Pick one tiny real app

Not a tutorial clone.

A real thing that a stranger could use once.

Examples:

  • a form that sends you an email and stores the data
  • a simple dashboard that pulls and displays something useful
  • a small tool that solves a specific annoyance in your life

Day 2: Ship the first ugly version

Deployed.

Not local.

Not “it runs on my machine.”

A URL.

If you can’t ship a URL, you are not learning production. You are learning comfort.

Day 3: Add one boring production feature

Pick one:

  • error logging (Sentry or basic server logs)
  • rate limiting
  • input validation
  • basic monitoring

Boring is where production lives.

Day 4: Record a 45-second demo

Show it working.

Do not over-explain.

Just show the artifact exists.

Day 5: DM one person with proof of work

Send this message:

“Hey, I built X. Here’s the demo. What is the biggest flaw you see?”

No “please guide.”

No life story.

One link.

One question.

Day 6: Fix the biggest flaw

Not five things.

One thing.

Ship again.

Day 7: Reply to someone publicly

Reply to a tweet.

Comment on a thread.

Post your demo.

Do something that creates a trail.

Days 8–14: Repeat the loop

Each day:

  • ship one improvement
  • show it
  • ask for feedback

Your goal is not perfection.

Your goal is becoming the type of person who ships.

A brutal filter

If you have “ideas” but no demos, you are not early.

You are stuck.

And you don’t need motivation.

You need exposure.

Ship something.

Let someone judge it.

That judgment will hurt.

Good.

It will also teach you faster than any course.

Final thought

The people you admire are not braver than you.

They are just more practiced at shipping before they feel ready.

Take the shot.

Ship the ugly version.

DM someone.

Reply to someone.

Then do it again tomorrow.