
Linus Torvalds: Git proved I could be more than a one-hit wonder - DarkCrusader2
https://www.techrepublic.com/article/linus-torvalds-git-proved-i-could-be-more-than-a-one-hit-wonder/
======
cmarschner
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)“.

~~~
combatentropy
". . . unlike every single horror I've ever witnessed when looking closer at
SCM products, git actually has a simple design, with stable and reasonably
well-documented data structures. In fact, I'm a huge proponent of designing
your code around the data, rather than the other way around, and I think it's
one of the reasons git has been fairly successful. . . .

"I will, in fact, claim that the difference between a bad programmer and a
good one is whether he considers his code or his data structures more
important. Bad programmers worry about the code. Good programmers worry about
data structures and their relationships."

\--- Linus Torvalds,
[https://lwn.net/Articles/193245/](https://lwn.net/Articles/193245/)

~~~
gimboland
That last comment is absolutely golden. Once upon a time I had the privilege
to spend a few years working in Swansea University's compsci department, which
punches above its weight in theoretical computer science. One of the moments
that made me the programmer I am today (whatever that's worth) came when I was
meeting with the head of the department to discuss a book he was writing, and
while we were discussing this very point of data vs code, I said to him,
realising the importance of choosing the right structure, "so the data is
central to the subject" (meaning computer science in general" — to which he
replied emphathically that "the data _IS_ the subject". That was a lightbulb
moment for me. From then on I saw computer science as the study of how data is
represented, and how those representations are transformed and transported —
that's _it_ , that basically covers everything. It's served me well.

~~~
abtinf
I think part of the confusion stems from the word “computer” itself. Ted
Nelson makes the point that the word is an accident of history, arising
because main funding came from large military computation projects.

But computers don’t “compute”, they don’t do math. Computers are simplifying,
integrating machines that manipulate symbols.

Data (and its relationships) is the essential concept in the term “symbolic
manipulator”.

Code (ie a function) is the essential concept in the term “compute”.

~~~
Jare
In Spanish the preferred name is "ordenador" which would translate to
something like "sorter" or "organizer machine".

~~~
andredz
That's in Spain. In American Spanish _computador /a_ is most often used:
[http://lema.rae.es/dpd/srv/search?key=computador](http://lema.rae.es/dpd/srv/search?key=computador)

There is also _informática_ / _computación_ ; both Spanish words to refer to
the same thing but used in Spain/America.

I guess that literally they'd be something like IT and CS.

~~~
Jare
Good points from both, indeed it's a country thing not a language thing. My
bad!

------
hn_throwaway_99
I think it's kind of weird that they left out any mention of BitKeeper in this
article.

The whole impetus for git (someone correct me if I'm wrong):

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).

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).

So basically, Linux is to Unix like git is to BitKeeper (roughly).

~~~
twic
Mercurial was also spawned from the BitKeeper drama:

[https://lkml.org/lkml/2005/4/20/45](https://lkml.org/lkml/2005/4/20/45)

~~~
mkj
And no-one's yet mentioned Monotone, Graydon's project a bit before Rust. My
English Literature teacher was right, Nothing Is Written In A Vacuum.

~~~
twic
Right, there was a golden age of interesting DVCSs around then - Darcs (2003),
Monotone (2003), Bazaar (2005), Git (2005), Mercurial (2005), Fossil (2006).

I use Arch (2006) btw.

~~~
papln
It shows how important having a big name behind a project is. Linux gave Git
its momentum.

~~~
stevefolta
It's not just the big name -- Linus learned from the mistakes of the older
DVCSs. I also used to use Arch a bit. Git was a vast improvement (eg. it
didn't force you to use long ugly branch names).

------
empath75
He’s probably responsible for more wealth creation than anybody in the last
hundred years just from those two projects.

~~~
wbl
Linux in part won because the Regents were getting sued at a critical time.
Without linux we would run BSD and it would be fine.

Git is good in some ways, terrible in others. I've used it for years and still
don't feel really comfortable with it, but I've never had something as
multiheaded as the linux repo.

~~~
CydeWeys
It's a shame how poor the command-line usability of the git client is.
Commands are poorly named and often do the wrong thing. It's really hard to
explain to new users why you need to run `git checkout HEAD *` instead of `git
reset` as you'd expect, why `git branch [branchname]` just switches to a
branch whereas `git checkout -b [branchname]` actually creates it, etc.

I really wish he'd collaborated with some more people in the early stages of
writing git to come up with an interface that makes sense, because everyone is
constantly paying the cost of those decisions, especially new git learners.

~~~
adrianN
The git storage structure is not that difficult. People could implement their
own compatible clients on top of it with a quite different UI. That there is
nothing that overtook git as UI in popularity seems to be an indication that
the interface is not as bad as many people claim.

~~~
CydeWeys
People have added better UIs on top of git. The problem is they don't come
installed by default out of the box, and unless everyone else you work with is
using them too it becomes quite hard for you to communicate properly over git
issues (especially in writing development workflow docs). hg has a better UI
out of the box, and is notably easier for new users to pick up and become
productive with.

You're underestimating how much inertia is created simply by being the out-of-
the-box default, and how hard that inertia is to overcome even by better
alternatives.

------
bhaak
I would disagree that Linux is a one hit wonder.

Years of successful project management are many small hits, not just one big
hit.

~~~
mschaef
Agreed... it's easy to envision scenarios where Linux would have fallen off
completely back in the 90's. (After all, Linus' original goals were 'better
than Minix' and 'learn about the 80386').

------
qubex
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.

And I, for one, have not forgotten the rather impressive work he did at
Transmeta.

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...

EDIT: corrected nonsensical double mention of ‘microkernel’.

~~~
panpanna
> And I, for one, have not forgotten the rather impressive work he did at
> Transmeta.

Not sure why this is always overlooked.

The real-time code translation approach where you have a cisc front end but
the code executs on a risc core was immediately copied by Intel (and sued for
that). Without that technology we would still be doing 200 mhz at 200 watt.

~~~
earthscienceman
Can you explain in more detail what you mean? I literally know nothing about
this

~~~
panpanna
Back then Intel was stuck with a classic CISC architecture that did not scale
well.

What transmeta did was to keep the x86 instruction set (CISC) but internally
convert them to a simpler RISC-ish instruction set and run it in a much
simpler and power effective RISC core.

Intel copied this idea which allowed P4 (maybe already PIII?) to make a giant
performance leap. Nowadays all high performance CISC CPUs from AMD and Intel
do this.

------
umbs
> 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."

Wow! Even Linus has some form of 'impostor syndrome' and self-doubt after all
the technical achievements.

------
Keyframe
Not to take away from git, but would git be as successful if it wasn’t made by
him? Mercurial did come out around the same time, no?

~~~
notacoward
Mercurial, darcs, monotone, others. It was a popular area for a while. I think
it's less about Linus _wrote_ it than Linus _used_ it (for the Linux kernel)
though. If somebody else had written it and he'd used it, the outcome would
have been the same.

~~~
gwd
> If somebody else had written it and he'd used it, the outcome would have
> been the same.

IIRC, the mercurial project had already started when Linus started working on
Git. (In fact, very early versions of Xen used BitKeeper, following suit with
Linux; when the license changed, Xen moved over to mercurial because git
wasn't ready yet, and stuck with it for a number of years.)

The main reason Linus wasn't happy with mercurial was the performance -- Linux
just has _far far_ more commits and files to deal with than nearly any other
project on the planet, and even at the time, operations in mercurial took just
a bit too long for Linus.

~~~
notacoward
> Linux just has far far more commits and files to deal with

Not really. I work with Mercurial every day, in a FAANG company's monorepo
which is many _many_ times the size of the Linux kernel. It's not always
pleasant, but it's not clear git would be any better. Mercurial's performance
issues are solvable, _have_ been solved to a large degree, but IIRC when git
started that was not the case. It's a shame really. The fragmentation is
annoying sometimes, even if it's the result of historical accident rather than
any bad decisions made at any particular moment in time.

~~~
tomlu
Don't you guys (which is definitely Facebook) use some sort of extensions that
makes it not the same as a vanilla Mercurial repository?

------
jw14
No. Git did not prove that Linus could more more than a one-hit wonder. It
proved halo effect is real.

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.

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.

~~~
scrollaway
I was there when the winner was still unclear and this is complete nonsense.
Very few people even knew git was from Torvalds.

Git started winning people over because mercurial was atrociously slow. The
real nail in the coffin was GitHub which truly was revolutionary. Nothing else
really played a part.

~~~
fierarul
I don't remember it this way at all. Git always had the halo of the tool
kernel devs use, written by Linus himself. There was no escaping this.

Mercurial slowness was never a problem for me, and these were the times before
SSD! It probably was slower but I used it on some pretty large codebases
(NetBeans) and it was fine.

BitBucket was much better for me than GitHub because it offered free private
repositories with 5 users, which just happens to be enough for a small
team/company/startup.

Sun Microsystems picked Mercurial for OpenJDK/NetBeans/etc, Mozilla was on
Mercurial.

I'm still puzzled how Git won because in my bubble it was a tool with much
worse commands and 'metaphors' compared to Mercurial.

I think it's a big loss for the industry that we are all (me included) on git.

------
prepend
We all know that subsurface [0] proved that (although made after git) as well
as shows his naming skills are getting way better.

[0]
[https://en.wikipedia.org/wiki/Subsurface_(software)](https://en.wikipedia.org/wiki/Subsurface_\(software\))

~~~
chrisweekly
wrt naming skills, not sure I follow; I think "git" and "linux" were great
choices.

~~~
IshKebab
Imagine if he named it `dick`. That's what it sounds like to English people,
more or less. It wasn't an accident. Maybe not the best name choice.

~~~
paulddraper
Except git is a homophone for "get", a word said quite regularly, and relevant
to VCS.

IDK what "dick" sounds like. A man's first name?

~~~
IshKebab
That's not why it's called `git`, that's the first time I've ever heard anyone
draw a connection between `git` and "get", and they are only homophones in
some regional American accents.

~~~
paulddraper
I know that's not the origin of the name.

I was pointing out "what it sounds like" to me, as "git" is an uncommon word
in American English.

------
mark_l_watson
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.

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.

------
jpm_sd
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...

~~~
deadbunny
If the first man on the moon can feel it[1], anyone can.

1\. [https://neil-gaiman.tumblr.com/post/160603396711/hi-i-
read-t...](https://neil-gaiman.tumblr.com/post/160603396711/hi-i-read-that-
youve-dealt-with-with-impostor)

------
panic
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.

------
kresten
Nothing more than linux is needed to prove the success of Linus Torvalds.

If your first hit is sufficiently large you never need another.

It's different in founding startups..., once you're lucky, twice you're good.

~~~
mikelyons
Would notch be an example of this? Minecraft being what it is? I suppose it's
too early to tell if he'll create any other software that compares but it
seems at the moment that you could predict not.

------
weberc2
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.

~~~
clarus
As far as I remember, Git was already going strong at the time GitHub
appeared. I was also a supporter of Mercurial at first, but I think Git won
because:

* it always was fast (written in C vs Python for Mercurial);

* Linus and Linux are behind it.

------
peeters
> The world rightly lauds Linus Torvalds for Linux, but Git will arguably have
> a bigger impact.

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.

------
tambourine_man
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.

What else could we take away from Trovalds in order to push him to his next
project? :)

~~~
bronson
A social network?

------
yiyus
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.

~~~
wil421
IMHO, the best and most disruptive inventions are ones where almost everyone
could’ve said “Hey I should have thought of X, it’s such a simple idea.”

------
pjungwir
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: [https://blog.plover.com/misc/git-
talk.html](https://blog.plover.com/misc/git-talk.html)

------
gigatexal
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.

------
domlebo70
Am I going nuts, or is that photo in the linked article, not of Linus?

~~~
username90
That is him. He just ages and gets older like everyone else.

[https://lwn.net/Articles/799259/](https://lwn.net/Articles/799259/)

------
codr7
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.

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.

------
swalberg
Linus also wrote a successful Scuba dive logging and planning tool called
Subsurface ([https://subsurface-divelog.org/](https://subsurface-
divelog.org/)) 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.

It has support for most dive computers and does full technical dive planning
with mixed gasses.

------
cryptica
It's important to note however that the main reason why Git became mainstream
is because of GitHub.

And GitHub chose Git because of two reasons:

1\. It was affiliated with Linus Torvalds.

2\. It had a catchy name.

As far as I remember Mercurial had a much better UX.

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.

~~~
AceJohnny2
Alternatively, Github became successful thanks to the git's feature set.

~~~
cryptica
I really don't buy this idea that features and quality of a project are what
drives adoption. Hype, social connections and funding is what drives adoption,
features is what follows (sometimes) once good engineers start to join the
company (as a result of all the hype) but features and quality have very
little to do with success.

------
RickJWagner
I put Linus (with Linux and Git) way up at the top of the spectrum. Maybe
Pike, Thompson and Ritchie are at this level.

A bit lower are other multi-hit inventors. Gavin King, inventor or Hibernate
and Seam, is in this list.

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.

I am deeply impressed by Torvalds. Git and Linux are huge.

------
tunesmith
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.

------
RickJWagner
Yeah, Linus is up among the greats. Linux and Git are huge.

Pike, Thompson and Ritchie are in the same league. Not many others, maybe
none.

A level below that, people like Gavin King. He invented Hibernate and Seam,
not too shabby. (But not like Linux.)

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.

------
oneepic
(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?

------
nightnight
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.

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.

------
foreigner
That's the first time I've heard Linus Torvalds described as "understated".

------
andy_ppp
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.

~~~
jlokier
I'm intrigued, and interested in database technology. Do you have any links or
pointers?

------
guidoism
It's funny but I've recently been thinking of him as "The Git guy" rather than
"The Linux Guy".

I honestly think that Git has the potential to be relevant a lot longer than
Linux.

------
elipsey
linus looks more tux every year XD

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.

“I’m an egotistical bastard, and I name all my projects after myself. First
‘Linux’, now ‘Git’” --[https://websetnet.net/microsoft-now-using-linus-
torvalds-ope...](https://websetnet.net/microsoft-now-using-linus-torvalds-
open-source-tool-windows-development/)

------
hyperpallium
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). [http://www.catb.org/~esr/writings/cathedral-
bazaar/cathedral...](http://www.catb.org/~esr/writings/cathedral-
bazaar/cathedral-bazaar/ar01s04.html)

------
teekert
Git is one of those thing that you hate a first, then accept, then start to
appreciate and the you become evangelical about it. A true work of genius.

------
Vysero
Does GIT have it's own bug tracking system? For instance, if I use SVN and
Bugzilla can I kill two birds with one stone by switching to GIT?

~~~
Raidion
Git does not, but most git hosts have that built in. If you host your git repo
in GitHub, you'll use GitHub's built in tracking.

------
Koshkin
On the other hand, I can't help wondering what would have happened to Git had
it been created by some low-profile programmer.

~~~
jolmg
Probably wouldn't have become popular as quickly, but it still would have
caught on, I'm sure. Don't most popular FOSS projects start with low-profile
programmers?

------
m0zg
Given that 99.99% of people are "zero hit" wonders, it's ok to be a "one hit
wonder", Linus.

------
mooneater
I really wouldnt call Linux one hit. Linux is a universe. Its more like an
entire discography or even genre now.

------
mrfusion
What about all of us zero-hit wonders?

------
adultSwim
The article falsely makes it sounds that Torvalds wants us all to comment our
code.

------
buboard
I don't know. I think he's just lucky. I only say this to motivate him.

------
pixelkritzel
Linus Torvald just won the Impostor Syndrome championship.

He would never admit though ...

------
hatsunearu
Is that picture right? He doesn't look like Linus...

------
viach
After you become a wonder, everything you do is brilliant)

------
mrfusion
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.

------
stjohnswarts
He's not wrong.

------
crispyambulance
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".

~~~
xxpor
Linux isn't his hit by that logic either, it's partially Slackware's and
RedHat's.

Almost nothing substantial was ever one person's doing.

------
moonbug
it's GitHub that makes git popular

~~~
gamegod
Git was popular before GitHub was a thing. Git was taking over the open source
world back when everybody was on SVN, and people were just hosting their Git
repos themselves. GitHub made Git ubiquitous for all types of developers and
accelerated that adoption further, giving us the near-monopoly we see today.

~~~
jcranmer
A better statement is that Github rather killed the momentum of Mercurial,
which was also picking up steam in that era (Python, OpenJDK, and Mozilla all
chose Mercurial over git).

------
hevi_jos
Oh my... I don't recognize Linus in the picture. We invited him to give a talk
long time ago.

Man, has he gotten fat.

