<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Sumit Tiwari</title>
    <description>The latest articles on DEV Community by Sumit Tiwari (@sumit_tiwari_85f93699c3a7).</description>
    <link>https://dev.to/sumit_tiwari_85f93699c3a7</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4198234%2F29013c6b-6b56-4824-9897-af90757f8c7e.png</url>
      <title>DEV Community: Sumit Tiwari</title>
      <link>https://dev.to/sumit_tiwari_85f93699c3a7</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/sumit_tiwari_85f93699c3a7"/>
    <language>en</language>
    <item>
      <title>Raat Ka RJ: An Interactive Audio Microdrama – You Decide What Dev Does Next</title>
      <dc:creator>Sumit Tiwari</dc:creator>
      <pubDate>Fri, 13 Nov 2026 10:41:05 +0000</pubDate>
      <link>https://dev.to/sumit_tiwari_85f93699c3a7/raat-ka-rj-an-interactive-audio-microdrama-you-decide-what-dev-does-next-1ca</link>
      <guid>https://dev.to/sumit_tiwari_85f93699c3a7/raat-ka-rj-an-interactive-audio-microdrama-you-decide-what-dev-does-next-1ca</guid>
      <description>&lt;h2&gt;
  
  
  Raat Ka RJ: An Interactive Audio Microdrama – You Decide What Dev Does Next
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;An interactive microdrama | 3 choices, 4 endings | Estimated reading time: 5–8 minutes&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;What if someone sent you a voice note every night at exactly 1:47 AM, but never said a single word?&lt;/p&gt;

&lt;p&gt;Would you ignore it, investigate it, or listen closely enough to discover what it was trying to tell you?&lt;/p&gt;

&lt;p&gt;I normally write about code, open source, and development. This time, I wanted to experiment with something different: a story where the reader doesn't just follow the plot but actually makes decisions that change how it ends.&lt;/p&gt;

&lt;p&gt;The idea came from my interest in radio and the people who stay awake at night listening to voices they've never met.&lt;/p&gt;

&lt;p&gt;I've also built UP Radio, a radio app featuring live Uttar Pradesh stations. While working on it, I kept thinking about the connection between a radio host and someone listening on the other side.&lt;/p&gt;

&lt;p&gt;That thought became &lt;strong&gt;Raat Ka RJ&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;This is not a story where you simply scroll from beginning to end. You have choices to make, clues to notice, and different endings to discover.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How to read this story:&lt;/strong&gt; At every choice, click an option to reveal what happens. Some options lead to dead ends. One path reaches the true ending. Read carefully, because every sound is a clue.&lt;/p&gt;




&lt;h2&gt;
  
  
  Characters
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Dev (21):&lt;/strong&gt; A nervous night RJ at a small campus community radio station, 91.2 FM. His voice shakes whenever he thinks someone is listening.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The Listener:&lt;/strong&gt; An unknown person who sends one voice note every night at 1:47 AM.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Bilal (14):&lt;/strong&gt; A young boy who appears near the end of the story.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Khan Saheb:&lt;/strong&gt; A former radio presenter whose voice has been missing for a long time.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Episode 1: 1:47 AM
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;A tiny radio studio. Foam panels on the walls. One microphone. A red ON AIR light. The clock reads 1:46 AM.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Dev is alone.&lt;/p&gt;

&lt;p&gt;Nobody usually listens to a campus radio show at this hour.&lt;/p&gt;

&lt;p&gt;The streaming dashboard says:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3 listeners.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Sound: A quiet hum from the old mixer.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;DEV&lt;/strong&gt; &lt;em&gt;(into the microphone, nervously):&lt;/em&gt; Aap sun rahe hain Raat Ka RJ, 91.2 FM. Main hoon Dev. Agar aap jaag rahe hain, toh iska matlab hai ki aap bhi kisi baat ka intezaar kar rahe hain.&lt;/p&gt;

&lt;p&gt;At exactly 1:47 AM, his phone buzzes.&lt;/p&gt;

&lt;p&gt;A message on the request line.&lt;/p&gt;

&lt;p&gt;A voice note. Six seconds long.&lt;/p&gt;

&lt;p&gt;No words.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Sound: A ceiling fan turning. A pressure cooker whistle in the distance. And underneath it, something rhythmic: someone tapping slowly on a wooden surface.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Dha, ge, na, ti, na, ka, dhi, na.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Then a text message appears:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;"Woh purana gaana laga do. – Ek Shrota"&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Dev opens the chat.&lt;/p&gt;

&lt;p&gt;The same number has sent this message every night for &lt;strong&gt;eleven consecutive nights&lt;/strong&gt;, always at 1:47 AM.&lt;/p&gt;

&lt;p&gt;He has never replied.&lt;/p&gt;

&lt;p&gt;He doesn't know which old song the listener means.&lt;/p&gt;

&lt;p&gt;The voice note is still playing in his headphones.&lt;/p&gt;

&lt;p&gt;For some reason, his chest feels tight.&lt;/p&gt;

&lt;h3&gt;
  
  
  🎧 Choice 1: What does Dev do?
&lt;/h3&gt;

&lt;p&gt;&lt;/p&gt;
  🅰️ Play a regular song and ignore the message
  &lt;p&gt;Dev shrugs, queues a regular song, and finishes the show at 2:00 AM.&lt;/p&gt;

&lt;p&gt;The next night, 1:47 AM arrives.&lt;/p&gt;

&lt;p&gt;His phone stays silent.&lt;/p&gt;

&lt;p&gt;No fan. No cooker. No tapping.&lt;/p&gt;

&lt;p&gt;Dev stares at the screen for ten minutes.&lt;/p&gt;

&lt;p&gt;The night after that, the same silence.&lt;/p&gt;

&lt;p&gt;The number is still saved, but it never sends another message.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ending 0: The Silence&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Some messages only come once. Go back and choose B.&lt;/em&gt;&lt;/p&gt;



&lt;p&gt;&lt;/p&gt;

&lt;p&gt;&lt;/p&gt;
  🅱️ Replay the voice note and listen carefully
  &lt;p&gt;Dev puts on his headphones again.&lt;/p&gt;

&lt;p&gt;This time, he turns down the background music and listens to every second.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Continue to Episode 2 below.&lt;/em&gt;&lt;/p&gt;



&lt;p&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Episode 2: The Rhythm
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;Dev replays the voice note. Again. And again.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Sound: Fan. Pressure cooker whistle. Eight beats of tapping. Then, at the end, something almost impossible to hear: an old man's breath.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Dev leans closer.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;DEV&lt;/strong&gt; &lt;em&gt;(whispering to himself):&lt;/em&gt; Yeh koi gaana baja raha hai. Ungli se. Bed ke frame pe.&lt;/p&gt;

