All instructions are in italic, remove them once the page is completed. Please respond to this interview honestly and as objectively as possible.
- Debian developer: yes
Debian login: firstname.lastname@example.org
- IRC nickname: cjwatson (formerly Kamion)
- Canonical employee: yes
What were you doing in Debian before joining Ubuntu ?
Maintaining a slew of packages including man-db, groff, base-passwd, openssh (co-maintainer), putty, etc.; working on debbugs; release manager; contributor to d-i. I did some QA work as well some years ago but I'd more or less faded out of that before joining Ubuntu.
Why did you join Ubuntu and what are you doing for Ubuntu ?
I was one of the first people to join Canonical, before either Canonical or Ubuntu had those names; Mark approached me. I had been working in proprietary software companies (albeit pretty clueful Unix companies with a relatively high Debian concentration) up until then, and, while I did agonise for a week or so about switching from a fairly secure job in a publicly traded company to a totally untried startup, I just couldn't turn down the opportunity to work on free software full-time.
At the time of writing, I've been working on Ubuntu for a little over three years. For most of that time I've been responsible for the Ubuntu installer and CD image production; I have also been involved in Ubuntu release management; and recently I have also taken on line management responsibilities within Canonical (though I'm still not speaking for Canonical in anything I say on this page, of course!).
The Ubuntu installer is largely based on d-i, although we also have a graphical frontend designed specifically for Ubuntu. I've fought quite hard to keep d-i in the picture there, as I've put a lot of time into it and feel that its design is an excellent fit both for Debian and for Ubuntu.
What are you doing nowadays in Debian ?
I've tried to keep up my d-i work, although obviously the time commitment required to be heavily involved in two installer projects starts to become prohibitive at some point (even if the code is largely the same, testing time scales almost linearly). A number of features in d-i today have come from Ubuntu via me, e.g.: debootstrap progress via debconf (and a good deal of what became pkgsel; see /usr/bin/debconf-apt-progress); base-installer kernel selection refactoring and test suite; much of udev support and devfs path removal; pcmciautils support; chunks of debconf maintenance effort such as the progresscancel and escape capabilities; reserved username checks; some of rescue mode; and lots of other bits and pieces. While the testing responsibilities and general time commitments of being a port maintainer were too much for me, I think it's fair to say that being responsible for the Ubuntu installer has given me the incentive and the ability to greatly expand the breadth of my interests in the Debian installer. I would never have worked on half the stuff I did if it hadn't all been my general responsibility at work.
I've continued as upstream and Debian maintainer for man-db, kept up maintenance of groff (though that's been difficult for other reasons), openssh, putty, base-passwd, binfmt-support, madison-lite, exuberant-ctags, and nukeimage, and increased the amount I'm doing on core things like debconf quite a bit since I've been able to spend long chunks of time thinking about hard problems. I'm no longer involved in release management, and seem to have dropped out of debbugs work as well (although I keep meaning to get back into that just as soon as I figure out how the new revision control is laid out). I've not done a lot with many of my minor packages, but to be honest they don't need much work anyway.
My biggest ongoing annoyance is that I've run out of time to keep up with mailing lists, although sometimes I regard that as a blessing.
Can you explain the change (if any) ?
At around the same time I joined Canonical, I was starting up a relationship with the woman who's now my wife, which was my first long-term relationship; so I think it's fair to say that I had more than one significant new demand upon my time! Looking back, it's hard to say how much of the change in the amount of Debian work I've had time for has been due to Canonical and how much of it has been due to a new relationship, wedding preparations, moving house twice, and all that sort of thing. I'm no longer a single geek who can spend his evenings as he chooses ...
I think the fact that my day job overlaps much more with my hobby than it used to has made a difference, in that there's only so much time I want to spend in the evenings doing the same thing (although I'm a bit of a workaholic so I don't exactly stop at 5pm or anything). I do somewhat regret not having the time for release work any more, though it was probably best not to try to release-manage two distributions at once, and the current Debian release team is doing a very good job so I'm not really too worried about the health of Debian there. With that exception, I think I would say that my Debian work has become a lot more focused. By pure upload or commit statistics, I don't do as much as I used to, but I think I'm better at focusing my energies where they're important.
What do you think of the Debian-Ubuntu collaboration ?
There were a lot of arguments which I think wouldn't stand up to the cold light of day or possibly a good beer down the pub, and I felt that people on both sides got put off real technical collaboration by the random bitterness, which I always thought was disappointing. I did find it interesting that there were people with whom I could have had a real flaming row about Ubuntu but when we were working together on something there was never any problem; I can cope with that ...
I think not reading the mailing lists most of the time has helped me get on with things rather than getting too fixated on the debate, so my view on the debate is necessarily a bit lacking in detail. To be honest, I'm happy with it that way. Adam put it well as: why can't we "all just get along"?
It's true that Ubuntu developers haven't been as good as we sometimes should have been at contributing changes back, or maybe we sounded like we were promising too much, or somewhere in between. Similarly, Debian developers treating Ubuntu as an upstream for something don't always file bugs about their changes; and, for that matter, the size of many of our diff.gz files ought to indicate that Debian doesn't contribute as much upstream as it sometimes should either! It's often tempting to react harshly when somebody makes a change to code you feel you own, particularly if it isn't quite perfect by whatever metric, but, rather than lambasting people on both sides for keeping local patches that they haven't got round to polishing up and contributing back properly, a much better way to build a strong development community is to reach out and work with them. This goes for both projects.
What do you wish for the future ?
I care very much about both the Debian and Ubuntu projects, and I really do want to see them both continue to excel. While I expect that the developer population of Ubuntu will continue to grow, and it's clear that not all of those will be Debian developers so much independent work will continue to be done in Ubuntu, there are many areas where there's really no reason for there to be technical differences between Debian and Ubuntu and I'd like to see those vanish where they can. In particular, I hope that new developers on both sides won't remember the flamewars around Ubuntu's inception and will just do what makes the most technical sense, which will be a lot more pleasant and constructive for all concerned.
I'm of course a bit reluctant to make promises just in case :-), but now that I'm doing more management and less direct programming in my day job, I'd like to redirect some of that energy in the evenings when I can; and the obvious place to start there is in trying to beat down the unnecessary differences in areas I'm familiar with. I'm of the firm belief that the best way to improve the situation between Debian and Ubuntu is to keep on working together individual-to-individual.
Do you want to add something ?
Remember that the people on the other side of the screen are just people. Free software being what it is, they generally care very much about their work. Plus they might know more about something or have more time to do it than you do. Give them a chance regardless of what hat they're wearing.