Daniel Burrows: Why so few X maintainers?

Andrew McMillian asks why X.org has so few active
developers:
[Bernardo Innocenti] did a quick and dirty analysis of Xorg LoC vs Linux LoC, to give a "X codebase is roughly 1/2 Linux codebase" (which surprised me, actually, I'd always thought it was larger) and then a similarly rough analysis that suggests that Xorg has roughly 1/20th of the developer base. To some extent Bernardo's metrics are arguable, but the basic facts are that Linux gets the lions share of the developers. Is this what we should expect? Is this a healthy way for the free and open source software community to support the development of what I personally would like to see as the future desktop base?There are a lot of factors involved in determining which projects get more attention. I'd imagine that things like the amount of domain knowledge required to contribute a simple patch, the structure of the code, the amount of press that a project and its maintainers get, and the presence (or not) of a charismatic and photogenic leader. You could probably even base your entire academic career on studying this question. But I also think we shouldn't underestimate the impact of paid jobs. Admittedly, I have never asked whether I could get paid before jumping off a cliff and starting a new project. But on the other hand, I now effectively work two jobs and only get paid for one. Most people are not as stupid as me, and will rationally choose to spend their time on tasks that they actually get compensated for. Even people who don't care about being paid will find it difficult to continue contributing over time due to practical issues of their personal life, families, etc, and they won't be able to contribute as much as if they were working full-time. It's well-known in the programming community that if you can hack the Linux kernel, you can pretty much write your own job description [1]. On the other hand, I've never heard that companies are looking to hire skilled X programmers. A quick pair of searches on that font of knowledge, Google, seem to back this up. Compare the results for x programming jobs -"active x" -"OS X" and linux kernel programming jobs[2]. Nothing on the first page has anything to do with being paid to work on X.org, whereas the second search gives me an entire page full of people offering to pay me money if only I knew how to hack the kernel. KernelTrap, a central site for information on the kernel, even has a job board just for jobs related to kernel programming. That's not to say that the X coders don't get paid; I'm sure many of them are compensated for their work on X, and given the level of expertise involved they're probably paid well. Companies that manufacture graphics cards have an interest in employing people to hack on X; Linux distributions and embedded hardware manufacturers also benefit from a better X and strike me as likely places of employment for X hackers. But there doesn't seem to be anything for X.org like the cornucopia of available and well-advertised jobs related to the Linux kernel. Programmers who want to be paid someday will, on average, end up gravitating to the project where the prospects are obvious, not hidden. [1] Note that for the purposes of this discussion, it doesn't matter whether this common wisdom is true. The perception of jobs available in Linux-land will tend to cause people to head towards Linux regardless of whether the jobs exist or not. [2] I also tried x server programming jobs -"OS X", x.org server programming jobs, x server jobs -"OS X", and x.org server jobs without notable success.
I've been extremely busy with labwork lately, trying to get a second paper ready for submission in the coming months. It's taken an obvious toll on my free software work, but that's life I guess. The upside is that the other night I realized why a year and half's worth of experiments kept turning up with negative results that seemed to contradict our other results. It turns out that this experiment was conceptually flawed, and even though I wasted a year and a half on this I did learn something even from those negative results that should go in to the final paper. I'm actually relieved, because even though I don't have all the data yet I can really see how the paper will end up, so I can start writing soon. Oftentimes knowing why something is wrong so you can fix it is even more important than being right.



So my flight from SFO to AKL was nice and uneventful. I even managed to
sleep for about 6 hours. The flight landed about 30 minutes early in
Auckland, but alas, the connecting flight had some sort of "engineering"
problems, and was delayed from a 6:30am departure, past 7:30am, and then the
next thing I knew they were handing out bits of paper saying the flight
wouldn't be departing until 10pm and we were all getting shuttled off to a
hotel for the day.
So I don't really know what happened to the flight, but the same flight
number is now departing this evening. Fortunately I didn't have a huge
amount to do today in Brisbane (but I have no idea what Nick had intended to
do today). I currently estimate I'll get into Brisbane at around 11:30pm
tonight.
I've got plenty of reading I was planning on doing on the flight, which I
didn't do any of, so I can keep myself occupied. I'm also going to try and
catch up with Rowan and Kelly. Oh, and it was good to be able to have a
shower. It sure beats sitting around in Auckland International all day.
I think this is the first time I've had a delay like this. The moral of the
story? Direct flights, hang the expense!
I finished reading the
Before my
I spent part of my Sunday on samba yesterday. After all, that ankle
tendinite I have for nearly two weeks now has some benefits for
Debian: I don't waste hours running on week-ends.
Samba 3.0.28a was announced by upstream and I worked to package it. Not really difficult and the package is already ready. It again minimizes the numer of Debian patches: we're slowly converge back towards upstream.
Meanwhile, Steve uploaded a new release of 3.0.28, introducing the use of ucf to manage smb.conf changes. He slightly messed up in the update and, therefore got 3 RC bugs in a row for the same problem (#470138, #470139, #470140...and even #470142 to complete the picture). Good score, Steve. One beer for me next Debconf...:-)...The breakage was fixed a few hours later. So, conclusion: we apparently have active users who are committed to reports errors. Good...:-)
As soon as 3.0.28-4 makes its way to unstable *and* the automated
Ubuntu merge-o-matic, I'll probably upload 3.0.28a, not really waiting for 3.0.28-4 to enter testing (we already have 3.0.28 in testing).
Another work in the pipe is the preparation of samba 3.2.0. Upstream released RC2 last week and I did early work to package it (for experimental as of now).
However, that release incorporates most parts of our "FHS" patch, for
better compliance to the FHS, as well as several other patches we
pushed to them. And, as these weren't applied as is, some checks have
to be done. Moreover, some other changes seem to be needed to get the
package to compile. And, finally, we need to merge back recent changes
from the trunk branch (such as the ucf support). All this is a way too
high barrier for me and I'll need Steve to take that load, which he
promised to do (and so *will* do, I know him enough....).
When all this will be settled down, it will be time to jump in the BTS and fight with some old bugs of the package.
There are plenty of reasons why a company might provide a web
form as the only means for customers to get in touch with their
customer support department: for instance, the web form compels the
customer to send along important information with the first
request, therefore saving time (and money) for the customer service
department.
Even though I hate web forms, I sometimes do fill them in and
usually get an answer back; it works.
Every once in a while, however, I ll encounter a form designed
by people without any form of understanding of the role of a
customer for any business (it s the most important
asset ). Such is the case when the form limits the message to a
certain number of characters. Obviously, no customer service agent
wants to read novel-length prose when fielding incoming requests,
but a few hundred characters may also not be enough to get the
point across.
dpkg-cross updates
Do you know the situation where you just aren’t sure whether you are spelling a word the right way? If you know how to type the word pretty well, then a dictionary might work just fine. If you aren’t sure at all you might consider using Google’s ‘Did you mean’-feature. Check out a simple demonstration for the word