&lt;p&gt;He recognises the pattern.&lt;/p&gt;

&lt;p&gt;An eight-beat rhythm. The kind of rhythm that old film songs often use.&lt;/p&gt;

&lt;p&gt;But he cannot identify the song.&lt;/p&gt;

&lt;p&gt;His phone is still open.&lt;/p&gt;

&lt;p&gt;He has two options.&lt;/p&gt;

&lt;p&gt;He can investigate the number, or he can search the radio station's old archive: a dusty steel cabinet full of cassettes that has been locked since before he joined.&lt;/p&gt;

&lt;h3&gt;
  
  
  🎧 Choice 2: Where does Dev look?
&lt;/h3&gt;

&lt;p&gt;&lt;/p&gt;
  🅰️ Trace the number
  &lt;p&gt;Dev checks the number against the station's caller log.&lt;/p&gt;

&lt;p&gt;A name appears on the messaging profile:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Bilal.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;No photograph. No address. No other information.&lt;/p&gt;

&lt;p&gt;He sends a message:&lt;/p&gt;

&lt;p&gt;&lt;em&gt;"Aap kaun?"&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Two blue ticks.&lt;/p&gt;

&lt;p&gt;No reply.&lt;/p&gt;

&lt;p&gt;Dev now has a name, but nothing that explains the mysterious voice notes.&lt;/p&gt;

&lt;p&gt;He looks at the clock.&lt;/p&gt;

&lt;p&gt;1:52 AM.&lt;/p&gt;

&lt;p&gt;The trail has gone cold.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ending 1: Half an Answer&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;A name isn't a person. Go back and choose B.&lt;/em&gt;&lt;/p&gt;



&lt;p&gt;&lt;/p&gt;

&lt;p&gt;&lt;/p&gt;
  🅱️ Open the old archive cabinet
  &lt;p&gt;Dev remembers seeing an old cabinet behind the studio door.&lt;/p&gt;

&lt;p&gt;He decides to investigate.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Continue to Episode 3 below.&lt;/em&gt;&lt;/p&gt;



&lt;p&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Episode 3: The Cassette
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;The cabinet key hangs on a nail behind the door, under a layer of dust.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;The lock groans.&lt;/p&gt;

&lt;p&gt;Inside are forty old cassettes, each with a handwritten label.&lt;/p&gt;

&lt;p&gt;One catches Dev's attention:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;"Raat Ka Saathi, 1991. Khan."&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;He slides it into the old cassette player.&lt;/p&gt;

&lt;p&gt;A hiss.&lt;/p&gt;

&lt;p&gt;Then a voice.&lt;/p&gt;

&lt;p&gt;Deep, warm, unhurried. A voice that sounds like it was made for radio.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;KHAN (1991 RECORDING):&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Yeh Akashvani ka Lucknow kendra hai. Raat ke do bajne wale hain. Agar aap abhi tak jaag rahe hain, toh main aapke saath hoon. Aaj ki raat ka aakhri gaana, sirf aapke liye.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;A song begins.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Raat Ka Musafir.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Old. Gentle. Built around the same eight-beat rhythm.&lt;/p&gt;

&lt;p&gt;Dev presses pause.&lt;/p&gt;

&lt;p&gt;His hands are shaking.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;DEV&lt;/strong&gt; &lt;em&gt;(whispering):&lt;/em&gt; Yeh wahi hai. Woh isi gaane ke liye ungli bajate hain.&lt;/p&gt;

&lt;p&gt;He looks at the clock.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1:31 AM.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;In sixteen minutes, the mysterious voice note will arrive again.&lt;/p&gt;

&lt;p&gt;He rewinds the cassette.&lt;/p&gt;

&lt;p&gt;At the end of the recording, Khan repeats a familiar sign-off.&lt;/p&gt;

&lt;p&gt;The same words.&lt;/p&gt;

&lt;p&gt;The same rhythm.&lt;/p&gt;

&lt;p&gt;The same voice.&lt;/p&gt;

&lt;p&gt;Dev begins to wonder whether someone has been waiting for that sign-off for thirty-five years.&lt;/p&gt;

&lt;h3&gt;
  
  
  🎧 Choice 3: What does Dev do on air tonight?
&lt;/h3&gt;

&lt;p&gt;&lt;/p&gt;
  🅰️ Play the song and say nothing
  &lt;p&gt;At 1:47 AM, Dev plays &lt;em&gt;Raat Ka Musafir&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;No words. No introduction.&lt;/p&gt;

&lt;p&gt;The song fills the studio.&lt;/p&gt;

&lt;p&gt;Somewhere across the city, a phone buzzes.&lt;/p&gt;

&lt;p&gt;Another voice note arrives.&lt;/p&gt;

&lt;p&gt;The fan. The cooker. The tapping.&lt;/p&gt;

&lt;p&gt;This time, the rhythm is a little steadier.&lt;/p&gt;

&lt;p&gt;Then nothing.&lt;/p&gt;

&lt;p&gt;Dev smiles, relieved, and ends the show.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ending 2: The Song&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;It was kind, but the listener wasn't waiting only for the song. Go back and choose B for the true ending.&lt;/em&gt;&lt;/p&gt;



&lt;p&gt;&lt;/p&gt;

&lt;p&gt;&lt;/p&gt;
  🅱️ Play the song, then say the old sign-off on air
  &lt;p&gt;Dev looks at the microphone.&lt;/p&gt;

&lt;p&gt;He takes a breath.&lt;/p&gt;

&lt;p&gt;He has never repeated someone else's words on air before.&lt;/p&gt;

&lt;p&gt;But tonight feels different.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Continue to Episode 4 below.&lt;/em&gt;&lt;/p&gt;



&lt;p&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Episode 4: Yeh Akashvani Hai
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;1:46 AM. Dev adjusts the microphone.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;His hands are cold.&lt;/p&gt;

&lt;p&gt;For the first time, he doesn't look at the streaming dashboard.&lt;/p&gt;

&lt;p&gt;He looks at the clock.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;DEV&lt;/strong&gt; &lt;em&gt;(into the microphone, steady for the first time):&lt;/em&gt; Raat ke do bajne wale hain. Agar aap jaag rahe hain, toh yeh gaana sirf aapke liye.&lt;/p&gt;

