Interview with Alistair G. Crooks
September 18, 2009 posted by Emile Heitor
Our fourth edition of the "discussions with a NetBSD developer" series is a very special one, as we had the chance to talk to Alistair G. Crooks, president of The NetBSD Foundation.
Alistair gave us a historical point of view some of you might be unaware of, explaining "The NetBSD way" while telling us what is his analysis of NetBSD's status today and what he thinks about its future.
NetBSDfr: For those of our readers who don't know you, could you tell us a little bit about yourself? Alistair: I - am originally from the UK (Scotland) - have a degree in computing science from Glasgow University - have a wife and 2 children - have worked in the UK, the Netherlands and Germany for most of my life - now situated in Californa, where we moved last year - am a guitarist, with a great love of music (which my family disputes) NetBSDfr: How long have you been using UNIX, and in particular BSD UNIX ? Did you follow CSRG's work? Alistair: I first booted Unix version 6 on a PDP11/45 in 1977. I first used BSD Unix in 1984 - 4.1c on a VAX, and early Suns running 4.2 BSD. I recently found some course notes from a 4.3 BSD internals tutorial given by Kirk Mckusick and Mike Karels in 1986. I used to have various interesting reel-to-reel tapes in the house, but the move to California has meant a rationalisation in non-essential items. Quite how my wife's collection of mugs is essential, is not immediately clear to me, but will become apparent later on, I'm sure. NetBSDfr: As you're one of NetBSD's early hackers, could you briefly explain us what was the path from 386BSD to NetBSD 0.8 ? What made you choose to follow NetBSD over FreeBSD? Alistair: I used 386 BSD 0.0, and then 0.1 - complete with cgd's notes on how to configure more than 5 MB of swap space, which I remember using in September 1992 - I can be exact because I did that just before going off on my honeymoon - then there was a few months delay, and NetBSD and FreeBSD were born. There were a number of reasons for choosing NetBSD, and one minor - the minor one was that NetBSD 0.8 would install fine onto my old 300 MB drive, whereas FreeBSD wouldn't. I also had positive experience with the developers in the NetBSD camp. Around the same time, there was an online conference using some early irc framework which discussed what should happen and how to move forward, and I remember thinking that the design and architecture decisions that (what were to become) the NetBSD developers were taking were the right ones. However, in those days, there was a lot of crossover between the two projects. For example, my name used to appear in the FreeBSD developers handbook - I have no idea if it still does - because two of the original ports collection (what we'd know as binary packages nowadays) I provided - and these were compiled on NetBSD but were runnable on FreeBSD. This is long before FreeBSD started its new build-from-source ports collection (which incidentally is why you used to see the "New" in # New ports collection makefile for: portname on the top of ports Makefiles, to denote that this portname was from the new ports collection, the source-based, rather than binary-based one). NetBSDfr: When and how did you become a NetBSD commiter? How many were there? Alistair: I'd been on the NetBSD mailing lists and used to run NetBSD-current on my machines since the time NetBSD started (1993). I used to travel with my work and had met up with a number of NetBSD developers. In 1996, I wrote a packaging system for Amdahl's UTS, their mainframe Unix, and then there was some activity on the NetBSD mailing lists about having a packaging system for NetBSD, how it should work, etc. I volunteered for the role, as I'd had experience with my packaging system for UTS, and thought that I had a lot to offer NetBSD. I managed to fool the NetBSD people into taking me on as a developer, imported the packaging tools, the make infrastructure, then piecemeal packages, and that's how pkgsrc started. NetBSDfr: How much time do you usually spend on the Project? How do you manage to manage your role in the project and everyday life? Alistair: I am lucky enough that I only have to spend 24 hours out of each day on the NetBSD project, and on pkgsrc. The rest of my time is spent at work and with my family. NetBSDfr: When did you (core) decide to create The NetBSD Foundation as a legal entity? What is its role? What is, if any, its impact over the Project? What is the role of the President? Alistair: If you think of a traditional company, you have a board of directors, who set the goals for the company, and employ and direct the management team to achieve those goals. It's much the same in NetBSD - the board of directors (i.e. the NetBSD Foundation) establish the set of goals that they want to achieve, and meet regularly to discuss this, and monitor how well we are achieving those goals. The core team is the technical management for the project, and takes technical decisions. The NetBSD Foundation looks after the legal and financial sides. The NetBSD Foundation has started to finance work - its targeted development work, whereby it will fund development. Andrew Doran's work on SMP and threads is the first result of this. We expect to fund more work over the next few months - it's a very exciting time for NetBSD. The board of directors is elected every 2 years by the NetBSD developers. I've been on the board with one small break for good behaviour since 2002. My term of office ends in 2011, and this will be my last term. It's time for fresh blood and new ideas to come along. The President sits on the board of directors of the Foundation, is the ultimate sink for the buck, and is the recipient of all chocolate donated to the project. NetBSDfr: Everyone knows about a major project you founded, pkgsrc, but can you tell us about some other NetBSD-related areas you work on? Alistair: I wrote the user management suite of programs, user(8), ReFUSE, the iSCSI target and initiator, netpgp (a library and utility for digital signing and verification, encryption and decryption), and a Role-Based Access Control security model kernel (which has still to be committed). I'll be talking about both netpgp and the RBAC work at EuroBSDcon in Cambridge - please come along and say hello. NetBSDfr: Does your position at TNF have any impact on your professional life? More generally, do your colleagues know they work with a famous Open Source figure? ;) Alistair: I had no idea that I was famous, and certainly no-one has told my family that I am, which is probably just as well. I work with some NetBSD developers, so, yes, they make allowances for me and my ego. One co-worker said "Hell, yes we do", others hate running the gauntlet of paparazzi between their cars and our office. I suspect some colleagues only put up with me for the chocolate. So swings and roundabouts, really. NetBSDfr: Linux and FreeBSD both have many user groups helping their projects to gain popularity and bringing them more and more contributions. While NetBSD is the most ancient Free UNIX system, it does not have this fame. What do you think must be done in order to change this, if you consider this should change? Alistair: NetBSD has always been a "no hype" operating system. It's there, it just works (very well), and we tend to let our operating system do the talking for us. Which isn't to say we don't like publicity, or that we know we need to present as good a message as our operating system is good technically, and in practice. We have a new addition to our ranks, Sarah Cockburn, who has started to head up NetBSD's marketing. Also, without our supporters out there in the world, we'd be nowhere, so I'd like to say thanks to all of the people in various different countries, who raise our profile in so many separate ways. So thank you, NetBSDfr, for your enthusiasm and skills in presenting us so well. NetBSDfr: What, more than passion, would you say is required in order to join the NetBSD Project as a developer? Alistair: Anyone can join the NetBSD project - use the operating system, use pkgsrc, report, contribute, enjoy. If people want to play a more active role in helping the project, please let us know. NetBSDfr: NetBSD 5.0 is revolutionary, both technically and from the widespread media coverage, how do you explain this revival? Alistair: NetBSD 5.0 is the combination of a lot of things. It was the first release where the NetBSD Foundation's policy of targeted development was used, whereby the Foundation funds development of certain parts of the system which would otherwise be too much work for someone to work on in their spare time. Andrew Doran rewrote the threading model, and has made such good progress with our SMP that the performance figures speak for themselves. In case anyone missed them, please see: http://www.netbsd.org/~ad/50/ Technically, I am biased about the success of 5.0, though, since I was nominally release manager. In practice, Soren Jacobsen, the release engineer took care of every single thing, in some bizarre act to make me look as good as possible. Thanks to Soren, the 5.0 release process itself was a great success. I only just managed to stop the release of 5.0 within a few days of my fiftieth birthday. The changes that went into 5.0 should not be underestimated, though. There were 72 kernel version bumps in 5.0 - the previous record was 29. In my mind, 5.0 came along at the right time, with the usual superb stability, with functionality that people wanted, and with outstanding performance. My thanks to everyone who took part in all aspects of bringing 5.0 together - from the people who contributed, the users who helped iron out wrinkles, to the people who document and write about it - you are the ones that made 5.0 such a success. Thank you. NetBSDfr: Where do you see NetBSD in the next 5 years? Alistair: As many manufacturers have found out, NetBSD is the prime target for embedded appliances; its ability to build everything on other operating systems is unmatched, its licensing is simple and effective, and its performance and small size is appealling for so many reasons. The embedded market also is slow to change, by its nature; for that reason alone, I see NetBSD being used in embedded markets for many years to come. Embedded is only one facet to NetBSD, though, and some of the technical innovation (such as the rump susbsystem, which allows file systems to be mounted in user space - think of mounting a file system on a USB key, for example, and not knowing what it's doing to your kernel). Rump takes those concerns away (as well as providing much more functionality than simply that) by doing all the necessary file system heavy lifting in user space. Another trend I see is that of secure operating systems, and of applications being designed to be secure from the start; NetBSD has many advantages in this arena, too - from kauth's abstractions and veriexec, through to netpgp. I expect this trend to grow at an increasing rate. Storage has long been a positive aspect of NetBSD - from its iSCSI target and initiator, Antti Kantee's innovative file system work, its ReFUSE clone of FUSE, the management of space by LVM (in NetBSD-current), the perennial RAIDframe system which protects so much data, to the recent import of ZFS into NetBSD-current - the NetBSD storage strategy has lifted NetBSD into a superb position. I expect to see SSDs come of age in the next 5 years, and for storage subsystems to get more hierarchical in general. I'd also think that storage volume will increase, although the rate will taper off. NetBSD has also been a leading player in virtualisation, having been hosting Xen Dom0 and DomU ports since 2004. The guys like Manuel Bouyer, Jean-Yves Migeon and Christoph Egger who work on pushing the envelope with support for Xen 3.3 dom0 and domU, have my utmost respect. NetBSD's Xen virtualisation support has few, if any, peers. Licensing is an interesting issue - the GPLv3 has been out for a while now, and we are seeing a growing trend of software moving to the GPLv3. Personally, there are issues with the licensing of that software which I have trouble with - the patents issue, for instance - which may bite some people if they are not careful. In contrast, NetBSD's preferred license is small, simple, and understandable, and has no onerous clauses. I have no problems in recommending it to authors who wish to gain the maximum exposure for their work (since Linux vendors do not mind including BSD-licensed software in their products), and yet still wish to protect their own sweat and tears with an enforceable license. In all, NetBSD has been evolving since its inception in 1993. In those days, it had an unofficial motto of "it runs on anything". NetBSD was able to scale between older, slower machines and huge, fast ones, by means of its clean design; of an attention to detail that is admirable. NetBSD runs on Acorn26, and on fast multi-threaded amd64/x86 machines with large amounts of memory. NetBSD will continue to evolve, mainly due to its excellent design, its marvellous developer community, and our passionate and generous, chocolate-donating users. NetBSDfr: Finally, for those readers that still haven't joined the NetBSD community, why should they try NetBSD? Alistair: Hopefully, the answers above go some way to answering that. What makes NetBSD special is its source code. That is the basis of everything. But around that source code, there's a belief in "doing the right thing" that pervades right through the developer community to our users, our distributors, and the people that write about us. We don't just *think* NetBSD is special - we *know* NetBSD is special.
Many thanks to Guillaume Lasmayous from NetBSDfr for his hard work in preparing, conducting and translating this interview, and to Claude Charpentier and Jean-Charles Bagneris for reviewing and correcting.
[4 comments]
Posted by Bry on September 22, 2009 at 09:58 PM UTC #
Posted by Davide on September 23, 2009 at 03:55 AM UTC #
Posted by Cem Kayali on December 27, 2009 at 04:48 AM UTC #
Posted by David Riley on July 06, 2010 at 06:08 PM UTC #