Skip to main content

Command Palette

Search for a command to run...

Problems Faced Before Version Control Systems

Updated
3 min read
Problems Faced Before Version Control Systems

It's okay to have bugs in code, but it’s not okay to fail to deliver products on time. Especially when the company burns lakhs for the developers.

What was the problem previously? Let's look at the Pendrive Era.

Why We Stopped Using Pendrives ?

Imagine we start a new project. It's assigned to a team of 3 developers, and the company is paying them $50/hour each.

They discuss the architecture. They even give it an internal name Project Monkey.

  1. Dev-1 starts working on the landing page. He completes it roughly in an hour.

  2. To let the other 2 devs review the code, he makes a first_v1.zip folder and shifts the zip folder into the pendrive.

  3. Finally, they get to read the code from the pendrive and copy the zip folder to work further on top of that.

The Cost

While the first dev was writing code, the other 2 devs were waiting for the pendrive.

The company is burning $100/hour for zero output.

This Inactive time kills the delivery time of the project.

After an hour, they share the pendrive again.

  • Third dev passed the pendrive to First dev.

  • First dev was confused: "Bro, you coded a lot, but what changed?"

  • First dev passed the pendrive to Second dev.

  • Second dev was again confused: "Guys there’s lots of code, which code is written by whom?"


Issue #1: Tracking & Accountability

Dev: "Who wrote this bug?"
Manager: "How should I pay them? I don’t know who contributed and how."

🛑 Impact: Wasted Salaries, We are paying for work we can't track.


Issue #2: Collaboration and Time

This is the Serial vs Parallel problem.

Dev: "If someone fixed an error, I need to wait for the updated code so I can code further!"
Manager: "Why is only one dev working at a time?"

🛑 Impact: Delivery Time & Code Quality.

By chance, if they started working parallelly, they are still out of sync! If we have 5 or 10 devs in a team, think about the amount of time they will take just to share code.


Issue #3: Versioning and Backups

While sharing, everyone is creating an "updated zip folder." It is hard to know which is the correct and newer version.

Dev: "An error occurred! I need the old version... but where is it?"
Manager: "There is no recovery and no backups?"

🛑 Impact: High Risk. One corrupted pendrive kills the project.


What’s the solution?

We realized we can't scale with pendrives. We need a system that can:

  1. Track every line: When was it updated? Who updated it?

  2. Enable Parallel Work: Allow everyone to see updated code every second.

  3. Auto-Backup: Save history by tracking every single update.

We needed a way to let 100 developers work on the same project at the exact same second, without costing the company a lot in money and time.

That system is Git.

Next Article: What actually is Git?

More from this blog

T

The Engineering Log

18 posts

Documenting the journey from bits to architecture. A technical archive exploring internals, engineering, infrastructure, and the systems that power modern software. Written by Mayur Badgujar.