&lt;p&gt;He presses play.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Raat Ka Musafir&lt;/em&gt; fills the studio.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Sound: The old eight-beat rhythm. Soft. Familiar.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;The song ends.&lt;/p&gt;

&lt;p&gt;A moment of silence.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;DEV&lt;/strong&gt; &lt;em&gt;(slowly):&lt;/em&gt; Yeh Akashvani ka Lucknow kendra hai.&lt;/p&gt;

&lt;p&gt;He stops.&lt;/p&gt;

&lt;p&gt;He doesn't know whether he is allowed to repeat those words.&lt;/p&gt;

&lt;p&gt;Then he continues.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;DEV:&lt;/strong&gt; Raat ke do bajne wale hain. Aap abhi tak jaag rahe hain, toh main aapke saath hoon.&lt;/p&gt;

&lt;p&gt;The red ON AIR light stays on.&lt;/p&gt;

&lt;p&gt;For ten seconds, nothing happens.&lt;/p&gt;

&lt;p&gt;Then his phone buzzes.&lt;/p&gt;

&lt;p&gt;A voice note.&lt;/p&gt;

&lt;p&gt;Twenty seconds long.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Sound: A boy's voice. Young. Breathless.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;BILAL (voice note):&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Bhaiya... Dadu ne suna.&lt;/p&gt;

&lt;p&gt;Woh bol nahi sakte. Operation ke baad unki awaaz bahut kam ho gayi thi.&lt;/p&gt;

&lt;p&gt;Lekin jab bhi 1:47 bajte hain, woh mujhse phone uthake kamre ki awaaz record karne ko kehte hain.&lt;/p&gt;

&lt;p&gt;Woh kehte hain, "Dev sun lega."&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Sound: A pressure cooker whistle. The fan. And then the tapping begins.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;The eight-beat rhythm.&lt;/p&gt;

&lt;p&gt;Steady.&lt;/p&gt;

&lt;p&gt;Joyful.&lt;/p&gt;

&lt;p&gt;A pause.&lt;/p&gt;

&lt;p&gt;Then, from very close to the phone, a rasping, broken whisper.&lt;/p&gt;

&lt;p&gt;An old man, speaking for the first time in a year.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;KHAN SAHEB&lt;/strong&gt; &lt;em&gt;(hoarse, barely audible):&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;"...Yeh... Akashvani... hai."&lt;/p&gt;

&lt;p&gt;The tapping continues.&lt;/p&gt;

&lt;p&gt;Then it stops.&lt;/p&gt;

&lt;p&gt;Dev presses his hand over his mouth.&lt;/p&gt;

&lt;p&gt;For several seconds, he cannot speak.&lt;/p&gt;

&lt;p&gt;Then he leans into the microphone.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;DEV&lt;/strong&gt; &lt;em&gt;(voice cracking, smiling):&lt;/em&gt; Khan Saheb... shukriya. Raat abhi baaki hai.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Sound: The song begins again, softly, underneath his voice.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;ON SCREEN:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Some voices never fade. They wait for the right ear.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ending 3: The True Ending&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Why I Wrote It This Way
&lt;/h2&gt;

&lt;p&gt;I wanted to experiment with a format where the reader doesn't just read a mystery but actively participates in solving it.&lt;/p&gt;

&lt;p&gt;Here are five creative decisions that shaped the story:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Audio-first storytelling:&lt;/strong&gt; Every important clue is a sound: a fan, a cooker, a tapped rhythm, and a breath. The story is designed to work even with the screen off.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;A mystery the reader can solve:&lt;/strong&gt; Dev hears the same rhythm as the reader. Instead of explaining everything immediately, I wanted readers to notice the clues themselves.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Choices that change the emotion:&lt;/strong&gt; Playing the song is an act of kindness. Repeating the old sign-off takes courage. The important choice is not just about what happens next, but about whether Dev is willing to connect with someone he has never met.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Dead ends that still tell a story:&lt;/strong&gt; Every wrong option has its own ending. Readers aren't simply told they made a mistake; they discover what happens when Dev chooses a different path.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;One whisper as the payoff:&lt;/strong&gt; The entire story builds towards a single line from a man who can barely speak. I wanted a small, quiet moment to carry more emotion than a dramatic twist.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;For me, the interesting part was making the reader listen carefully, follow the clues, and feel that their decisions matter.&lt;/p&gt;




&lt;h2&gt;
  
  
  How I Used AI to Write This Story
&lt;/h2&gt;

&lt;p&gt;This story didn't begin with an AI prompt. It started with an idea, a pen, paper, and brainstorming.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Tools:&lt;/strong&gt; Claude, ChatGPT, and Google Search.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;My process:&lt;/strong&gt; I first brainstormed the concept on paper and thought about the setting, characters, sounds, and possible endings. Once I had a rough direction, I used Claude and ChatGPT to help organize my ideas into an interactive storyline, structure the branching choices, improve the wording, and explore different dialogue variations. I also used Google Search to explore relevant references and check technical and contextual details.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;What worked:&lt;/strong&gt; AI helped me turn scattered ideas into a structured story with multiple paths and endings. It was particularly useful for exploring different possibilities, organizing the choices, improving transitions, and checking whether the reader could follow the story without getting lost.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;What didn't:&lt;/strong&gt; The first versions felt too much like ordinary scripted stories. Some dialogue was overly polished, and some explanations revealed too much instead of allowing the mystery to develop naturally. I wanted readers to feel curious, notice the sounds, and discover the truth themselves. So I reworked the scenes, simplified the dialogue, added more pauses and sound-based clues, and made the choices more meaningful.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;One of the biggest lessons for me was that an interactive story is not just about giving readers multiple options. Every option should reveal something, change an emotion, or make the reader think differently.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The idea started with me. AI helped me structure and refine it. The final creative decisions were mine.&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Your Turn
&lt;/h2&gt;

&lt;p&gt;Which ending did you reach first?&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The Silence&lt;/li&gt;
&lt;li&gt;Half an Answer&lt;/li&gt;
&lt;li&gt;The Song&lt;/li&gt;
&lt;li&gt;The True Ending&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;And here's a question:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;If you were Dev, would you have repeated Khan Saheb's sign-off without knowing who was listening?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Tell me your choice and why in the comments.&lt;/p&gt;

&lt;p&gt;If enough readers are interested, I'll write Part 2:&lt;/p&gt;

&lt;p&gt;&lt;em&gt;What happens to Bilal after that night?&lt;/em&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  About Me
&lt;/h2&gt;

&lt;p&gt;I'm &lt;strong&gt;Sumit Tiwari&lt;/strong&gt;, a frontend developer, open-source contributor, and writer from Pune, India.&lt;/p&gt;

