Roshan Singh • 18 January 2026 • 7 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.
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:
- build something real
- show it
- get hit
- fix it
- 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.
Keep exploring
More from the Eklavya learning desk
Continue the journey with reflections on independent learning, coaching myths, and smarter JEE prep.
How Eklavya Is Rethinking AI Chats Without Breaking What Already Works
Why Eklavya kept RAGFlow for clean NCERT retrieval but moved conversation, behavior, and long-term student memory into its own stack, so JEE/NEET chats stay controllable as usage scales.
Lofi Is Not Focus: The Irrelevant Sound Effect Is Eating Your Rank
Studying with playlists feels like focus, but it often taxes working memory and makes recall fragile. A blunt JEE protocol to build silence stamina and perform when it matters.