Linus Torvalds and Dirk Hohndel sat down at LinuxCon Japan
2013 for a "fireside chat" (sans fire), ostensibly to discuss where
Linux is going. While they touched on that subject, the conversation was
wide-ranging over both Linux and non-Linux topics, from privacy to
diversity and from educational systems to how operating systems will look in
20-30 years. Some rather interesting questions—seemingly different
from those
that might be asked at a US or European conference—were asked along the
way.
Hohndel is the CTO of the Intel Open Source Technology Center, and Torvalds
"needs no introduction" as Linux Foundation executive director Jim Zemlin
said at the outset. Given Zemlin's comment, though, Hohndel asked how
Torvalds introduces himself, does he mention that he is a "benevolent
dictator", for example. But Torvalds said that in normal life, he doesn't
try to pull Linux into things, he just introduces himself as "Linus"
(interestingly, he pronounced it as lie-nus) and leaves it at that. He
has, he says, a regular life and doesn't get recognized in the
streets—something he seemed quite happy about.
Releases and merging
The 3.10-rc3 release was made just before
they had left Portland for Tokyo, so Hohndel asked about where things are
heading and what can be expected in coming releases.
Torvalds said that the kernel release cycle has been "very stable" over the
last few years and that there are never any plans for new features and when
they will be released. Instead, he releases what is ready at the time the
cycle starts. People know that if they miss a particular release with
their new feature, ten weeks down the line there will be another
merge window for it to get added.
Most of the changes that go in these days are for new hardware, as the core
has stabilized, Torvalds said. The changes for new hardware come both in
drivers and in
support for new CPUs, particularly in the ARM world. Over the last few
years, there has been a lot of work to clean up the ARM tree, which was a
mess but has gotten "much better". These days, ARM and x86 are the two
architectures that get the most attention, but Linux supports twenty or so
architectures.
Noting that Torvalds had seemed a little more unhappy than usual recently,
Hohndel asked if it was caused by the number of patches he was merging. Hohndel
said that the 3.10 merge window was the largest ever, and that the -rc3
announcement showed some displeasure with how things were going. Torvalds
said that the size of the merge window was not really a problem, unless the
code merged is "untested and flaky". It is a problem when there are a lot
of fixes
to the newly merged features that come in during the -rc releases. "I want
code to be ready" when its merge is requested. Given the ten week release
schedule, there are only six or seven weeks to get everything to work, so
he is unhappy when people ask him to merge code that makes it harder to
converge on the final release. When that happens, it results in "a lot of
cursing", he said.
If he gets "too annoyed" at some subsystem or area of the kernel, Torvalds
sometimes resorts to refusing to pull code from the developer(s) in
question. It is "the only thing I can do", when things get to that point.
It is an indication that "you need to clean up your process because I don't
want the pain you are causing". Normally that happens in private with a
rejection of a pull request in a "try again next time" message, but
sometimes he does it publicly. His job is to integrate changes, so he
wants to say "yes", which makes it painful for both sides when he gets too
frustrated and has to say "no".
Diversity
Hohndel noted that Kernel Summit pictures tend to contain only white males, but
he thinks we are making some progress on making the kernel community more
representative of the world we live in; "is it improving?", he asked.
Torvalds said that he thinks it is improving, but that the Kernel Summit is
the "worst possible example" because it mostly represents those who have
been involved for 10-15 years. In the early days, Linux was mostly
developed in western Europe and the US, which makes the diversity at the
summit rather low.
Beyond geographic diversity, the number of women in the open source
software world is low, though Torvalds is not clear on why that is. It is
getting better through efforts by companies like Intel and organizations
like the Linux Foundation to help women get more involved so that the
community won't be so "one-sided". He noted that there were few Japanese
kernel developers when the first Japan Linux Symposiums started, but that
has now changed. Japan (and Asia in general) are much better represented
these days.
The first-time contributors to the kernel are more diverse than they were a
few years ago, Hohndel said, which is a step in the right direction. There
is a problem using that as a measure, though, Torvalds said, because it is
fairly easy to do one patch or a few trivial patches. Going from one patch
to ten patches is a big jump. There are a lot of people who do something
small, once, but that taking the next step is hard. Something
like half of all the kernel contributors have only ever contributed one
patch. That is probably healthy overall, but looking at first-time
contributors may not be an indicator of the makeup of the actual
development community.
An audience member pointed out that in addition to the low numbers of women at
the conference, there was also a lack of college and high school
students. Torvalds said that he didn't find that too surprising, as even
those using or developing open source at school probably wouldn't attend a
conference like LinuxCon. There is definitely a need for more women
participating, though, so hopefully the outreach programs will help there.
Hohndel mentioned the Outreach
Program for Women, which has kernel
internships funded by the Linux Foundation. Sarah Sharp of Intel has
been overseeing the program, which has been "extremely successful" in
getting applicants. Torvalds said that it had brought in over a hundred
patches to the kernel from the applicants.
Education
Another audience member mentioned a university in Switzerland that uses
open source software as part
of its curriculum, guiding the students to the culture of open source, IRC
channels, and the like. Torvalds said that there are other universities
with similar programs, which is good. He pointed out that it is "not just
about the kernel", which is a hard project to enter, but that other open
source projects are good steppingstones to kernel development. Often
times, a project needs help from the kernel, so that's how its participants
start to get involved with the kernel.
In answer to a question about the differences in educational systems and
whether there are specific advantages in learning technology,
Torvalds noted that he had first-hand experience with Finland's system and
second-hand with the US system through his kids. Finland makes an
excellent example, he said, because there is a lot of technology that comes
out of a fairly small country "in the middle of nowhere". It has a
population of five million and there are cities in Japan that are bigger.
In Finland, education is free, so that students don't have to worry about
how to pay for it. That means that they can "play around" some rather than
just focusing on school work.
Torvalds spent eight and a half years at his university in Finland, and
only came away with a Masters degree. In some sense, that's not very
efficient, he said, but he worked on Linux during that time. Finland's
system gives people the freedom to take risks while they are attending
school, which is important. Some will take that freedom to just drink and
party, but some will do something risky and worthwhile. In the US, he
can't imagine someone going to a good university for that long, because
they can't afford to do so. Finland is not necessarily so strict about
getting people to graduate in four years, which gives it a "huge advantage"
because of that openness and freedom.
Contributing
A non-developer in the audience asked about how he could make a
contribution to the
kernel. Torvalds was emphatic that you don't need to be a developer to
contribute. Part of the beauty of open source is that people can do what it
is they are interested in. When he started working on Linux, he had no
interest in doing the things needed to turn it into a product. There is
documentation, marketing, support, and so on that need to be done to make a
product, but he only wanted to write code. He left it to others to do the
work needed for making it a product.
Depending on one's interests there are countless things that can be done to
contribute. Translating documentation or modifying a distribution so that
it works better for Japanese people are two possibilities that he
mentioned. Beyond that, Hohndel said testing is a huge part of the
process. Running kernels during the development cycle and reporting bugs
is a crucial part of making Linux better. But it is not just about the
kernel, he said. When Torvalds is on stage the conversation naturally
drifts in that direction, but Hohndel said that there are tens of thousands
of open source projects out there. People can document, translate, and
test those programs. There are a "ton of opportunities" to contribute.
For example, Torvalds and Hohndel work on Subsurface, which is a graphical
dive log tool. Torvalds said that it involves lots of graphical user
interface (GUI) work that he has "no interest in at all". A GUI designer,
even one who can't write code, would be welcome. Creating mockups of the
interface that someone else could write the code for would be very
useful. Of course, "real men write kernel code", he said. Hohndel chided
him by noting that statements like that might be part of the reason why
there aren't more women involved. A somewhat chagrined Torvalds agreed:
"real men and women write kernel code".
The future
Another question concerned non-volatile main memory and how Torvalds
thought that would change computers. First off, there has been talk about
non-volatile main memory for a long time and it's always just a few years
off, Torvalds said, so he is skeptical that we will see it any time soon.
But if it is finally truly coming, he thinks its biggest impact will be on
filesystems. For many years, we have been making filesystems based
on the block layout of disks, but non-volatile memory would mean that we
get byte addressability for storage. That would allow us to get away from
block-based organization for filesystems.
For main memory, even if it is all non-volatile, he thinks working memory
will still be treated as RAM is today. Non-volatile memory will make
things like suspending
much easier, but there won't be a lot of externally visible changes. There
will still be a notion of long-term storage in files and databases.
But the internals of the kernel will change. It will take a long time
before we see any changes, even if the hardware is available soon, Torvalds
said. It takes a good bit of time before any new technology becomes
widespread and
common. There is "huge inertia" with existing hardware; people tend to
think technology moves faster than it actually does.
What did he think operating systems would look like in 20-30 years was
another audience question. "Not much different" was Torvalds's answer.
Today's operating systems are fairly similar to those of 40 years ago, at least
conceptually. They are much bigger and more complicated, but the basic
concepts are the same. If you looked at an operating systems book from the
1970s, today's operating systems would be recognizable in it. The outward
appearance has changed, GUIs are much different than the interfaces on
those older systems, but much of the rest is the same. "Files are still
files", we can just store more of them. There won't be that much change
because "most of what we do, we do for good reasons", so throwing that away
makes little sense.
Another recent trend is wearable computing, as typified by Google Glass,
Hohndel said. What did Torvalds think of that? The idea of a small screen
that is always there is attractive to him, Torvalds said, but the problem
is not on the output side, it is the input part that is difficult. He
hates writing email on his cell phone, so he would love to see some kind of
"Google Glassy
thing" for input. He hates voice recognition; perhaps it would work for
writing a letter or something, but you can't edit source code that way. "Up
up up up up" just doesn't work. Maybe someone in the audience will figure
out a better way, he said.
The privacy implications of Google Glass don't really bother Torvalds. He
said that others (like Hohndel) are much more protective of their privacy
than he is. "My life is not that interesting", Torvalds said, and doesn't
need to be that private. "All of the interesting things I do, I want to
put out there", so there are just a few things (like his bank password)
that he cares about protecting. While people are unhappy with Google Glass
because it can record anything the person sees, it is something people
could already do without Glass, so it's "not a big issue" to him.
Young and stupid
"I was young, I was stupid, and I did not know how much work it would be".
That's how Torvalds started his answer to a question about his inspiration
to write Linux. He wanted an operating system, and was even willing to buy
one, but there was nothing affordable available that he wanted to run.
Some are religious about open source, but he is not, and would have bought
something if it was available. So he started writing Linux and made it
open source because he wanted to "show off" and didn't want to sell it.
Torvalds knew that he was a good programmer, but he also knew he was not a
good businessman. If Linux hadn't attracted other people right away, the
project probably would have died within six months. But the involvement of
others was a "huge motivating factor" for him to continue, because it "made
it much more fun". Some people ask him if he regrets making Linux open
source, because he could be as rich as Bill Gates today if he hadn't.
It's a kind of nonsensical question, because Linux wouldn't be where it is
today if he hadn't opened it up, so he wouldn't have reached Gates-level
wealth even if he had kept it closed. But there is "no question in my
mind" that making Linux open source was the right thing to do.
He has never had a plan for Linux, it already did what he wanted it to do in
1991. But many others in the Linux community did have plans for
Linux and those plans were quite different. Some were interested in small
devices and cell phones, others in putting it into gas pumps, some wanted
to use it in space, still others for rendering computer graphics. All of
those different ideas helped shape Linux into what it is today. It is a
better way to develop a stable operating system, Torvalds said. When
a single company has a plan for their operating system, which changes with some
regularity, it destabilizes the system. Linux on the other hand has many
companies who know where they want it to go, which has a tendency to keep
Linux stable.
[I would like to thank the Linux Foundation for travel assistance to attend
the Automotive Linux Summit Spring and LinuxCon Japan.]
(
Log in to post comments)