&lt;p&gt;I enjoy building web applications, contributing to open source, exploring new technologies, and experimenting with creative storytelling.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;GitHub:&lt;/strong&gt; &lt;a href="https://github.com/sumittiwari1302" rel="noopener noreferrer"&gt;sumittiwari1302&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;LinkedIn:&lt;/strong&gt; &lt;a href="https://www.linkedin.com/in/sumit-tiwari-b18701380/" rel="noopener noreferrer"&gt;Sumit Tiwari&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;DEV Community:&lt;/strong&gt; &lt;a href="https://dev.to/sumit_tiwari_85f93699c3a7"&gt;@sumit_tiwari_85f93699c3a7&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Instagram:&lt;/strong&gt; &lt;a href="https://www.instagram.com/sumittiwari8259/" rel="noopener noreferrer"&gt;@sumittiwari8259&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;&lt;em&gt;This is a work of fiction. All characters, stations, and events are fictional. Any resemblance to real persons or events is coincidental.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>fiction</category>
      <category>diversity</category>
      <category>writing</category>
      <category>podcast</category>
    </item>
    <item>
      <title>From My First Open-Source Contribution to Rank 46 in ECSoC’26</title>
      <dc:creator>Sumit Tiwari</dc:creator>
      <pubDate>Fri, 30 Oct 2026 11:08:47 +0000</pubDate>
      <link>https://dev.to/sumit_tiwari_85f93699c3a7/from-my-first-open-source-contribution-to-rank-46-in-ecsoc26-1m1i</link>
      <guid>https://dev.to/sumit_tiwari_85f93699c3a7/from-my-first-open-source-contribution-to-rank-46-in-ecsoc26-1m1i</guid>
      <description>&lt;p&gt;How I achieved Rank 46 in ECSoC’26 through consistent open-source contributions, mentorship, and hands-on learning.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Sumit Tiwari · B.Tech CSE Student at PW IOI Pune&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;ECSoC’26 Achievement:&lt;/strong&gt; Rank 46 · 98 Merged Pull Requests · 14 Projects · 35-Day GitHub Contribution Streak&lt;/p&gt;




&lt;h2&gt;
  
  
  About me
&lt;/h2&gt;

&lt;p&gt;I am Sumit Tiwari, a second-year B.Tech Computer Science and Engineering student at PW IOI Pune, interested in software development and open-source collaboration.&lt;/p&gt;

&lt;p&gt;My journey through the European Summer of Code–style open-source program, ECSoC Elite Summer of Code 2026, culminated in securing &lt;strong&gt;Rank 46 among approximately 13,000 participants&lt;/strong&gt;, with 822 active contributors.&lt;/p&gt;

&lt;p&gt;Throughout the program, I achieved 98 merged pull requests across 14 projects and maintained a 35-day GitHub contribution streak.&lt;/p&gt;

&lt;p&gt;These results came from a process of continuous learning. I began by developing my understanding of collaborative software development during my first internship. I then explored open source, learned how to contribute to established repositories, and gradually became more confident working with real-world codebases.&lt;/p&gt;

&lt;p&gt;This is the story of that journey, the people who helped me along the way, and the lessons I will carry into my future as a software developer.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Where it started: My first internship at PW LeapX
&lt;/h2&gt;

&lt;p&gt;My introduction to collaborative software development began with my first internship as a Frontend Developer at PW LeapX.&lt;/p&gt;

&lt;p&gt;Before the internship, most of my experience came from learning programming concepts and building projects. Working with a team introduced me to the practical side of software development.&lt;/p&gt;

&lt;p&gt;I learned how developers use Git and GitHub to manage changes, create branches, submit pull requests, and collaborate on shared codebases. I also gained experience building responsive user interfaces and working within an established development workflow.&lt;/p&gt;

&lt;p&gt;One of the most important lessons was understanding that contributing to a software project requires more than writing code. You need to understand the requirements, respect existing conventions, communicate with your teammates, and make changes that fit the project.&lt;/p&gt;

&lt;p&gt;That experience sparked my interest in contributing to projects beyond my own work.&lt;/p&gt;

&lt;p&gt;I began exploring open-source programs, including GirlScript Summer of Code, with the goal of eventually becoming an active contributor.&lt;/p&gt;

&lt;p&gt;At the time, I understood the basics of development workflows, but I had yet to experience the complete process of contributing to projects maintained by an external community.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Discovering ECSoC’26
&lt;/h2&gt;

&lt;p&gt;I discovered ECSoC Elite Summer of Code 2026 while browsing LinkedIn.&lt;/p&gt;

&lt;p&gt;The opportunity to work on real projects, learn from experienced developers, and contribute to open-source communities immediately interested me. I registered for the program, looking forward to applying what I had learned.&lt;/p&gt;

&lt;p&gt;However, I quickly realised that knowing Git and GitHub was only the starting point.&lt;/p&gt;

&lt;p&gt;I needed to understand how to identify suitable repositories, select issues, communicate with maintainers, follow contribution guidelines, and prepare pull requests that met a project's requirements.&lt;/p&gt;

&lt;p&gt;Even simple questions could be challenging at first. Which issue should I work on? How should I approach a maintainer? What should I do when I encounter an unfamiliar part of a codebase?&lt;/p&gt;

&lt;p&gt;I realised that becoming an effective open-source contributor required practical experience and a willingness to learn independently.&lt;/p&gt;

&lt;p&gt;Rather than treating these challenges as reasons to wait, I began looking for ways to understand the process and get involved.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Learning through the PW IOI open-source initiative
&lt;/h2&gt;

&lt;p&gt;Around the same time, PW IOI introduced an initiative to help students explore open source and contribute to real-world projects.&lt;/p&gt;

&lt;p&gt;With guidance from &lt;strong&gt;Abhinav Awasthi Sir and Aaksh Meruva Sir&lt;/strong&gt;, I developed a better understanding of how open-source communities operate.&lt;/p&gt;

&lt;p&gt;I learned how to explore repositories, understand project documentation, identify appropriate issues, communicate with maintainers, and follow the pull request workflow.&lt;/p&gt;

&lt;p&gt;Their guidance helped me connect what I already knew about development tools with the practical steps required to contribute to an existing project.&lt;/p&gt;

&lt;p&gt;I began exploring repositories independently, reading their code, and identifying issues that matched my current skills while giving me opportunities to learn something new.&lt;/p&gt;

