Jeff Atkins recently asked himself why so many developers still use Microsoft SourceSafe. First of all, I use CVS - so I can’t say anything about SourceSafe, but lets assume that it is a product that barely gets its job done(but gets its job done).

I think that this doesnt have to do with other systems or with lazyness. The source of the problem is fear about the switching effort - but to understand that, lets look at a friend of mine who still uses a Palm m505. He recently added MP3 support to it by purchasing a small flash MP3 player, a dictatophone and so on - a used Tungsten T would have costed less than all the acceccoires together - but he didnt switch. The reason was fear of switching efforts - how do I get my old data over, how can I ensure all my apps still run, and so on.

Now, with SourceSafe beeing used in a team environment, switching is even more difficult. You need to get a new machine(ok, thats no problem), purchase licences for the new system(not cheap), retrain your employees(hell expensive, productivity losses) and need to calculate in some deadtime…all to get a system thats a “bit! better than the original.

Nobody with business in mind would ever do this. As long as the system works, why change it - it works and works and costs nothing except server power. And this is the problem:As long as crap works well enough, few will switch away from it. This is valid in almost all areas of technology - from electronics(LM741, anyone) to handhelds and mobile phones(BlackBerry, anyone)…and fighting this is one of the biggest challenges….

What do you think?