
Ask HN: What are some really strong reasons for using a version control system? - shradha408
I recently started working for a manufacturing company with a very small team of developers.<p>The team does not user version control and it&#x27;s appalling to me. They either maintain the versions in their local machine or on a server.<p>I have been talking to my manager and trying to convince him to start using one.<p>What are some really strong reasons can I give him so that he realizes that we can&#x27;t do without a version control.
======
brudgers
The facts on the ground are that this particular workspace is doing well
enough to write checks that do not bounce without a version control system.

Changing workflows and training employees comes with capital costs and
business risks. Not using a version control is not a moral failing. It is a
business decision. My advice is to understand why it is a business decision
and what went into making it and not assume that immediately implementing
version control is a local optimization let alone a global optimization for
the business.

To put it another way, if the need for version control at this particular time
in this particular context was obvious, there would be no need to ask the
internet for arguments. The important argument would be to point to actual
problems easily solved by version control that seriously and actually effect
the business. Keep in mind that lots and lots of software has been and still
is produced without version control.

None of which means I don't like version control and don't use it for my own
projects and would not recommend it if someone asked my opinion (and probably
would recommend it even if they did not since that's just my idiom). What it
does mean is that walking into an ongoing business as a new employee and
telling everyone that they don't know what the fk they're doing encourages
people to take sides. Looking to win the argument over version control means
looking to make other people lose the argument and that means people will
disagree just on the basis of winning and losing.

Anyway, my random advice from the internet is to start using version control
in ways that help you do your job without requiring anyone else to use it or
deal with it. If people see it makes your life easier and does not impose on
them at all, they'll naturally be curious if it will make their own life
easier.

It will take time and might not work at all. At the very least you won't be
telling you're _teammates_ that they're wrong and save all the time that would
be spent arguing. At best, you'll show them the advantages version control
since might solve of the problems that version control can solve...but again,
use version control in a way that does not create problems for anyone else and
that means significant, effort and discipline and empathy on your part. All of
which is harder than making arguments.

Good luck.

~~~
shradha408
It makes a lot of sense. Thanks! I was talking to a friend about it and even
he suggested the same. I'm going to start using a version control myself and
see where it leads me.

------
JoshTriplett
Backups. Reverting to old versions, such as when you observe an issue with the
new version. Keeping a log of changes.

However, note that some physical manufacturing processes involve inscrutable
binary files such as CAD files; you should still keep those in version
control, but in the absence of specific support, you'll get slightly less
value out of it (since you don't have diffs).

I have seen, however, a CAD diff view, which lets you move a slider to switch
between old and new.

------
acemarke
Uh.... everything. Backups, history, knowing who made certain changes, being
able to see the context for a change via commit messages, (hopefully) having
commits associated with a task ID, being able to see _what_ changed and
when...

------
tenken
An audit trail.