&lt;p&gt;This changed my approach to learning software development. Instead of waiting until I felt completely prepared, I started working on real problems and learning from the process.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. My first merged pull request
&lt;/h2&gt;

&lt;p&gt;My first merged pull request was an important milestone because it gave me my first real experience of contributing to a project maintained by other developers.&lt;/p&gt;

&lt;p&gt;While exploring a repository, I found an issue I believed I could solve. I commented on it, received the assignment, and started working on the implementation.&lt;/p&gt;

&lt;p&gt;After submitting my pull request, I waited to see whether the maintainer would accept my changes.&lt;/p&gt;

&lt;p&gt;Since this was my first contribution, I was naturally uncertain about the outcome. I wanted to know whether my solution met the project's requirements and whether I had approached the problem correctly.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;My pull request was merged just one day later.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;That experience gave me the confidence to continue contributing.&lt;/p&gt;

&lt;p&gt;It showed me how an individual contribution, even a small one, could become part of a larger project. It also helped me understand the value of carefully reading an issue, working within an existing codebase, and following the project's contribution process.&lt;/p&gt;

&lt;p&gt;After that first merge, I started approaching open source differently. I became more willing to explore unfamiliar repositories, investigate problems, and learn through implementation and review.&lt;/p&gt;

&lt;p&gt;My first merged pull request did not make me an expert, but it gave me a reason to keep improving.&lt;/p&gt;

&lt;h2&gt;
  
  
  5. Building consistency across open-source projects
&lt;/h2&gt;

&lt;p&gt;Throughout July and August 2026, I continued contributing to open-source projects and became increasingly comfortable with collaborative development.&lt;/p&gt;

&lt;p&gt;Each repository introduced its own structure, conventions, and expectations. Understanding an unfamiliar codebase often required reading documentation, tracing existing implementations, investigating related files, and testing potential solutions.&lt;/p&gt;

&lt;p&gt;Not every issue was straightforward, and progress was not always immediate. Balancing contributions with my academic responsibilities also required planning and discipline.&lt;/p&gt;

&lt;p&gt;I continued working through these challenges, treating each issue as an opportunity to improve my understanding of software development.&lt;/p&gt;

&lt;p&gt;During this period, I maintained a &lt;strong&gt;35-day GitHub contribution streak&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;The streak reflected my effort to stay engaged with development consistently. Some contributions involved more investigation than implementation, while others required me to understand an existing feature before making a change.&lt;/p&gt;

&lt;p&gt;Over time, I became more comfortable navigating repositories, debugging code, following project conventions, and responding to feedback from maintainers.&lt;/p&gt;

&lt;p&gt;I also developed a better appreciation for code review. A pull request is not simply a submission; it is part of a collaborative process in which the solution can be examined, discussed, and improved.&lt;/p&gt;

&lt;p&gt;These experiences helped me develop a more systematic approach to solving problems.&lt;/p&gt;

&lt;h2&gt;
  
  
  6. ECSoC’26 results and achievements
&lt;/h2&gt;

&lt;p&gt;My efforts culminated in securing &lt;strong&gt;Rank 46 in ECSoC Elite Summer of Code 2026&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;The program had approximately 13,000 participants, including 822 active contributors.&lt;/p&gt;

&lt;p&gt;My achievements during the program were:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Metric&lt;/th&gt;
&lt;th&gt;Achievement&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Final ECSoC’26 rank&lt;/td&gt;
&lt;td&gt;46&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Approximate program participants&lt;/td&gt;
&lt;td&gt;13,000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Active contributors&lt;/td&gt;
&lt;td&gt;822&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Merged pull requests&lt;/td&gt;
&lt;td&gt;98&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Projects contributed to&lt;/td&gt;
&lt;td&gt;14&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;GitHub contribution streak&lt;/td&gt;
&lt;td&gt;35 days&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Each milestone represents a different part of my experience, from exploring repositories and understanding issues to submitting contributions and learning through code reviews.&lt;/p&gt;

&lt;p&gt;Securing Rank 46 is an achievement I am proud of, particularly because I began the journey with limited practical experience in open-source contribution workflows.&lt;/p&gt;

&lt;p&gt;The progress I made throughout the program strengthened my confidence in working with unfamiliar codebases and collaborating with developers outside my immediate academic environment.&lt;/p&gt;

&lt;p&gt;I see this ranking as a milestone in my development journey and a foundation for the work I want to do next.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Explore my ECSoC’26 journey:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://ecsoc-beta.vercel.app/profile/contributor/sumittiwari1302" rel="noopener noreferrer"&gt;My ECSoC’26 Contributor Profile&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://ecsoc-beta.vercel.app/leaderboard" rel="noopener noreferrer"&gt;ECSoC’26 Leaderboard&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://drive.google.com/drive/folders/1BrjenjPGwvervwY4SJfFsc-RynElW1W3?usp=sharing" rel="noopener noreferrer"&gt;Certificates and Supporting Documents&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  7. Recognition from PW IOI
&lt;/h2&gt;

&lt;p&gt;One of the highlights of this journey was having my achievement featured on the PW IOI Instagram page.&lt;/p&gt;

&lt;p&gt;For me, this recognition was an encouraging reminder of the value of practical learning and participation in open-source communities.&lt;/p&gt;

&lt;p&gt;As a student, I believe opportunities to work on real-world projects are an important part of developing engineering skills. Experiences like ECSoC’26 help students apply what they learn, understand collaborative development, and discover areas in which they want to grow.&lt;/p&gt;

&lt;p&gt;I appreciate PW IOI for encouraging students to pursue these opportunities and for supporting learning beyond the classroom.&lt;/p&gt;

&lt;p&gt;You can view the feature here:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://www.instagram.com/p/DfE_2I4k9qN/?img_index=1" rel="noopener noreferrer"&gt;View my ECSoC’26 feature on PW IOI's Instagram&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://www.pwioi.com/" rel="noopener noreferrer"&gt;Visit the official PW IOI website&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I hope sharing my experience encourages other students to explore open source and take their first steps towards contributing to projects.&lt;/p&gt;

&lt;h2&gt;
  
  
  8. What I learned from ECSoC’26
&lt;/h2&gt;

&lt;p&gt;The most valuable part of ECSoC’26 was the practical experience I gained throughout the program.&lt;/p&gt;

&lt;h3&gt;
  
  
  Understanding existing codebases
&lt;/h3&gt;

&lt;p&gt;Contributing to an established project requires understanding its structure and existing implementation before making changes. I learned to spend time investigating a problem rather than immediately jumping into the code.&lt;/p&gt;

