Project:Public Relations/Media/robbat2 interview

This article is an interview with Robin H. Johnson.

Introduction
Today I have the pleasure of introducing to all of you, Robin H. Johnson (robbat2) Gentoo Developer, Gentoo Trustee board member, head of the infrastructure, without it working smoothly there would not be Gentoo as we know it. Robin is also involved with helping out MySQL, LDAP, base-system, and lots more.

Robin's Interview
Hi Robin, thanks for the interview.

Hi David, Thanks for asking me.


 * Is Gentoo your first open source project?
 * No, my first full-scale involvement was as one of the phpMyAdmin developers, starting in May 2001,about 2 months after it first moved onto SourceForge. Prior to that it was just the occasional patches submitted back to projects I was using as a Slackware user.


 * How long have you been a Gentoo user?
 * According to bugzilla, my first ever bug/comment was bug 14397, complaining that PHP was detecting GCC2 as a cross-compiler, on 2003-02-25. I wasn't a dev yet then, but it already shows the debug path.


 * How did you come up with the nick (robbat2)?
 * That comes down to an overly long and complicated story for this podcast, but it involves multiplayer LAN flight sims, writing Quake 1 mods, a namespace conflict on my older nick, and abusing DOS ASCII art.


 * What has your journey been like with Linux, and how did it start?
 * Being given a RH6.2 CD1 CD (not the entire set), back in 1997, prior to having any internet connection, still living in South Africa, and having it accidentally wipe out my DOS machine, that I did Pascal programming on at the time. Reinstall DOS, try again a couple of months later, when school was out, find that the compilers worked, but there wasn't much point to it, go back to DOS. Later on, when I first moved to Canada in January 1999, I realized that having an always-on internet connection massively widened the realm of Linux possibilities. I was going to go with RedHat again, having bought real pressed media for $5 at a local Linux festival, but it turned out to be defective, and I just downloaded slackware ISOs instead.


 * What motivated you to become a Gentoo Developer?
 * Daniel Robbins complained I was submitting too many patches and ideas, and that I might as well join to commit them myself.


 * What aspects of Gentoo do you feel the developers and maintainers have got right?
 * This is interesting in the issue of the distribution vs. the developers/maintainers. The distribution has got the degree of control down very nicely, which is partly due to the developer demand to change stuff to be the way they want it, but the degree of transparency is also much better than the binary distributions I feel. I remember looking for RPM specfiles in the past, and not being able to find them, to see what patches were being used, or configure flags were being passed.


 * What is it about Gentoo you would like to see improved?
 * Transparency in projects that are going on, but also in users paying attention to what we are doing. However, if there's one single area, it's how slow we move stuff to stable. I've complained before, but recent presentation by Scott Shawcroft from OSCON showed just how bad it is. Our unstable tree is in great shape, but our stable tree is worse than many of the major distros, esp Ubuntu and Fedora.


 * What are some of the Projects within Gentoo that you enjoy contributing to?
 * The infrastructure project is the most fun, as I enjoy the challenge involved in cohesively managing 40+ disparate servers, scattered in 12 locations around the world. The requirements of unique development to automate the work is also fun.


 * Could you give me an overview of the Gentoo infrastructure?
 * Nearly 50 percent of the infrastructure hardware is taken up by web applications, because we have a lot of separation between web applications that have a high security exposure. Admittedly some of the web services are a very big deal for Gentoo, like our Bugzilla service, running on 4 machines sponsored by the Dutch social network, Hyves. Very recently we've gotten new hardware for Forums, sponsored by Gossamer Threads. The next largest slice after that is the machines that provides rsync.gentoo.org service. Only then do we get down to individual machines for purposes. There's some cases where having more hardware as fail-over in case we lose a machine would be nice, but I think the place that'd we would benefit the most presently would be a newer mail server infrastructure, so that we can deploy heavier spam filtering.


 * Who helps you with the infrastructure?
 * Lance (ramareth) was the previous infrastructure lead, and Mike (kingtaco) is my present co-lead, but he's a slacker most of the time. Shyam (fox2mike) started off in handling mirrors, but is now up at handling some day-to-day infrastructure issues as well. Solar helps out with stuff as well, but is mainly there in an advisory role these days.


 * What is the process for someone to donate a server or set up an rsync mirror?
 * If you'd like to set up your own rsync or source mirror, we offer complete instructions linked from the very bottom of the Mirrors page on the website. The 'gentoo-rsync-mirror' package also offers a sample configuration and scripts for rsync mirrors. Most of our server donations are in the form of the sponsor continuing to own the hardware, and hosting it at their own location. Rackspace, power and bandwidth costs ultimately add up to much more than the value of the hardware. We'd like to move into having more hardware that Gentoo actually owns, but we need to secure more hosting (and possibly remote hands) before that. In the meantime, for hosting a server for, contact the infrastructure team, infra@gentoo.org, to set us up with access to the new hardware, running on a LiveCD so that we can perform our cfengine-powered install of the hardened system. If you've got IPMI or remote console (serial or KVM), that's extremely useful as well.


 * Is git in the future plans?
 * With more hours in the day, it'll come sooner, but it's not a high priority item. I passed out a few of the TODO items on my last status post to the gentoo-scm mailing list. Of them, only WilliamH has done anything. One of the upstream cvs2svn authors, mhagger, helped out significantly in performance improvements, but those aren't fully baked yet, he'd like to find some time to finish them, and possibly some sponsorship so he can put aside his dayjob to work on them.


 * As a Gentoo Developer what are some of your accomplishments?
 * Over my time as a developer, a lot of the things I do seem to be because it was broken, and nobody else cared about it at the time. That's how I came to be the maintainer of qmail, PHP and MySQL back in my early developer days. In all 3 cases, I started the teams to maintain them. The MySQL team is the only one of those not still in existence. The developers that joined have retired before me, and MySQL has come back to me.


 * What applications would you like to see included within Gentoo?
 * There are a couple of more complex applications I've run into, that I'd like packaged, but after attempting to do so myself, I can see why nobody else has yet either. Most recently, was the Evergreen Library System, after I met some of the local implementors at an unconference last year.


 * What are your thoughts on Sun acquiring Oracle and its effect on MySQL?
 * (assuming you meant Oracle acquiring Sun). My views on the matter are reasonably positive for both Sun and MySQL, due to Oracle's dependence on Java, along with the spread of the original core MySQL employees to no longer work for any of the 3 companies, and MySQL AB's recently renewed commitment to having a fully open MySQL - they got rid of the split between MySQL-community and MySQL-enterprise.


 * What open source software can you not live without at home and at work?
 * I'd have to put VIM first on the list, it does wonders for productivity. Similarly, Gentoo itself belongs there, as we rely critically on it for work and also my personal systems.


 * Which open source programs would you like to see developed?
 * Less reliance and imitation of windows, we need to come up with new concepts of software more. The Evergreen Library system is making good inroads for that field, but it's extremely complex. The Radeon and Nvidia open source drivers are making good but slow progress. There's a couple of ideas I've had floating in my head, mainly for reimplementing software where I don't like any of the existing options, but none of them are really radically new.


 * What resources have you found most helpful when troubleshooting within Gentoo?
 * Don't underestimate the ability to take any code apart and inspect it, combined with some form of debugging, if not gdb, then simply putting in your own print statements.


 * Do you get to do much programming?
 * A lot less than I used to, but still probably on the order of 100 lines of code/week.


 * What would be your dream job?
 * In some ways I'm very close to it already, as the lead developer nee development manager and deep-problem sysadmin for IsoHunt.com. Our ruby developers are like herding cats at times however, and I'd like to get more time to work on problems of my own choice. It is already great in that I can contribute to Gentoo during my work hours, as we are a 100% Gentoo shop for our servers. I'd certainly consider doing more Gentoo stuff on a consulting basis as well if the opportunity was available, as it tends to focus more on solving interesting problems.


 * What can users do to improve Gentoo?
 * Read the documentation and source code, and ask intelligent questions, ideally with patches to at least roughly implement your ideas. Filing stable requests for stuff that's been around long enough would also help a lot.


 * What are some of the ways LDAP is put to use in the real world.
 * Is Gentoo not the real world? Outside of Gentoo, it's mainly good as a large hierarchal database, most often used as an address book and directory service for authentication and control. It's not always secured very well however, a fact that got me into trouble at one point during university - the userPassword field for on the address book server at the main campus wasn't restricted at all, you could query it from the public internet, even with Netscape's address book functionality. They have since fixed it.


 * What users would you like to recruit to become Gentoo Developers?
 * More developers focused on small sets of packages. Look at the Debian maintainer system, they have more than a thousand maintainers, and their bleeding edge stuff actually isn't that far behind. Some with interest in backup applications or MySQL would go a long way to start.


 * Is the biggest hurdle in getting the users and developers working more closely, the time it takes to build trust?
 * Not the time that it takes to build trust, but the degree to which users don't realize why their proposed (crazy) solutions won't work out as nicely as they want. They say simply "re-enable FOO" that was disabled in the latest version of something by upstream, without examining the causes as to why it was disabled or no longer functions like it used to. Giving detailed, but relevant information is highly useful as well. If it's a segfault, provide a backtrace with debugging, and figure out what conditions you need to reproduce a problem, not just your set of conditions, but what simple subset of changes trigger it.


 * What are the specs of your current boxes?
 * The 4 machines at home that run the most often:


 * curie
 * old old web and mail server
 * AMD Athlon w/ 1GB RAM
 * 200GiB RAID1 disk


 * grubbs
 * development and testing server, will ultimately replace curie.
 * Core2 Q6600 w/ 5.8 GiB of RAM (odd number due to BIOS MTRR issues)
 * 1.7TiB RAID5 disk
 * 3TiB external eSATA RAID5 enclosure
 * LTO3 backup tape


 * bohr
 * desktop machine
 * Core2 Q9550 w/ 16GiB RAM
 * 1.3TiB RAID10 disk


 * speedracer
 * 1U server, in a local colocation facility
 * Asus RS120-E4/PA4
 * Core2 Q6600 w/ 8GiB RAM
 * 2TiB RAID5 disk
 * Runs the Willikins bot for all of the Gentoo channels


 * ebadi


 * old Asus W5F laptop
 * Core1 w/ 1.5GiB RAM
 * 200GiB disk


 * 3ware RAID controllers on the non-laptop systems. Beyond these machines that run most of the time, I've also got half a dozen embedded systems of different architectures.


 * Did the Gentoo Developers played any tricks on you when you were a rookie, new to the developer pool?
 * None that I can recall, I wasn't on IRC a lot in the early days.


 * What gives you the most enjoyment within the Gentoo community?
 * Definitely the Infrastructure project.