To me the beauty of git stems from the fact that it is an implementation of a functional data structure. It‘s a tree index that is read-only, and updating it involves creating a complete copy of the tree and giving it a new name. Then the only challenge is to make that copy as cheap as possible - for which the tree lends itself, as only the nodes on the path to the root need to get updated. As a result, you get lock-free transactions (branches) and minimal overhead. And through git‘s pointer-to-parent commit you get full lineage.
It is so beautiful in fact that when I think about systems that need to maintain long-running state in concurrent environments, my first reaction is ”split up the state into files, and maintain it through git(hub)“.
I think it's kind of weird that they left out any mention of BitKeeper in this article.<p>The whole impetus for git (someone correct me if I'm wrong):<p>1. Linux source was hosted on BitKeeper before git. It basically was one of the first distributed source control systems (or the first? not sure if anything predated it).<p>2. Linux devs got into conflict with the BitKeeper owner over open-sourcing and reverse engineering, so Linus realized they needed a new system because no other source control system had the features they needed like BitKeeper had (mainly, I understand, the distributed repos).<p>So basically, Linux is to Unix like git is to BitKeeper (roughly).
Even if he hadn’t conceived of Git, I can hardly see him going down in the history books as a “one hit wonder”. Maybe if he’d just conceived and programmed the early Linux kernels... but aside from Git, the work he’s put into architecting Linux and managing the enormous effort that goes into “managing the mainitainers” is simply breathtaking.<p>And I, for one, have not forgotten the rather impressive work he did at Transmeta.<p>And for the sake of not making this sound like hero worship, I still side with Tanenbaum when it comes to the monolithic kernel vs. micro-kernel debate...<p>EDIT: corrected nonsensical double mention of ‘microkernel’.
> In an impressively candid moment of self-reflection, Torvalds said the impetus behind Git was to prove to himself that he wasn't just a "one-hit wonder." "We all have self-doubts," he suggested. "Linux was 'just' a re-implementation of Unix. Git proved I could be more than a one-hit wonder."<p>Wow! Even Linus has some form of 'impostor syndrome' and self-doubt after all the technical achievements.
No. Git did not prove that Linus could more more than a one-hit wonder. It proved halo effect is real.<p>Mercurial had a better interface and early on was equal or better (as far as I know) for most things. Everyone went with Git because Linus made it. I think it also might have been faster for huge code bases... but that pretty much only affects the kernel team and a handful of others. Your standard CRUD app could easily use a slower VCS without noticing.<p>Instead of going on merits, everyone just followed Linus. Which is what always happens in technology communities. Everyone just does whatever some guy at the front is doing.
We all know that subsurface [0] proved that (although made after git) as well as shows his naming skills are getting way better.<p>[0] <a href="https://en.wikipedia.org/wiki/Subsurface_(software)" rel="nofollow">https://en.wikipedia.org/wiki/Subsurface_(software)</a>
Great candor in Linus’ comment on not wanting to feel like a one hit wonder. I downloaded Linux on a 2400 baud modem, way back then. A big fan.<p>I was unhappy to see Linus looking over weight and out of shape in that picture. I am 68 so I understand getting old, but I consider Linus to be a ‘world resource’ and I wish him well, health wise. His wife used to be a karate champion so he at least has an exercise expert at home.
Even Linus suffers from imposter syndrome? Never would have thought. If Linux was a "one-hit wonder" it's been topping the charts for decades...
I feel like Junio Hamano's name should be more attached to git than it is. He's been in charge of the project for most of its life but doesn't even get mentioned in articles like these.
Nothing more than linux is needed to prove the success of Linus Torvalds.<p>If your first hit is sufficiently large you never need another.<p>It's different in founding startups..., once you're lucky, twice you're good.
I doubt Git would be popular without GitHub. Had the GH founders instead been more familiar with Mercurial, we would all be using the latter. Having used both extensively, I think we would all be better off in that alternate history, but such is life.
> The world rightly lauds Linus Torvalds for Linux, but Git will arguably have a bigger impact.<p>That's a pretty bold statement. Git might be almost ubiquitous these days, but if you erased git from the world, the ripples would be much less due to the plethora of alternatives out there. There's no reason to think that things like Github wouldn't have evolved with alternative VCSs. Don't get me wrong, it's a great tool and improves the QoL of developers, but it's hard to think about any dev not being able to do their job without it.
If not for the BitKeeper drama, we wouldn't have Git.
Same for Hurd, if GNU had a kernel back then, we wouldn't have Linux.<p>What else could we take away from Trovalds in order to push him to his next project? :)
Both Linux and Git look like obvious solutions that anyone could have come up with. That's what makes a discovery or a product great. That's why I think Linus is simply a genius.
Linus also wrote a successful Scuba dive logging and planning tool called Subsurface (<a href="https://subsurface-divelog.org/" rel="nofollow">https://subsurface-divelog.org/</a>) that has a cross platform desktop edition and mobile editions. Like git, he started it as a way to scratch his own itch, and now it's mostly supported by the community.<p>It has support for most dive computers and does full technical dive planning with mixed gasses.
I saw a talk in 2010 by Mark Dominus (who sometimes comments here) titled "Linus Torvald's Greatest Invention". It was about git! It was a fun talk. Here is a link if anyone is interested: <a href="https://blog.plover.com/misc/git-talk.html" rel="nofollow">https://blog.plover.com/misc/git-talk.html</a>
Lol @ that title. If the "only" thing to my name was the Linux kernel and the skills to make that happen and the quality that it is... I would consider myself an elite programmer.
Source control was simply painful before git. I remember desperately trying to get Subversion to compile and work way back in the days, because even though it was barely limping along it still looked like a way out of the hell that is proprietary, corporate source control.<p>I then went on to use subversion for a long time in different settings. Up until the day I finally tried git. This is not about centralized vs. distributed, it's simply superior software, period. Nothing else I've tried even comes close.
It's important to note however that the main reason why Git became mainstream is because of GitHub.<p>And GitHub chose Git because of two reasons:<p>1. It was affiliated with Linus Torvalds.<p>2. It had a catchy name.<p>As far as I remember Mercurial had a much better UX.<p>Compared to Mercurial, Git is over-complicated and a lot of the commands don't make sense (e.g. 'git checkout -b mybranchname' to make a new branch WTF?). In a way, it shows how superficial we are as a society; even among software developers.
This is admittedly more along the lines of fever-dream thinking, but I've thought more than once how it would be interesting to have a programming language that actually encodes the "Why" as well as the what/how. Complete with type safety, like maybe you'd have to ensure that your various business reasons for encoding a particular function are still true, and otherwise it wouldn't compile.
I put Linus (with Linux and Git) way up at the top of the spectrum. Maybe Pike, Thompson and Ritchie are at this level.<p>A bit lower are other multi-hit inventors. Gavin King, inventor or Hibernate and Seam, is in this list.<p>Everybody else comes third. It's great to invent something useful. (A singleton.) As a software maintenance engineer, I recognize great maintenance engineers in this category, too.<p>I am deeply impressed by Torvalds. Git and Linux are huge.
Yeah, Linus is up among the greats. Linux and Git are huge.<p>Pike, Thompson and Ritchie are in the same league. Not many others, maybe none.<p>A level below that, people like Gavin King. He invented Hibernate and Seam, not too shabby. (But not like Linux.)<p>A level below that, the rest of us mortals. I know quite a few one-hit authors (they're good) and some maintenance wizard, but it's nothing like inventing multiple super-hits. Hats off to Linus.
(Kneejerk reaction to this headline) I feel like >90% people are zero-hit wonders by this kind of standard. Maybe we have a good career, a good family, good friendships, travel to a lot of places, or whatever other interests we pursue. but how many of us are going to write much-loved software that is in wide use for decades?
Great subject: I bet that 95% of successful people are one hit wonders. I mean, they got once lucky and can live of the capital of their one hit wonder but can't repeat this a second time.<p>Hence, don't respect/admire such people too much, they are the same avg frustrated chump from time to time like you are. With as many worries.
Yes, I always wondered about the database technology that I heard Linus talk about around the time Git came out. It's probably another area where someone with a visionary view of how software should work would lead to something quite useful.
It's funny but I've recently been thinking of him as "The Git guy" rather than "The Linux Guy".<p>I honestly think that Git has the potential to be relevant a lot longer than Linux.
linus looks more tux every year XD<p>i once had a job at a state agency that was conservative enough to use CVS and subversion, so i got to see what the bad old days were like. i'm so glad git exists.<p>“I’m an egotistical bastard, and I name all my projects after myself. First ‘Linux’, now ‘Git’” --<a href="https://websetnet.net/microsoft-now-using-linus-torvalds-open-source-tool-windows-development/" rel="nofollow">https://websetnet.net/microsoft-now-using-linus-torvalds-ope...</a>
esr described Linus's approach as "essentially simplifying" years before git... but that's exactly what git is (apart from the UI but we don't like to talk about that). <a href="http://www.catb.org/~esr/writings/cathedral-bazaar/cathedral-bazaar/ar01s04.html" rel="nofollow">http://www.catb.org/~esr/writings/cathedral-bazaar/cathedral...</a>
I always wonder why open source kind of petered out. When it was all the rage I imagined it taking over other industries. Even moving out of just software.
git certainly works and is a great technical achievement, but really Mr Torvalds should give thanks to Github for making git as popular as it has become-- it's not entirely his "hit".