&lt;h3&gt;
  
  
  Learning through code review
&lt;/h3&gt;

&lt;p&gt;Feedback from maintainers is an important part of collaborative development. Reviews help contributors understand project expectations and improve their solutions.&lt;/p&gt;

&lt;h3&gt;
  
  
  Staying consistent
&lt;/h3&gt;

&lt;p&gt;Maintaining a contribution streak taught me the value of regular effort. Progress can be gradual, especially when working on unfamiliar problems, but continued practice builds experience.&lt;/p&gt;

&lt;h3&gt;
  
  
  Communicating with maintainers
&lt;/h3&gt;

&lt;p&gt;Open-source development involves collaboration. Clear communication, thoughtful issue discussions, and following contribution guidelines help contributors work more effectively with project communities.&lt;/p&gt;

&lt;h3&gt;
  
  
  Becoming comfortable with unfamiliar problems
&lt;/h3&gt;

&lt;p&gt;Not every issue matches something you have already learned. I became more comfortable researching unfamiliar concepts, exploring existing implementations, and working towards a solution step by step.&lt;/p&gt;

&lt;p&gt;These lessons have influenced how I approach software development, and I intend to continue applying them to future projects.&lt;/p&gt;

&lt;h2&gt;
  
  
  9. Looking ahead
&lt;/h2&gt;

&lt;p&gt;As a second-year B.Tech Computer Science and Engineering student at PW IOI Pune, I want to build on the foundation I developed through ECSoC’26.&lt;/p&gt;

&lt;p&gt;My focus is on contributing to more open-source projects, taking on technically challenging issues, and strengthening my understanding of software engineering practices.&lt;/p&gt;

&lt;p&gt;I also want to continue learning from experienced developers and collaborating with communities that build and maintain useful software.&lt;/p&gt;

&lt;p&gt;Open source has given me a practical way to apply my knowledge, learn from feedback, and work on problems beyond the scope of my individual projects.&lt;/p&gt;

&lt;p&gt;I look forward to continuing this journey, building better software, and making meaningful contributions to the developer community.&lt;/p&gt;

&lt;h2&gt;
  
  
  Acknowledgements
&lt;/h2&gt;

&lt;p&gt;I would like to express my sincere gratitude to &lt;strong&gt;Abhinav Awasthi Sir and Aaksh Meruva Sir&lt;/strong&gt; for their guidance and for helping students understand the practical aspects of open-source development.&lt;/p&gt;

&lt;p&gt;I am also thankful to PW IOI for encouraging students to explore opportunities beyond the classroom.&lt;/p&gt;

&lt;p&gt;My appreciation goes to the ECSoC’26 community, the maintainers who reviewed my contributions, and the developers whose projects provided opportunities to learn and collaborate.&lt;/p&gt;

&lt;p&gt;Every issue I worked on and every review I received contributed to my growth throughout this experience.&lt;/p&gt;

&lt;h2&gt;
  
  
  Final thoughts
&lt;/h2&gt;

&lt;p&gt;When I first explored open source, I was still learning how to identify issues, work with unfamiliar repositories, and submit contributions that met project requirements.&lt;/p&gt;

&lt;p&gt;By the end of ECSoC’26, I had achieved 98 merged pull requests across 14 projects, maintained a 35-day GitHub contribution streak, and secured Rank 46.&lt;/p&gt;

&lt;p&gt;I am proud of these results, but I value the experience behind them just as much. The journey helped me become more confident in approaching unfamiliar problems and gave me a clearer understanding of collaborative software development.&lt;/p&gt;

&lt;p&gt;I am still learning, and there is much more I want to explore.&lt;/p&gt;

&lt;p&gt;If there is one lesson I would share with students considering open source, it is this: &lt;strong&gt;start with what you know, be willing to learn what you don't, and give yourself the opportunity to improve through practice.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;My ECSoC’26 journey is one milestone in a much longer path, and I look forward to what comes next.&lt;/p&gt;




&lt;h2&gt;
  
  
  Connect with me
&lt;/h2&gt;

&lt;p&gt;I enjoy connecting with developers, students, and open-source contributors who are interested in learning, building projects, and collaborating with the community.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;GitHub:&lt;/strong&gt; &lt;a href="https://github.com/sumittiwari1302" rel="noopener noreferrer"&gt;github.com/sumittiwari1302&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;LinkedIn:&lt;/strong&gt; &lt;a href="https://linkedin.com/in/sumit-tiwari-b18701380/" rel="noopener noreferrer"&gt;linkedin.com/in/sumit-tiwari-b18701380&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Instagram:&lt;/strong&gt; &lt;a href="https://www.instagram.com/sumittiwari8259/" rel="noopener noreferrer"&gt;@sumittiwari8259&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;ECSoC’26 Profile:&lt;/strong&gt; &lt;a href="https://ecsoc-beta.vercel.app/profile/contributor/sumittiwari1302" rel="noopener noreferrer"&gt;View my contributor profile&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Thank you for reading about my journey.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;#ECSoC26 #OpenSource #GitHub #SoftwareEngineering #PWIOI #StudentDeveloper #OpenSourceContribution&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>opensource</category>
      <category>github</category>
      <category>programming</category>
      <category>webdev</category>
    </item>
    <item>
      <title>From Zero to Production: How I Shipped Responsive UIs During My Frontend Internship</title>
      <dc:creator>Sumit Tiwari</dc:creator>
      <pubDate>Wed, 21 Oct 2026 12:16:20 +0000</pubDate>
      <link>https://dev.to/sumit_tiwari_85f93699c3a7/from-zero-to-production-how-i-shipped-responsive-uis-during-my-frontend-internship-4o3a</link>
      <guid>https://dev.to/sumit_tiwari_85f93699c3a7/from-zero-to-production-how-i-shipped-responsive-uis-during-my-frontend-internship-4o3a</guid>
      <description>&lt;p&gt;Through my entire first semester of BTech, I didn't really know what I was doing.&lt;/p&gt;

&lt;p&gt;I'm Sumit, a student at PW IOI, a new-generation college. Nobody around me had a clear picture of how the industry worked, and neither did I. It took me time to understand what companies expect from a developer and what I needed to learn to get there.&lt;/p&gt;

&lt;p&gt;A few months later, I was working in an 11-person team, reading product requirement documents, reporting in daily scrum calls, and building responsive UIs in HTML, CSS and JavaScript on two-week deadlines.&lt;/p&gt;

