Jeremy Allison's contributions to the free software world are legion, and yet the project he's best known for continues to be Samba, the open implementation of some of Microsoft's most important networking protocols.
Linux Format magazine asked him about KDE, NAS, LSB, DCs and other acronyms, and now his answers are here for your TLA titillation…
Linux Format: We've been accused of bias towards Gnome in the past, so first of all we have to ask: do you use KDE?
Allison: No, I'm a Gnome fan really. I tried KDE 4 and it wasn't bad, but I find KDE a bit cluttered. There are too many options. I did a column recently on the Linux Haters blog, and the writer of that blog really summed it up with KDE. They're like, "Oh, change your encoding to ISO 8859-1". I know what that means, but my brother doesn't. Firefox says 'use Western European encoding' when it means the same thing.
LXF: How do you feel about Novell at the moment?
JA: I get on with Novell fine. I work with the Samba people who are still working on Samba at Novell to create patches and we get on pretty well.
LXF: Do you ever have to pretend that the Novell/Microsoft covenant deal didn't happen?
JA: What interests me is the future; how the Linux distribution world will look in the next five years. It still feels really fragmented. The OpenSUSE release is really good. I wonder if signs of the patent agreements are quietening down – you don't hear so much about it.
LXF: Do you think Novell will carry on?
JA: You're going to have to ask them about that. I run Ubuntu these days, and I'm a big fan. They have the strongest chance to take Linux mainstream, so I'm trying to help them do that.
LXF: Do you think it's important to have something that's easily identifiable as Linux? You know, 'this is the configuration panel', etc?
JA: Well, yes. It used to be Red Hat, and I think these days it's becoming Ubuntu, and so yes. I wouldn't like it to be the case that everyone had to run Ubuntu because there were no other distros, but I think having one really popular one really does help a lot. It helps ISVs, it helps people adding software – it makes it a lot easier.
LXF: You're in the US. Presumably Fedora and Red Hat have more dominance over there than in Europe?
JA: Yes, I think SUSE is a lot more popular on the continent. In some ways you can look on them as national distributions. SUSE was created in Germany and is very strong there. Red Hat is from North Carolina, on the east coast of America, and is very strong in the US. Ubuntu seems to be more third world; I don't know. Then of course there's Red Flag in China, so maybe you're seeing the beginning of national distros, or wider geographical areas. I'm not sure about that, though, because Ubuntu seems to have transcended it.
LXF: The nice thing about Ubuntu is that it's done what the Linux Standards Base should have done and implemented a specification where you can rely on certain things in the filesystem always being in the same place, which must be pretty nice for a developer to work with.
JA: For development standards, the Linux Standards Base still isn't useful enough because we're always on the bleeding edge. We need stuff that's above and beyond what the LSB can standardise. We still have the problems of having to test and configure for all sorts of platforms including Solaris and others as well as Linux, so we can't just do things for the Linux Standards Base. It would be marvellous if we could, because it would make our lives a lot easier.
LXF: The NAS vendors all have quite a lot to say about Samba deployment. How do they get involved in development?
JA: The NAS vendors were instrumental in our decision to go to a six-monthly release cycle. They said: "Look, you have to get something more reliable going on. It doesn't matter if you've got no new features, but we have to have a new release." We were doing that anyway, but they need to know where we'll be in six months because that's their lead time on any product. Some releases are going to be better than others – that's natural, people understand that – but they have to be released in a reliable time frame.
LXF: Do they make any monetary contributions?
JA: Oh yes, but the contributions are mainly code. They also have some great ideas. We don't necessarily always take code, so one NAS vendor for instance, Isilon – they're running on FreeBSD, and they had zero-copy writes, and they had a bunch of very intrusive code that they gave to us and said "This is how we did it." I looked at it and decided that there was no way we could put it in because it'd mess things up, but that then made me realise how it should have been done, so I went and cleared it up.
They'd understood what the problem was and got it to the point where it worked on their box, but the way they'd done it was very specific so I generalised it and now it's part of 3.2 and it works. Any splice that's done that has a receive file, you can do zero-copy reads into Samba. Vendors will run into specific bugs that we might not run into because they have an extremely large customer environment.
They'll suddenly pop up and say: "Hey, when you run Libwine with 2,000 DCs (domain controllers), this thing breaks." We wouldn't have that in our test environment, because we don't have 2,000 DCs at our disposal. They do that kind of thing and it works really well.
LXF: Did you ever imagine that this is what it would come to and how much it would be worth – or that it would be so important to Linux and so many other open source projects?
JA: No, I never thought it would be that popular. Because we don't own it, there's never even been any thought of, "Oh man, if we'd just done this privately we'd all be millionaires by now." We couldn't have done this if we'd tried to do it in a proprietary way – it simply wouldn't be what it is. You watch people who've tried to do stuff like Samba in a proprietery way, and all those products failed. Had we not invented Samba, somebody else would've invented it and they would've put us out of business.
LXF: That makes Samba the perfect example of open source software where, as you said, if you hadn't invented it somebody else would. There was a desperate need for it.
JA: There was a desperate need for that kind of functionality, so somebody had to come along and create it. It happened to be us, but it could have been anyone.
First published in Linux Format issue 113
Now read Linux Format's interview with Former Fedora Project Leader Max Spevack: Defending the flame of Linux freedom