- Google I/O 2013's Coolest Products and Services
- 10 Star Trek Technologies That are Almost Here
- 19 Generations of Computer Programmers
- 25 Must-Have Technologies for SMBs
Computerworld Australia - Linus Torvalds is a regular visitor to Australia in January. He comes out for some sunshine and to attend the annual linux.conf.au organised by Linux Australia. He took some time out to speak to Rodney Gedda about a host of topics including point releases, filesystems and what it is like switching to GNOME. He also puts Windows 7 in perspective.
It's 2009 and Linux development is approaching 20 years. How do you look back at the past two decades?
I feel like its very natural and I don't think it will go away. I have a suspicion I will be doing this for a long time and there is no feeling of "it is done".
I don't have a feeling to pass it on [maintenance of the Linux kernel], but I let the people I trust make the decisions. I can't second-guess them as it wouldn't work and I would waste a lot of people's time. All the sub-maintainers sync their git trees with the main code and I check they haven't done something horrible, but that's rare.
In recent years there have been more "point releases" than major version upgrades, how is this going?
The point release thing has worked well and we have added new features to point releases. It's both worrying and gratifying.
We have point releases so as not to screw development up in a big way. That's why we have stable trees, but we have not gotten to the point where we are adding code so fast we are losing stability. The point releases are getting bigger even though we are keeping the release time consistent at about two or three months. And now we do more changes in those two or three months than we were doing a few years ago. So we are scaling our development well.
There's always the worry are we going to lose it and have huge stability problems. Andrew Morton keeps on talking about this; that we have to make sure quality does not degrade. We have stats on regressions and how long it takes to fix them and how many have to wait for a stable kernel. And some regressions show odd behaviour. It might be a hardware issue or an old bug that was hidden before.
I'm happy with the point release model and I don't see how we could have anything but 2.6, so for now we have done nothing. In the end it's just the numbering. What I don't want to go back to is a development tree that breaks things for a few years. There may be architectural rewrites in the future, but we have been getting good at that even in point releases. So there is nothing that would cause an upheaval that would require a new major version number. We can do unstable development now and not let it impact users.
What about older code in the kernel do you want to remove this?
Some people want us to remove old code more aggressively, but I think if some people are still using it we should keep it as maintaining the old code is usually almost free so we will keep maintain old code as is humanly possible. Occasionally we remove old device drivers.
There has been a lot of buzz about filesystems lately, including Sun's ZFS. What would you like to see Linux adopt here?