&lt;p&gt;This post is about how that happened, what the internship was like day to day, and what I learned that no tutorial taught me. If you're a student who feels behind or lost, I wrote it mainly for you.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why the first semester felt so confusing
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://www.pwioi.com/" rel="noopener noreferrer"&gt;PW IOI&lt;/a&gt; Pune is a new-generation college, so there isn’t a long line of seniors to guide you on what to learn, what to focus on, or what to avoid. During my first semester, I often felt unsure about how the tech industry worked, which skills I needed to develop, and where to start.&lt;/p&gt;

&lt;p&gt;I could follow lectures and finish assignments, but I couldn't answer basic questions: What does a developer actually do all day? How do teams build software together? What would a company expect me to know on day one? Without answers to those, it was hard to know what to practise.&lt;/p&gt;

&lt;p&gt;If you're a first-year student feeling the same way, that's normal. For me, the confusion didn't go away because I studied harder. It went away when I met someone who could show me the path.&lt;/p&gt;

&lt;h2&gt;
  
  
  The turning point: finding &lt;a href="https://pwleapx.com/" rel="noopener noreferrer"&gt;PW LeapX&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;In February, I heard about &lt;a href="https://pwleapx.com/" rel="noopener noreferrer"&gt;&lt;strong&gt;PW LeapX&lt;/strong&gt;&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;PW LeapX is a program associated with PW IOI where students work on real-world projects in teams. For me, that meant building real projects with mentor guidance, working alongside other interns, and learning how a development team actually operates.&lt;/p&gt;

&lt;p&gt;The hiring process hadn't started yet, so I used that gap to prepare properly instead of waiting. My interview was in mid-March, and I was selected as a &lt;strong&gt;frontend developer&lt;/strong&gt;. I'm grateful to the two people who guided me through this stage.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Lesson:&lt;/strong&gt; preparation before an opportunity opens counts. I wasn't ready in February, but I had a few weeks to get ready before the interviews started, and those weeks made the difference.&lt;/p&gt;

&lt;h2&gt;
  
  
  How the internship worked
&lt;/h2&gt;

&lt;p&gt;The internship began in &lt;strong&gt;May 2026&lt;/strong&gt; and ran for about three months. We worked under mentors, who guided us through the projects and the daily scrum calls.&lt;/p&gt;

&lt;p&gt;The structure looked like this:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Real-world projects.&lt;/strong&gt; We weren't given toy exercises. Each project came as a real brief.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The PRD comes first.&lt;/strong&gt; A product requirement document (PRD) was prepared for every project, and each intern (developer) had to read it before building.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Two weeks per project.&lt;/strong&gt; Each project had a two-week window, and we had to deliver properly within it.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;A team of 11.&lt;/strong&gt; Eleven interns worked on one project together, so coordination mattered as much as code.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Daily scrum at 4 PM.&lt;/strong&gt; Monday to Friday, we had a scrum call with our mentors.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Starting with the PRD
&lt;/h3&gt;

&lt;p&gt;A PRD describes what a product should do and who it's for. Documents like this usually cover the goal of the project, the features required, and what counts as done.&lt;/p&gt;

&lt;p&gt;Reading it properly before writing code sounds obvious, but it matters. When 11 people read the same document, everyone builds toward the same target. When someone skims it, you find out later, usually when two people's work doesn't fit together.&lt;/p&gt;

&lt;h3&gt;
  
  
  What happens in a scrum call
&lt;/h3&gt;

&lt;p&gt;A scrum is a short, regular check-in. In ours, each of us explained what we had done the day before. If we were stuck, the mentors guided us right there.&lt;/p&gt;

&lt;p&gt;This sounds simple, but it changed how I work:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You can't hide when you're stuck. You have to say it, and then you get unstuck faster.&lt;/li&gt;
&lt;li&gt;You learn to summarize your work clearly and briefly, instead of rambling about everything you touched.&lt;/li&gt;
&lt;li&gt;You learn how to report to seniors professionally, which isn't something you pick up from coding videos.&lt;/li&gt;
&lt;li&gt;You see how other people are approaching their parts, which shows you problems before you hit them.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  What we built
&lt;/h2&gt;

&lt;p&gt;Our stack was &lt;strong&gt;HTML, CSS and JavaScript&lt;/strong&gt;. Our team's GitHub organisation, LeapX-Pune, holds a set of public projects that gives a good picture of the kind of work we did:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A &lt;strong&gt;gym/club membership dashboard&lt;/strong&gt; designed to work on desktop, tablet and mobile.&lt;/li&gt;
&lt;li&gt;A &lt;strong&gt;product catalogue&lt;/strong&gt; with search, filters, a cart and a validated checkout form.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Event listing and registration platforms&lt;/strong&gt; with filtering, and an admin dashboard in one of them.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Kanban-style project management boards&lt;/strong&gt;, including a Trello-style one with drag-and-drop.&lt;/li&gt;
&lt;li&gt;A &lt;strong&gt;weather and news dashboard&lt;/strong&gt; with separate JavaScript modules for weather, news and UI.&lt;/li&gt;
&lt;li&gt;A &lt;strong&gt;student progress tracker.&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Looking at that list, the pattern is clear. These projects aren't about fancy tools. They're about UI interactions, state handling, form validation, filtering logic and layouts that hold up on different screen sizes. These are the fundamentals that most frontend work is built on.&lt;/p&gt;

&lt;p&gt;Working only in HTML, CSS and JavaScript also has a benefit. With no framework hiding the details, you see how the DOM, events and layout actually work, which makes frameworks easier to learn later.&lt;/p&gt;

&lt;h2&gt;
  
  
  Working in a team of 11
&lt;/h2&gt;

&lt;p&gt;When 11 people build one project in two weeks, a few things become obvious very quickly:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Everyone depends on everyone else's work.&lt;/li&gt;
&lt;li&gt;You need to communicate early, not when something is already broken.&lt;/li&gt;
&lt;li&gt;Your code is not just yours. Others have to read it, build on it, and merge with it.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is where Git and GitHub stopped being commands I had memorized and became a daily tool. I learned how teams actually use them, including raising pull requests (PRs) for our work.&lt;/p&gt;

&lt;h3&gt;
  
  
  What a pull request is for
&lt;/h3&gt;

&lt;p&gt;A pull request is a request to merge your branch into the shared code. It gives teammates a chance to look at your changes first, and it leaves a record of what changed and why.&lt;/p&gt;

&lt;p&gt;If you haven't used a team Git workflow yet, here is the generic shape of it. This is a common pattern, not a copy of our project's exact setup:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Get the latest code&lt;/span&gt;
git checkout main
git pull origin main

