Categories: Top ::

Codejedi: So wheres the new Linux target now?
Tue, 28 Nov 2006

I've spent a few days trying to suss out which version of OSX most Mac users are currently resting at, as you can see from prior blog entries. Interestingly enough, the Mac crowd seems to really stay afloat of OS updates and new versions. My assumptions on the Linux and Unix community are very different, though I've not really looked for any hard evidence yet. Total guesses I've been working from for a few years, but I think its time to rake through the Apache logs again and look for third party estimations if I can find them -- where is the 'most common' Linux user at in terms of kernel version and libraries? What distro are they using, so that I can determine those things? Since I need a few machines to produce each official release, its handy that I need to lag as it keeps costs down. In general, I'm cheap and always like to lag since I always say -- those who know how to use a machine can afford to use an older machine than those who are newbies; they don't optimize, so my machines are all old and cheap :)


The guess I've been going with so far has always been thus -- that there are a couple of camps of Unix (and Linux) weeny -- those who install and run them forever (servers, headless, whatever) and doing incremental updates as required, and those who perform fresh installations whenever they feel they need to update. I'm in the first camp - when the machine is stable and running happily, I tend to let it sit in the basement for a few years before I worry about it. I'll apply security patches, update some of the exposed software, but significant OS updates are pretty rare. I have friends in the other camp -- folks who lean more towards the Windows mentality of reinstalling whenever something new comes out. Naturally if you keep all your data on another partition and properly manage user accounts, you can do a full OS reinstall and not lose much time.

The implication to the developer is some pain; Microsoft, despite all their evil, has kept compatability high so I can target many versions of Windows without suffering too too much (mostly due to QT handling Unicode for me; Unicode is hell on Windows across versions.) and so I can keep a build environment going for a few years without worry, and still cover nearly the entire breadth of users. Turns out for Mac, most people nabbing new software appear to stay on top of things, so a developer can as well.

For Linux though, we've got those two camps; if I lag too far behind, those folks doing reinstalls or using newer distros will not have some of the library versions I'd be using, though hopefully theres some binary compatibility. If I get too far ahead and use newer distros myself, then I lose the first camp or anyone whose not keeping up. So in my assumed world, I've been working against a sliding window, updating my build environment every year. Tell you the truth, this one fact alone is what keeps me from releasing Linux builds every few weeks - the machine is always out of date and a pain in the rear to use, since the kernel is old enough that it hates most of the hardware I've got and won't connect to my network. (Since lightning wiped out my gear, I assembled a new inexpensive box .. works great, but the older Linux distro I'm using can't stand it much. I do love that a great headless machine can be assembled for the price of going to a movie a few times -- a few spare parts and a $50 mobo and $50 CPU and you're good to go with a solid server. :P)

So the question of today and tomorrow - is it time to update my linux build environment? It is tempting to use Parallels on my Mac to run Linux and FreeBSD virtual machines and thus keep 3 build environments on one box, rather than have my decrepit old machines chugging away to make builds. I've always been a big fan of vmware, but I do like to keep on top of things and fiddle :) I will have to fire up the Linux box thats not been turned on in a couple months now and inspect its lib and kernel versions and go from there.

[ Category: / technology / codejedi ] [link] [Comments]