I actually did have a question for you that could be interesting on camera. A friend of mine had some kernel experience writing drivers for AMD.
Yeah, and he heard you say a little while ago that there's not enough contributors or
you're having a hard time finding contributors and he wondered where to start to look into
what he could do. So I think that probably came not so much from contributors as we have a hard time finding
We have a harder time finding the maintainers than we have to find the default.
Yes, so the problem is there's a lot of programmers, a lot of them actually get paid to do Linux
kernel work, but it's much harder to find the kind of person who stays around for years
and also when you're a maintainer, it's not just that you have to know coding, you have
to have enough of a background that people know you know coding, right?
So there has to be some mind knowledge about you and you can't come from nothing and the
other thing is you have to be pretty good at communication too.
So that's why we are having, I think it's harder to find maintainers than it is to find
people to code. I mean we have tons of developers who like doing the coding part and I think people are
kind of scared of taking the next step.
People think that it's harder or think that the expectations are necessarily higher than
they, I don't think they are. The only thing you have to do is you have to step up, you have to have done enough that
people recognize your name, then you have to just step up and say hey, I'd like to help
maintain this area and if you do that, the answer almost certainly is going to be yes.
We want people who help maintain an area.
So what's the first touch point? Is it that you're going to be contributing and passing up the chain first?
Yeah, you do have to basically start.
It's kind of like a lot of companies have this policy that you grow from within and
that everybody starts at the bottom and it doesn't have to be bottom-bottom but you have
to start out being a programmer that writes code or not necessarily even code.
Documentation is the exact same as true of documentation, tests and stuff like that.
We have maintainers for all of those areas but you have to kind of show, you can't just
say show up and say hey, I'd like to help.
What you have to do is you write some code so that people get to know and then when they
know you, when you say hey, I'd like to help maintain and help carry like spread the burden
around of maintenance. I know I'm the one who put you guys here.
We have a ton of people who I'm sure would rather have to have more people reviewing
patches, help when people go on vacations.
So when you say that you have to say how shy they are, they're all hovering.
I just spent the last two hours with you though so I can't come from nothing.
Do you mean with the Linux project specifically or with just coding in general?
I think you need to come into it coding into Linux.
I mean yes, you probably have experience from other sources to other projects.
Maybe you work in commercial but in order to get that name recognition where people
know who you are because that's, I think like personal trust is a big deal in open source.
It's inside companies, it's like you got hired, you're working at the same company so we trust
you kind of thing. You are part of the team now because our manager put you on the team.
You've gone through the process, we've verified. And in open source, that's not how it works.
In open source it's like I trust you because I've seen you around, it doesn't necessarily
take very long, there are maintainers, I mean they've been around for ages now but there
are maintainers who became maintainers in a couple of months because they just, they
showed that hey, they know what they're doing, they were being helpful and doing the right
things and then they said hey, you want to help and everybody said yes please, come on.
So it's actually not, well, I don't know, I say it's not that hard but I only see the
other side of it so I may not see all the people who struggled and never put it in.
So getting your foot in the door is like showing up and communicating with people who are on
the project, seeing where you can lend a hand, reviewing, documentation.
Reviewing and you do want to send passions to. So you want, that's probably the first thing to do, even before you start reviewing because
in order for people to know that your reviews are worthwhile, they need to kind of know
that your code is played by the person. So find the, I mean, that's one of the advantages there and there are tons of different areas.
Find the device or the architecture or whatever that you are interested in, sometimes it could
be files, it could be encryption, it could be whatever, there's a lot of code and find
something that you care about and that you think you know something about and that you
can see something or prove and you find something you don't like, fix it, send a patch, communicate
with the maintainer, the existing maintainer of that problem and that's how you kind of
get the communication guide.
Find something you've got a real itch for, right? Yeah, yeah, cool.
And I mean, it doesn't have, I mean the kernel may be a high profile project and one of the
biggest ones around there but let's be honest, there's thousands of open source projects
and kernels are kind of, I think kernels are the most interesting ones but you don't
have to do kernels. Yeah. Right.
Realistically, we do have 35 years of code, so quite often if there's something new that
meets new code, it's often like new hardware support, hmm, right, so that's, you mentioned
people as a driver, a writer, you get to say AMD, yeah, so that's, that's quite often
how people get into kernel maintenance because that's where they're, there's always, they
cut their teeth and that kind of thing and they, they, they, they maybe, most kernel
developers these days are actually paid by companies to be kernel developers.
Interesting. But sometimes they became kernel developers first and then proved their skills and at
that point companies came in and said, hey, we'll pay you to do that.
But sometimes it goes the other way where, where they're literally paid by companies
to do something and then they, they enjoy it and they become kernel developers and they're
still paid by companies, they're, they're part of the community.
Yeah. That's great. Well, thanks so much, it's really nice to meet you.
Just gonna excuse myself for a minute, I gotta go shoot some stuff. If I catch you on the way out, I'd love to say bye but if not, if not, again, hey.
This was so great. It seemed to work. Oh.
Let's see how it works. Oh, in the end. I have no doubt.
If you edit it to be something crap, I will hate you for it.
Well you heard it here first. No pressure. No pressure.
I don't want to monopolize your time but thank you for being like such a stalwart open source person.
I built my career writing about 3D printers so open source communities are so important
to me and you're such a symbol in that.
I get way too much credit. I mean that's the thing, there's literally millions of us and I just get all the credit.
Yeah. Thank you. Hello.
Can you, can you pretend we're taking a picture here? Take a screenshot from him.
I'm friendly, it's more than pretend. Alright.
One, two, three, cheese. Cheese. Beautiful.
There we go. Alright. How about that?
Thank you.
Oh my God, the line got bigger. Oh my goodness.
Bye bye. Would you be opposed to one of these for the camera?
Yeah. Like you did in the video? It's all good.
It's all good. It's all good. Thank you.
Oh, nice to meet you. I'm James. I'm not that important but I'll also take a screenshot.
We'll do the most viewed internal videos. Yes, please.
Alright. I'm sure that one does. We're good?
That's Sony Alpha. It's going to take pictures too. We're going to take an actual picture, right?
Got it. Thank you for giving me a hug.
They don't trust your camera work. That's what I'd say about you.
Can I ask you a question? Sure. What's your most embarrassing tech story?
If you have one? I mean, I think the one, it's not embarrassing anymore because I've told it so many times
but it's the one where do you, you know, you weren't here when they were filming it.
No. It is the one where I deleted my OS install by auto-dialing my hard disk.
That was embarrassing at the time. That was like a moment where I really said, okay, that's a lot of hours wasted because
I had made it too easy to treat my hard disk as if it was a moda.
But that's actually the point where I ended up using Linux full-time before I was dual-booting
and I destroyed the right partitions so that the Linux partitions stayed around.
But I've made a lot of stupid things.
I try to forget the embarrassing part.
Anyone? I'll get a screenshot picture.
Yeah, I'll get a screenshot picture. It's really cool to meet you.
All right. Now I'm taking an extra nice one.
You're way too old. Yeah, I'm just a lot of hours wasted.
I know. Are you even crouching everything? Yeah, you're doing a good job.
You want to take your tube here? Why not? Sure.
Wow. Eli's in the way. Sorry, I was grabbing something.
Eli photo bomb. He wants me in every photo.
I was cleaning up the set. I'm sorry, I just...
I'm trying to do my job here, Sammy. I'm trying to do my job.
Do you want a screenshot picture? Sure, we'll get a picture. That's all good.
You were always on the other camera. I know I was.
All right, perfect. There we go. Now we got one together though.
So thank you so much. You find it weird when you ask for photos?
Because I know when Linus got more popular, he found it weird.
Yes and no. It is weird because it is weird.
But I'm used to it. Because when I go to conferences, it happens all the time.
It happens to the point where it's a problem.
Now, when I give a talk, they literally...
They take me off stage after the talk immediately and rush me out of the audience.
Because what has happened a couple of times before they did that,
is that you have literally hundreds of people who run up and try to get on an autograph
and try to get a selfie. And it completely destroys the next talk when you had a big auditorium
where a third of the people just walked away.
So now when I go to conferences, it's kind of strange.
I do a talk and then they rush me off stage
and I try to avoid the whole craziness.
You talk to Linus about it. I think Linus has the same problems.
Yeah, sort of out of Linus.
I understand. Yeah, no, it feels bad because it feels very impolite.
But at the same time, it doesn't work if you just stay around and give autographs
and have hundreds of people who want... I've been in that situation where you literally have a line of people taking photos.
Can you download the formal sign?
Many, many years ago, I forget.
Somewhere in Japan, it probably was Tokyo just because it's mostly Tokyo.
We did...
Oh, it was actually when I wrote the book with David Diamond.
We had a book tour afterwards.
And then as part of the book tour, we would have book signings.
And then people would A, bring the book, but they would also bring in things that I felt bad about signing.
They had nice leather jackets.
And my signature is not like a nice signature.
So it was like, I'm defacing this thing.
Yeah, exactly.
And some things are really hard to sign. People bring in...
Oh, well, it's not there anymore. The tux penguin.
They exist as plush toys.
And then they ask me to sign it, which kind of makes sense.
They brought something that is Linux related, where a signature would make sense.
It's completely impossible to sign on those things.
You basically can't try it.
No, but it's one of those things where you say,
I understand what you want and it makes sense, but it doesn't work in this thing.
You can try to hold it out so that it's stretched very tight,
but even then the signature just ends up being even more scribble than it is.
You can recognize a lot. I know shows and stuff.
You're surrounded with people that will know you and what you do,
because it's like-minded individuals, I guess.
But on the street... It's almost the only time I get recognized at conferences.
I don't have... I'm not like you or Linus.
My face is in plastered on YouTube constantly.
So... It happens today, you'll get stuff.
It happens that I get recognized, but it's fairly rare.
It does... I mean...
Back when we used to have a fries,
I don't know if fries was ever a thing in Canada.
Oh, fries electronics? No, it was never. But I would actually get...
I would go there and buy computer parts.
And then because you are in an area with a much higher concentration of geeks than normal,
then occasionally people would come up and say,
I'm not that well known. And it happens occasionally, but no, I'm not that well known.
I think a lot of people... More people know my name than really have a...
And a lot of the pictures of me are old anyway, right?
I think... I still see people, like...
I mean... Talking about signing things, sometimes they bring, like,
old pictures from my college days. And hey, I'm 55 years old.
My college days were some time ago, right?
I look different now, and I like shirtless and drinking a beer.
And they ask me to sign that picture, right?
So... Anyway...
Do you have a favorite with the sort of project of your own? It could be two, but just out of interest?
No, I... No, I...
It's like... I have the toy project that I started.
The subsurface, which is the dive log thing.
And the other toy project that I started. Git, right? That I follow.
Yeah. So I follow those just because of...
I mean, but they're not there. You're invested.
Yeah. Do you want your phone or do you want me to take the screen cap for you?
I mean, I can get it on my... We'll get one of both. We'll get one on the phone.
Thank you. My brother's going to be so jealous.
Long times off for a developer. Yeah, that's right.
I was looking... Where were we? Oh, no.
Look at this camera. Don't look at me. Don't look at me.
I think it was.
Thank you so much. I think Pankrat's there, but I don't know where he went.
Yeah, I don't know. Everyone's saying to my brother. I'm saying to my brother that I don't think I'll be...
Maybe we're done. Yeah, two of the biggest guys I've wanted to meet you were out of office today.
So, Luke is... That's too bad.
Yeah. I might never meet a person who has had a bigger impact on the world.
Yeah. We're really shocking as you go today.
I mean, like, it's just... That's just embarrassing.
Right. It's... Whether it was intentional or not is what ended up happening, right?
Yeah, but as I...
I get way too much credit. Like, I get credit for Git, and I did Git...
I did Git for six months.
But it was the right six months.
It was... And the design I'm proud of, but at the same time, it's like...
All of the infrastructure that made Git so useful to millions of people
was built up by others. I think also you've imparted, like, a philosophy
behind all of your work that's inspired so many people, right?
And, like, that's why these projects continue to work.
But, I mean, there's a lot of other open source people.
Right. Right person, right time, right project.
And I've been doing it for 35 years. So that's part of it, right?
Yeah. But it's only become increasingly important as the world has continued to...
Yeah. Yeah. Yeah.
Well... What would that bring you? Would you like to ask one more?
Sure. I'm curious. What I don't know about Linux Control Library,
but I've noticed that you guys have a very strict philosophy
about not breaking user space. Is that correct? That's correct for the kernel.
I wish it was correct for most other open source projects
because I think the kernel is almost unique in that respect.
It's the one black and white rule that I impose
on maintainers and developers is you don't break users
because users are the reason for any software project.
Yeah. There's a software project that says, hey, we're going to make a new and improved version,
but in the process we will break all the old programs that relied on this,
which a lot of libraries do, and I hate it.
I don't understand. They're kind of missing the whole point of being a software project as far as I'm concerned.
So when it comes to the kernel, the major rule is you do not break users.
It doesn't mean that you can make changes that break some test program or something like that,
but if it breaks the user experience, it's a bug.
So where's the line for that? There is no.
I mean, the line is somebody complains and says,
hey, my program doesn't work anymore. It turns out people don't often realize that there's that line.
So we had an issue where we knowingly said, hey,
we'll skip this because nobody cares, right?
And we simplified and cleaned up some code.
It was, I think it was something pretty obscure,
like our interface to the local descriptor tables for the 386 segmentation,
which we supported for odd programs, but we thought nobody cared, right?
And it broke wine, right?
And the gaming people cared, but the gaming people were apparently far enough from the kernel community
that they had all these strange workarounds in wine for something that we broke,
and nobody ever even told me.
And when people told me, it was like, of course we'll undo that.
That was a bug. I mean, we broke your system.
And it was like, it was no work at all.
And I forget how long it had been going on,
but I think it had been going on for a year before people just told me that, hey, this broke.
And I was like, yeah, you could just have told me immediately.
And not gone through all this pain, right?
So sometimes it's, people get too used to other projects
breaking their users. And the kernel, we really have this hard rule that we don't.
I mean, it is a hard rule at the same time we have had situations where
there was something that was a huge security issue
and we just had to fix it, right?
And somebody relied on this huge honking hole that was just,
we couldn't have that hole.
So it's happened a handful of times.
The thing that happens more commonly is that something breaks
and people who it broke for stay on some old kernel
for years and don't realize that the new kernel broke it
and we don't realize because there's no communication.
And in the meantime, people start relying on the new behavior.
And then two or three years later, they come back and say,
hey, now our stuff doesn't work. And I'm like, I can't undo it anymore
because there are now more people who rely on the fix
that we did, right? And if, I mean, it's rare, but that kind of thing happens
and that we, yeah, no. But I am happy to say it is really very rare
because people know that this is the rule and people are careful about making changes
that they think might break something.
It's funny. You mentioned libraries. You caught exactly what I was going for.
And I'm very interested in what seems to be happening
as Linux is going more towards a consumer basis
with companies like Valve using it and where developers, at least in the gaming space,
seem to be relying a lot more on not really emulation
but on translation layers instead of just using the libraries
that exist for Linux. And I think it's interesting that nothing's popped up
that's more stable when there's that background philosophy. I mean, there you have a separate issue
that they're basically emulating Windows programs.
And Windows has largely always had the we don't break user space.
I think it was one of the reasons why they were so successful
in the 19-Compatibility layers.
I mean, it was ugly and it caused a lot of problems
for Microsoft, obviously. But when all your programs, our commercial programs,
you cannot break them, right?
And in the open source community, it's much easier
because people will say, hey, just recompile,
which I think is a completely bogus argument
because normal users do not recompile, right?
But there is this kind of history in certain circles,
certainly of saying that recompiling is okay.
So when you have the gaming community and you have emulation,
the libraries they are emulating are stable
because of where they came from, right?
And then we just have to make sure
that the target is stable enough that we don't break their emulation, right?
Anyway, I think it's one last person.
Thank you so much. Hello, nice to meet you.
We ran here through the rain. Yeah, I did. Perfect.
Thank you. Wow, what a great video.
Make sure to leave a like so I know you guys enjoy this video and see you later.