&lt;span class="c"&gt;# Work on your task in its own branch&lt;/span&gt;
git checkout &lt;span class="nt"&gt;-b&lt;/span&gt; feature/responsive-navbar

&lt;span class="c"&gt;# Commit your changes&lt;/span&gt;
git add &lt;span class="nb"&gt;.&lt;/span&gt;
git commit &lt;span class="nt"&gt;-m&lt;/span&gt; &lt;span class="s2"&gt;"Make navbar responsive for mobile and tablet"&lt;/span&gt;

&lt;span class="c"&gt;# Push the branch and open a pull request on GitHub&lt;/span&gt;
git push origin feature/responsive-navbar
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;A few habits make this work better in a big team:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Pull before you start.&lt;/strong&gt; Working on stale code is how you create problems for everyone else.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Keep branches small and focused.&lt;/strong&gt; One task per branch is easier to review and easier to undo.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Write clear commit messages.&lt;/strong&gt; "Fix navbar overflow on mobile" tells your teammates something. "Update" doesn't.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;With 11 people contributing to one codebase, merge conflicts are a normal part of the job, not a sign that someone did something wrong. Learning to read and resolve them calmly is a real skill.&lt;/p&gt;

&lt;h2&gt;
  
  
  Getting to responsive UIs
&lt;/h2&gt;

&lt;p&gt;I started this internship without professional frontend experience, and by the end I could build properly responsive UIs. That didn't come from one big breakthrough. It came from repeating the same cycle: read the PRD, build, get stuck, explain it in scrum, get guided, fix, and repeat.&lt;/p&gt;

&lt;p&gt;A responsive UI adapts to different screen sizes instead of breaking on them. Here are the building blocks, with generic examples to show each idea. None of this is code from our projects.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. The viewport meta tag
&lt;/h3&gt;

&lt;p&gt;Without this line in your HTML &lt;code&gt;&amp;lt;head&amp;gt;&lt;/code&gt;, mobile browsers pretend the page is a desktop-sized screen and shrink it, so your media queries won't behave as you expect:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;meta&lt;/span&gt; &lt;span class="na"&gt;name=&lt;/span&gt;&lt;span class="s"&gt;"viewport"&lt;/span&gt; &lt;span class="na"&gt;content=&lt;/span&gt;&lt;span class="s"&gt;"width=device-width, initial-scale=1"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  2. Media queries, mobile-first
&lt;/h3&gt;

&lt;p&gt;Start with the layout for small screens, then add rules as the screen grows:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="nc"&gt;.card-grid&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nl"&gt;display&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;grid&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="py"&gt;grid-template-columns&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="n"&gt;fr&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;   &lt;span class="c"&gt;/* single column on small screens */&lt;/span&gt;
  &lt;span class="py"&gt;gap&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;1rem&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="k"&gt;@media&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;min-width&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;768px&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nc"&gt;.card-grid&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="py"&gt;grid-template-columns&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;repeat&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="m"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="n"&gt;fr&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;  &lt;span class="c"&gt;/* two columns on tablets */&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="k"&gt;@media&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;min-width&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;1024px&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nc"&gt;.card-grid&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="py"&gt;grid-template-columns&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;repeat&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="m"&gt;3&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="n"&gt;fr&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;  &lt;span class="c"&gt;/* three columns on desktops */&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  3. Flexible layouts and units
&lt;/h3&gt;

&lt;p&gt;Fixed pixel widths are a common reason layouts break. Flexible containers and relative units adapt on their own:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="nc"&gt;.container&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nl"&gt;width&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;100%&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="nl"&gt;max-width&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;1100px&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="nl"&gt;margin&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;0&lt;/span&gt; &lt;span class="nb"&gt;auto&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="nl"&gt;padding&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;0&lt;/span&gt; &lt;span class="m"&gt;1rem&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="nt"&gt;img&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nl"&gt;max-width&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;100%&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="nl"&gt;height&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;auto&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  4. Test on real sizes
&lt;/h3&gt;

&lt;p&gt;Browser DevTools has a responsive mode that lets you resize the page to common phone and tablet widths. It's the quickest way to catch overflowing elements, text that's too small, and buttons that are hard to tap. Testing on a real phone is better still.&lt;/p&gt;

&lt;p&gt;The more important lesson is that responsiveness isn't something you add at the end. When you design for small screens first, you spend far less time fixing broken layouts later.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I learned beyond code
&lt;/h2&gt;

&lt;p&gt;Looking back, the technical skills were only part of it. This three-month internship was a life-turning point for me because of what else I picked up:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Team coordination:&lt;/strong&gt; how to work with a large team on one deliverable.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Talking to mentors:&lt;/strong&gt; how to ask for help clearly and at the right time.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Professional behaviour:&lt;/strong&gt; how to carry yourself in a work environment.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Reporting in scrum:&lt;/strong&gt; how to explain your progress to seniors.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Git and GitHub:&lt;/strong&gt; how real teams use them, including raising PRs.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If I had to pick the most useful one, it would be asking for help early. In a team on a two-week deadline, a problem you raise on day two is a small problem. The same problem raised on day twelve is an emergency.&lt;/p&gt;

&lt;h2&gt;
  
  
  The people who made it possible
&lt;/h2&gt;

&lt;p&gt;I didn't do this alone.&lt;/p&gt;

&lt;p&gt;My fellow interns helped me go from zero to building properly responsive UIs. Working with ten other people on the same project taught me more than working alone ever could.&lt;/p&gt;

&lt;p&gt;Thank you to all my mentors for the daily guidance, to the two people who pointed me in the right direction before the internship began, and to PW LeapX for the opportunity.&lt;/p&gt;

&lt;h2&gt;
  
  
  If you're where I was
&lt;/h2&gt;

&lt;p&gt;If you're a student who feels lost about the industry, here is what worked for me:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Find someone a few steps ahead of you.&lt;/strong&gt; One conversation with the right person saved me months.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Prepare before the opportunity opens.&lt;/strong&gt; Use the waiting time.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Choose project-based learning.&lt;/strong&gt; Building real things in a team teaches what courses can't.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Say when you're stuck.&lt;/strong&gt; The sooner you ask, the sooner you move.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Learn Git properly.&lt;/strong&gt; You will use it every day in a team.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Build with small screens in mind from day one.&lt;/strong&gt; It saves you from rewriting layouts later.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I started the year confused. Three months of real projects, daily scrums, and a lot of help from good people changed that.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>internship</category>
      <category>frontend</category>
      <category>javascript</category>
    </item>
  </channel>
</rss>
