The New Breed of Version Control Systems
Subject:   Familiarity Wins the Day
Date:   2004-02-02 06:13:16
From:   russfink
For many projects, version control software is viewed as "overhead." The bottom line is "the bottom line:" large projects will save money by using something that is popular, which in turn requires less re/training of staff, results in more familiarity with industry standards, and generally gets the job done with the least amount of fuss. Since money is core to the project, and no contract I'm aware of ever paid anyone per checkin, projects will go with what works. For about 90% of the industry, it's CVS.

Counterexample in point - a spacecraft control center project I worked on years ago was using a large, very expensive commercial version control system. The approximately 100 developers were having such difficulties with getting versioning to work and got so wrapped up in build environment issues that the project manager declared a halt of development and decreed a "Makefile Day." The festivities of Makefile Day had a core of 5 top-notch developers visit every development subgroup to help fix their makefiles to work with the versioning system. The cost to correct these problems was 100 developer days (Apologies to Frederick Brooks.)

If you are a new software developer and either work in the industry, or are looking to get into the industry, you are well advised to learn CVS. To the more seasoned developers thinking of changing to different control systems, I ask this: when have you gotten around to learning emacs so you can stop using VI? What's that, no time to relearn, what you're using works fine already? What about your neighbor? Precisely my point.

I have to agree with the first post - the "Troll" points out that the author recommends against CVS, but neither adequately supports that assertion, nor provides a recommended alternative.

Remember, for large projects, you have to use what the project is using. For managers, you must use what a bulk of your developers are familiar with, or what a bulk of your soon-to-be-hired developers are likely to be familiar with, or incur high overhead costs. For small projects, it doesn't much matter, but realize that any VCS is better than no VCS.

Full Threads Oldest First

Showing messages 1 through 1 of 1.

  • Re: Familiarity Wins the Day
    2004-02-02 07:33:01  shlomif [View]

    Here, I disagree. Using a sub-standard version control system (or any such development tool, for that matter) will cost a development team a lot of lost time, money and frustration. Teaching workers to use something else takes a constant time, and afterwards everything works faster, they feel less frustrated, and you save more money. CVS is a sub-standard version control system, and most of the other VCSes I mentioned tried to be as similar to it as possible, so people can still use the old conceptual model, and retain some of their habits.

    The Joel Test:

    Does not say that you should use the best tools money can buy for nothing.

    What you are saying is actually perpetuating the Status Quo, claiming that developers cannot effectively be retrained and shouldn't. Developers are smart people - they can always be retrained. People have switched from SCCS to RCS to CVS and there's no reason there wouldn't be a future switch to Subversion or whatever. (and I am almost sure there will be). They also switched from sh to csh to tcsh to bash, and from troff to latex.

    The world is dynamic and should be - get used to it.