Tag Archives: Git

Linus about network of trust in software development (git)

Transcript of the last part:
“It is how we think.
We don’t know a hundred people. We have 5, 7, 10 close personal friends. Well, we are geeks, so we have 2.
But that’s basically how humans work that we have these people we really trust, it’s family, it’s close friends.
It really fits, you don’t even have to have a mental model, it fits how we are wired up.
So there are huge advantages on this model of networks of trust.”

Linus Torvald is convinced version control should be based on trust networks

Thanks to Jesse, I started exploring Git, a version control system alternative to CVS and SVN. Git is based on a very different metaphor. While in CVS/SVN there is one repository which is maintained in a single location, in Git there are as many repositories as users and all of them are maintained in a decentralized fashion, on all the machines of all the users. From centralization to decentralization, it is an interesting twist and change in perspective.
And so what about the risk of balkanization of code? And the fact that there are 10.000 (different) versions of the Linux kernel? Well, according to Linus, the answer is trust. Linus explains the metaphores behind git and the trust issues in an extremely interesting Google Talk.

From the talk of Linux (via Victor):

The way merging is done is the way real security is done, by a network of trust. if you have ever done any security work and it didn’t involve the concept of network of trust it was not a security work; it was a masturbation.
…we don’t know hundred people. We have five, seven, ten close personal friends…

This way of managing a software ecology is wonderfully adhocratic. There are now thousands different versions of the Linux kernel. Currently most of the people rely on Linus’ version but it is possible, in a perfect adhocratic way, that different people will rely on versions of different people. Go decentralized, go trust-based. Cool.