Ben Collins-Sussman doesn't "get" distributed version control
Subversion developer Ben Collins-Sussman has just posted this piece of flamebait packed with emotionally-loaded mischaracterizations of people who use distributed version control systems like Git.
Distributed Version Control Systems (DVCS) are all the range (sic) among the alpha-geeks. They’re thrilled with tools like git … Many of these early adopters … are just obnoxious fanboys who love DVCS because it’s new and shiny.
I had trouble skimming past all the inflammatory language – "to all the DVCS fanatics out there", "the fanatical evangelists of DVCS" – and the demonstrably false characterizations (at least in the case of Git) – "I’m aware that I’m criticizing DVCSes which are (barely) 1.0 technologies" – but I was able to will myself to read at least as far as this section:
DVCS … encourages anti-social behavior … In a nutshell: with a centralized system, people are forced to collaborate and review each other’s work; in a decentralized system, the default behavior is for each developer to privately fork the project. They have to put in some extra effort to share code and organize themselves into some sort of collaborative structure. Yes, I’m aware that a DVCS is able to emulate a centralized system; but defaults matter. The default action is to fork, not to collaborate! This encourages people to crawl into caves and write huge new features, then "dump" these code-bombs on their peers, at which point the code is unreviewable.
What a load of garbage. It’s an argument so misguided, so flawed, that you’d need pages just to begin exploring its wrongness. In that paragraph alone, Collins-Sussman shows his total ignorance of distributed version control. He needs to subscribe to the Git mailing list and see what collaborative development using distributed version control really looks like.
Subversion’s great for dumb people, says Collins-Sussman. Well, looks like he fits right in.