Single User Source Control

Eric Sink has written up a few reasons for using source code control in a “team of one”. But something he wrote bothered me. He stated more than once that “for a solo developer, source control actually isn't all that compelling”. But I think it is just as compelling as for a team of 1 as it is for 100. It is just easier to implement.

I've been working on a commercial software package for the last 8 years. I've also been the only full-time developer in the company over that same period. The product (shameless plug) is quite large are covers a vast number of business processes. And if it wasn't for good source code control, I would never have been able to do my job.

Julia Lerman pointed out to Eric, “source control is usually explained as a way of keeping developers from stepping on each others' toes”.  But the truth is that your own toes are much closer to each other than your neighboring developer's. I've done more damage to my own code than anyone else ever could. The simple fact is that as the only developer on the project, I have that much more going on in my head. This leads to a lot more mental errors over the life of a project. And source control protects me from myself as much as it does from others.

To be clear, I don't disagree with Eric's reasons for single user source control (he nailed them all I think). I just feel they substantially more compelling that he (and many others) seem to. As I see it, if you are working on commercial software and not using source code control then you are taking a very unnecessary risk.


  • I currently use Source control for 'team of one' projects as well as for larger multi-developer projects, the most useful aspect of this for my own use is that I can work on projects from home as well as at work using a single codebase. Using SourceOffsite makes this pretty painless over a VPN (also works using encryption over the internet). What it means is that I can access our source code repository from wherever I happen to be at any time...

  • I absolutely agree. If I had a penny for everytime I did something ridiculously stupid to my own code I would be a rich man :) Hmm...maybe I should start collecting from myself?!?

Comments have been disabled for this content.