Skip to main content

Command Palette

Search for a command to run...

Shug’s Pendrive Disaster: Why Git Exists

how shug lost everything and blamed everyone

Updated
3 min read
Shug’s Pendrive Disaster: Why Git Exists
S

Frontend React Developer experimenting technology in a creative way👨🏻‍💻✨ | Aspiring Entreprenuer👨🏻‍💼📈

the year: 2018

shug is final year student.

project deadline: 2 days

team size: 4 people

version control knowledge: 0

how it started

shug writes beautiful code.

200 lines of pure genius.

works perfectly.

shug saves on pendrive 💾

gives to teammate raj.

"add your part bro"

6 hours later

raj returns pendrive.

shug plugs in.

opens project.

everything is broken.

shug's 200 lines: gone.

raj's code: partially there.

nobody knows what happened.

the investigation 🔍

shug: "bro what did you do?"

raj: "i just edited some files"

shug: "which files?"

raj: "i don't remember"

shug: "where is my code?"

raj: "i thought you had backup"

shug: 💀

attempts to recover

shug tries everything:

  • check pendrive history (doesn't exist)

  • ask raj to remember changes (he doesn't)

  • restore old version (there is none)

  • cry (very effective)

deadline: tomorrow morning.

shug rewrites 200 lines from memory.

takes 8 hours.

graduates with trauma.

the pattern shug notices

this wasn't first time.

there were other incidents.

incident 1: email attachments

  • shug emails code to priya

  • priya edits, emails back

  • shug makes more changes

  • both versions exist

  • which one is correct? nobody knows

incident 2: whatsapp code sharing

  • copy paste code in chat

  • loses formatting

  • loses context

  • loses sanity

incident 3: folders

  • project_final

  • project_final_v2

  • project_final_v2_actually_final

  • project_final_v2_actually_final_USE_THIS_ONE

chaos.

the core problem

humans have terrible memory.

files overwrite each other.

history disappears.

questions nobody can answer:

  • what changed?

  • who changed it?

  • when did it change?

  • why did it change?

  • how to go back?

what shug needed

shug didn't know it yet, but needed:

  • automatic memory

  • complete history

  • ability to rollback

  • blame tracking (for raj 😤)

  • parallel work without collision

basically:

a time machine for code

senior developer uncle appears

college tech fest.

shug meets senior developer uncle.

tells whole pendrive story.

uncle laughs.

"beta, use git"

shug: "what is git?"

uncle: "version control system. remembers everything."

shug: "everything?"

uncle: "everything. even what raj deleted."

shug's eyes light up ✨

what is version control?

version control = system that remembers every version of your code.

not manually.
not in your brain.
automatically.

like save points in video game.

mess up? go back to last save point.

want to see what changed? compare save points.

the promise

with version control:

  • no more lost code

  • no more "who changed this?"

  • no more "when did this break?"

  • no more crying before deadline

collaboration becomes possible.

history becomes permanent.

mistakes become reversible.

shug makes decision

"uncle, teach me git"

uncle: "youtube pe dekh lo"

shug: 😐

what shug learns (preview)

over next few weeks, shug discovers:

  • git tracks changes automatically

  • git stores complete history

  • git lets multiple people work safely

  • git lives on your computer

  • github stores it online

but first…

shug needs to understand
what git actually does.

🎬 continue to episode 2