Oct 24 2009

Carla Sch­roder from Linux Today repeats a ques­tion that I’ve heard asked many times:

Here we go with another round of Linux Today reader com­ments. Let’s start off with an issue that has been on my mind: Vendors who boast of the their Linux-​​based devices, but they only sup­port Win­dows and Mac cli­ents. It’s a step in the right dir­ec­tion, but would sup­port­ing Linux cli­ents be so difficult?”

There are two major mis­takes that are often made in con­sid­er­ing this question:

  • that all “Linux” sys­tems are the same
  • that by using Linux in one place, it only makes sense that you sup­port other “Linux” systems

We need to remem­ber that the only thing most of these devices share with a desktop “Linux” sys­tem (or even with each other) is the ker­nel (i.e. the pre­cise defin­i­tion of “Linux”). The user­land is dif­fer­ent, and there’s a lot of their own pro­pri­et­ary stuff on it too. Even the hard­ware (such as CPU archi­tec­ture) is often wildly dif­fer­ent. I think people have grown to think it’s all the same since we call it all “Linux”, but it’s not.

Because of this prac­tical conun­drum (as totally dis­tinct from any philo­soph­ical or other argu­ments), I have some sym­pathy for those who prefer to call the sys­tem we use on our desktop and server sys­tems “GNU/​Linux”.

Argue all you want about its accur­acy, but the fact is that it is far more accur­ate than merely using the ker­nel name as nomen­clature for the entire OS. It spe­cifies a user­land that with the ker­nel com­prises a work­able oper­at­ing sys­tem. Come up with a bet­ter name if that makes you feel more comfortable.

This opens up a whole can of worms. If I’m an applic­a­tions or device developer and I announce “Linux sup­port”, what do I mean? Will it work on my mobile phone? On my tele­vi­sion? Prob­ably not. Chances are it refers to par­tic­u­lar ver­sions of par­tic­u­lar dis­tri­bu­tions for a par­tic­u­lar architecture.

If I pro­duce a device that is based on “Linux”, what rela­tion does that have to other “Linux” sys­tems? None. It’s not just devices: another major cul­prit is Web ser­vices. Linux runs most of the Inter­net, but many online ser­vices are not com­pat­ible with desktop Linux systems.

The reas­ons for this are simple:

  • cor­rel­a­tion does not imply causation
  • the small mar­ket size of desktop Linux users

The first point relates to what I said earlier, that there’s no con­nec­tion between the use of Linux on serv­ers and devices versus its use on desktop com­puters. The use­ful­ness of Linux on serv­ers and devices is firmly recog­nised in many sectors.

The same can­not be said for desktop sys­tems, des­pite what we may wish. If it costs a developer more to sup­port a tiny mar­ket, they are prob­ably not going to do it. That’s just busi­ness. Com­pan­ies that choose to sup­port desktop Linux often do so for other reas­ons, such as to foster a developer/​fan base or tap into a very spe­cific set of users.

So every­one, I share your frus­tra­tions that many so-​​called “Linux”-based devices/​services don’t inter­face with my com­puters, but I keep in mind the points made above.

LotD: NSW Police: Don’t use Win­dows for inter­net bank­ing (iTnews)

Oct 9 2008

I recently bought myself a Hua­wei e169 3G modem as part of a ser­vice with Exetel (based on the Optus net­work). There are a few guides online on how to get it to work with GNU/​Linux, but either they didn’t work as advert­ised or I wasn’t happy with the approach they took. Ubuntu 8.10 is due in three weeks, but since I usu­ally wait at least a month for a new release to settle, I was after a solu­tion that would tide me over for at min­imum the next couple of months. It had to be simple and not too messy.

Here’s the approach I took:

  1. Install Net­work­Man­ager 0.7 from the PPA. You might need to reboot after­wards.
  2. Install usb_​modeswitch. I got lazy and installed a DEB from here. Can someone con­firm that this is included by default in Ubuntu 8.10?
  3. Right-​​click the Net­work­Man­ager panel applet and select Edit Con­nec­tions.
  4. Select the Mobile Broad­band tab and click Add.
  5. Fol­low the wiz­ard/​druid: select your coun­try and upstream pro­vider (I chose Optus 3G).
  6. Once the druid is com­plete, return to the Mobile Broad­band tab, select your newly-​​created con­nec­tion, and click Edit.
  7. The only set­ting I had to enter was my APN (exetel1). You may also wish to change the Type to Prefer 3G (3 cus­tom­ers can save $$$ by select­ing 3G — thanks Tel­stra! :p ).

Now when you plug in your 3G modem, two things will hap­pen (after a few seconds). Firstly, the ISO9660 filesys­tem on the USB stick will be auto­mat­ic­ally moun­ted and dis­played by Nautilus (you might want to turn this off in the Nautilus pref­er­ences if it gets too annoy­ing). Secondly, you should see an option to use your modem when you click on the Net­work­Manger panel applet. Once con­nec­ted, you can dis­con­nect in the same way.

There we go! Now all I need to do is plug in my modem and connect/​disconnect from the Net­work­Man­ager panel applet. My Eee PC 901 is truly mobile now :)

LotD: A Sysadmin’s Unix­ersal Trans­lator (ROSETTA STONE)

Apr 23 2008

Microsoft claim that their UAC secur­ity prompts in Vista are designed to annoy you. I’m try­ing hard to take them ser­i­ously and to not laugh them off… but did they really think it’d work? OEMs and users have been dis­abling it in droves. Other users have prob­ably taught their muscle memory to auto­mat­ic­ally click the Continue/​Allow but­ton without the slight­est acknow­ledge­ment or thought. I think Microsoft need to get their act together when it comes to UIs. Some of their recent efforts have been frus­trat­ingly incon­sist­ent.

A major reason given by Microsoft in their UAC scan­dal was to encour­age developers to avoid priv­ilege elev­a­tions as much as pos­sible. A noble cause, espe­cially in the security-​​inexperienced world of Win­dows devel­op­ment, albeit poorly executed. It reminds me of Apple’s per­petual oppos­i­tion to the multi-​​button mouse. One stated reason is to enforce more ‘sane’, ‘usable’ and con­sist­ent UI design, and over­all I think they’ve done well. They don’t ban multi-​​button mice (‘XY-​​PIDSes’?), but given the simple one-​​button default there’s less need for them. I might prefer using a con­ven­tional 3-​​button scroll mouse, or even Apple’s own Mighty Mouse (a cleverly-​​disguised multi-​​button mouse), but I don’t lose any func­tion­al­ity by not using them.

It goes to show how much the graph­ical inter­face can be influ­enced by its phys­ical input, some­thing a lot of us don’t acknow­ledge in today’s world of >100-​​key QWERTY key­boards, multi-​​button mice and multi-​​finger touch­pads. The real innov­a­tion in that space seems to be hap­pen­ing in the mobile and embed­ded sec­tor, the iPhone being a good example. Play­ers of games on both desktop com­puters and games con­soles might notice the dif­fer­ence in ‘look and feel’ between games designed for keyboard/​mouse versus con­trol pad. Par­tic­u­larly for action and strategy games, ports from desktop to con­sole (or vice versa) often aren’t suc­cess­ful. The soft­ware was designed with the assump­tion of par­tic­u­lar input devices, and any­thing that devi­ates from this will also alter the feel of the game.

LotD: Your Win­dows licence fees paid to make this

Nov 12 2007

Stu­art Corner at iTWire suc­cumbs to our old nemesis, cor­por­ate marketing.

Intel have for years pushed the line that mega­hertz (MHz) equals speed. Apple used to call this the ‘Mega­hertz Myth’. Intel com­pet­it­ors AMD and Cyrix were for many years forced to resort to using a ‘Per­form­ance Rat­ing’ sys­tem in order to com­pete. The fact is that com­put­ing per­form­ance is far more com­plic­ated than raw clock speed.

As the mar­ket­ing droids at Intel gained polit­ical superi­or­ity within the com­pany in the late 1990s, its archi­tec­tures devolved into mar­ketec­tures. The Pen­tium 4’s Net­Burst is a clas­sic example. Unleashed in 2000, in the wake of Intel’s loss to AMD in the race to release the first 1GHz chip, it was widely panned for being slower than similarly-​​clocked Pen­tium 3s in some tests. While less effi­cient clock-​​for-​​clock, it was designed to ramp-​​up in MHz to beat AMD in sheer mar­ket­ing power.

In recent years, Intel have been hit­ting the lim­its of their own fal­lacy. Higher clock fre­quen­cies gen­er­ate more heat and con­sume more power, and start push­ing the phys­ical lim­its of the media. You may have noticed the shift in Intel mar­ket­ing from mega­hertz to com­pos­ite met­rics like ‘per­form­ance per watt’. What they are try­ing to indic­ate is that they are innov­at­ing in all parts of the CPU — not just the clock speed — to deliver greater over­all per­form­ance. Through greater effi­cien­cies, they are able to improve per­form­ance per clock cycle, whilst also address­ing heat and power usage (which is espe­cially import­ant in port­able devices and datacentres).

You should also notice Intel’s sud­den emphasis in recent years on model num­bers (e.g. ‘Core 2 Duo T7200’) rather than just MHz (e.g. ‘Pen­tium 4 3.0 GHz’). They are try­ing to shift the mar­ket away from the myth that they so effect­ively per­petu­ated over a series of dec­ades. My laptop’s Core 2 Duo T7200 (2.0 GHz) is clearly faster than my Pen­tium 4 desktop run­ning at the same clock speed. Reas­ons for this include (but are not lim­ited to) the pres­ence of two cores (each run­ning at 2GHz), faster RAM and a much lar­ger cache.

It is inter­est­ing to note that the design of the cur­rent Core line of CPUs (and its Pen­tium M pre­de­cessor) owes far more to the Pen­tium 3 than to the marketing-​​driven Pen­tium 4.

Now, Stu­art makes the mis­take of pre­sum­ing that Intel’s CPUs are not get­ting any faster since they have not increased in mega­hertz. Instead of berat­ing Intel for finally being hon­est, why can’t we praise them? Address­ing real per­form­ance (not some ‘MHz’ decep­tion), includ­ing the previously-​​ignored factors of power con­sump­tion and heat gen­er­a­tion, is of bene­fit to us all.

If there is any­one to cri­ti­cise, it is the hard­ware vendors. They have suc­cess­fully countered Intel’s mes­sage by con­tinu­ing to mar­ket their sys­tems using MHz as a key selling point. The gen­eral pub­lic (and evid­ently most of the press) are left to believe that com­puters aren’t get­ting any faster. Given the con­veni­ence of a single num­ber as an indic­ator of per­form­ance, who can blame them?

When end-​​user exper­i­ence is taken into account, soft­ware developers fall under the micro­scope. Win­dows Vista is the obvi­ous poster­child — I’ve seen dual-​​core 2GB sys­tems that once flew with GNU/​Linux and (even) Win­dows XP, now crippled to the speed of con­tintental drift after being sub­jec­ted to the Vista torture.

Update: The article’s con­tent seems to have been edited to remove any cri­ti­cism of Intel, but the scep­tical title (‘Intel’s new chips extend Moore’s Law, or do they?’) remains.

Update 2: Now that I have explained that mega­hertz on its own is only of minor con­sequence to CPU per­form­ance (leave alone over­all sys­tem per­form­ance), we can see that it is often not even a con­clus­ive way to com­pare dif­fer­ent CPUs. A Pen­tium 4 can be slower than a sim­il­arly clocked Pen­tium 3. This inab­il­ity to com­pare becomes even more stark when scru­tin­ising com­pletely dif­fer­ent pro­cessor fam­il­ies. Apple had a point when they trum­peted the “Mega­hertz Myth’ back when they were using PPC CPUs. Clock-​​for-​​clock, a PPC CPU of that era was faster than the cor­res­pond­ing (by MHz) Intel chip, often by a con­sid­er­able mar­gin. Apple countered Intel with bench­marks demon­strat­ing the speed of their CPU versus Intel’s. Bench­mark qual­ity aside, their intent was to show that a seem­ingly ‘slower’ PPC chip could out­per­form its Intel com­pet­i­tion. It is a shame that the pro­mo­tion didn’t con­vince more of the gen­eral populace.

LotD: Real Amber vs Pho­toshopped Amber

Feb 16 2007

There was enough at LCA to be excited about to give you heart pal­pit­a­tions. If I was forced to single out one thing, it would have to be the One Laptop Per Child Pro­ject (OLPC).

One of my primary interests has been the inter­ac­tions between people and tech­no­logy, and I have long felt that there has been scant atten­tion payed to how this oper­ates in devel­op­ing coun­tries. Sus­tain­able devel­op­ment is a vital goal, and an import­ant part of this ongo­ing pro­cess is the use of appro­pri­ate tech­no­logy. This can range from bare hands and rudi­ment­ary tools to com­plex com­pu­ta­tional and engin­eer­ing infra­struc­ture. The key is to select what is most applic­able in a given situation.

So-​​called ‘developed’ regions of the world might be able to accom­mod­ate expens­ive, dis­pos­able and inef­fi­cient tech­no­lo­gies and meth­od­o­lo­gies. This has guided policy, R&D, pro­duc­tion, dis­tri­bu­tion and use within this part of the world. The play­ing field is entirely dif­fer­ent in devel­op­ing regions, and so solu­tions need to be craf­ted with their needs in mind.

You can’t expect to suc­cess­fully shoe­horn a solu­tion designed for Sydney onto Mogadishu, or even onto Man­in­grida. To date, how­ever, most approaches try to do just that. This only works to an extent, if at all. In many cases it would be bet­ter to rethink things from the ground-​​up to come up with some­thing more appro­pri­ate. This doesn’t mean that you’re throw­ing out the baby with the bathwa­ter. Suc­cess­ful designs often base them­selves upon exist­ing policies, tech­no­lo­gies and ideas, and then pro­ceed to modify or redesign parts to fit their goals. The OLPC is a prime example of such an endeavour.

Whether it is suc­cess­ful or not is another mat­ter. That remains up to the gov­ern­ments which pur­chase and dis­trib­ute them, and the com­munit­ies which accept them. The greatest chal­lenge of the OLPC isn’t tech­nical, it’s socio-​​political.

Jun 12 2005

This is one of those fables with the moral “don’t be greedy”.

A couple of weeks ago at col­lege I spied a trol­ley loaded with books with the label “Take me!” The lib­rary was giv­ing away old books to make space for new ones. There were plenty of inter­est­ing titles, ran­ging from basic PC repair to *NIX to pro­gram­ming. I col­lec­ted a massive pile of books (If I could place them all on top of each other I think they would reach my waist).

I travel by pub­lic trans­port (I don’t own a car), so there was no way in hell I could take them all home at once. What’s more, I was work­ing that even­ing and I had to take a bus to get there. I decided to take about half of them and I made arrange­ments with the instruct­ors to leave the rest so I could take them the next day. It was a pain cart­ing those books to work and back (espe­cially since I nor­mally return home around 10:30pm), but I man­aged it. The next day I took the rest dir­ectly home (thank­fully I wasn’t work­ing that day). No dramas.

Then on Monday I saw some­thing else at col­lege: free com­puters! They weren’t very good (AMD K6200 with 32MB RAM), but hey, they were free! There were only five of them and I didn’t want to miss out, so I decided to take two home at once. These were chunky: old-​​style AT desktop cases made from thick steel. Car­ry­ing them home was a night­mare. I had to take fre­quent breaks so that my arms could recover. I also had a heavy backpack.

I man­aged to get home with myself and the com­puters in one (or rather three) piece(s). My arms were almost numb. If I tried to raise my left hand to my face it would invol­un­tar­ily shake. I could not straighten my left arm until two days ago. I can still feel a bit of muscle stretch­ing when I do.

I still don’t know what I’m going to do with those com­puters. I don’t have any key­boards with AT con­nect­ors (I only have PS/​2). I’ll have to give it some thought.

It’s funny what some people chuck out. A few months ago my mum found a per­fectly work­ing 63cm tele­vi­sion set. Yes­ter­day I was at my cousin’s house and I saw a com­puter mon­itor sit­ting on the side of the road. It was an old HP Pavil­ion 15in screen, and it was slightly damp since it had rained earlier in the day. I didn’t expect it to work, but I decided to pick it up any­way. Not know­ing the fre­quen­cies of it, I decided to hook it up and boot with the PCLinuxOS Pre­view 8 liveCD and hope that it would be auto­mat­ic­ally be con­figured. Lo and behold, it was! KDE looked great run­ning at 800×600 on it. I’ve been want­ing to set my mum (who is essen­tially computer-​​illiterate) with a com­puter, but I didn’t have a mon­itor. This one will do fine.

Dec 28 2002

I love Grease, don’t you? There’s some logic in the title. It is sum­mer here in Aus­tralia, and as many may know Aus­tralian sum­mers are typ­ic­ally very hot and dry. A lot has happened over the past few weeks and I’ve been too lazy to type it out here. I’ll split things into sev­eral entries for the sake of readability.

Back in July, I bought myself a nice new Ath­lon 2100+ sys­tem. This machine is lightyears ahead of my old Pen­tium II 350, and now I can do many things that wern’t prac­tical on the old sys­tem. When I got the machine, I put it through a rig­or­ous bar­rage of tests, includ­ing memtest86, heavy com­pil­ing and cpub­urn. It passed with fly­ing colours.

How­ever, in the past couple of months, I’ve been hav­ing prob­lems with heat. When I ran the tests, it was the middle of winter. Now it is sum­mer, and room tem­per­at­ures can eas­ily hit 35 degrees or more. Using lm_​sensors, I found that my CPU was about 70 degrees or more on a hot day — and that’s just at idle. If I tried com­pil­ing some­thing or play­ing a game like Quake 3 or Unreal Tour­na­ment, it would eas­ily go past 85 degrees. This trig­gers the over­heat pro­tec­tion sys­tem on my ASUS A7V333 mother­board to shut the com­puter down (an Ath­lon can only take 90 degrees before fry­ing itself). I’ve been saved many times by that — had my mother­board not had that fea­ture (most boards don’t) I would’ve lost my CPU.

I had to use my sys­tem very care­fully to pre­vent shut­down. This is obvi­ously unac­cept­able, but I had to wait until mid-​​December before I could do any­thing about it (I was busy with other things). The heat­sink on my CPU was stand­ard AMD-​​issue — noth­ing spe­cial. I decided to pur­chase some­thing bet­ter, finally set­tling on the Thermal­take Vol­cano 9. I made an order on an online shop­ping site and much to my sur­prise it was delivered only three hours later! The owner of the store lives only a block or two away from me, and he decided to deliver it him­self on his way home. Now that’s what I call ser­vice!

I don’t trust myself with expens­ive equip­ment (I’ll mess around with older/​cheaper stuff, though), so I decided to get the heat­sink installed by the guy I bought my com­puter from. He’s a nice guy, and I’ve been deal­ing with him for a num­ber of years, so I know he’s good. I opened the heat­sink box for the first time. This thing is a mon­ster! It was so big that we couldn’t install it without tak­ing the mother­board out. It sounds like a heli­copter, but over time I’ve got­ten used to the noise. What’s import­ant is that I can use my sys­tem at full throttle without fear of burn­ing it out.

Dec 28 2002

I haven’t pos­ted any art­icles on PCLinuxOn­line over the past three weeks because I b0rked my Gentoo sys­tem. I upgraded from glibc 2.2.5 to 2.3.1 and since then I haven’t been able to run cer­tain apps without wreck­ing everything else. I’ve detailed my prob­lem here and here. If any­one can help I’d much appre­ci­ate it.

At the moment I can run most apps, but things screw up when I load any part of KDE (includ­ing Kon­queror) or Evol­u­tion. GTK+ (1 and 2) apps (apart from Evol­u­tion) work fine.

Update [200303-07]: The prob­lem is with my Nvidia drivers:

Hi! I’m the guy who star­ted this thread. I finally man­aged to fix things by turn­ing off Grse­cur­ity in my ker­nel. How­ever, a very sim­ilar (but dif­fer­ent) prob­lem emerged a few months later. It occurred around the time I upgraded glibc to 2.3.1, so I ini­tially thought glibc was to blame. After lots of exper­i­ment­ing with ker­nel con­figs, I dis­covered that I could have a stable sys­tem using Nvidia drivers if I turned high­mem off, sac­ri­fi­cing just over 100MB of RAM (I have 1GB total).

I then came across cigaraficionado’s bug report and updated nvidia-​​kernel ebuild. I com­piled a new ker­nel, this time turn­ing high­mem back on, and installed the new ebuild. The updated ebuild had no effect — using the Nvidia driver made my sys­tem unstable like before.

My hard­ware seems fine. Memtest86 detects no errors in my RAM (2x Cor­sair XMS 512MB DDR333 SDRAM). My GeForce 3 Ti200 card works per­fectly in Win­dows and it worked per­fectly in Gentoo until Decem­ber, around the time I upgraded to glibc 2.3.1. I can’t fig­ure out where the true prob­lem is, but I strongly sus­pect it lies with nvidia-​​kernel.

That’s what you get for rely­ing on binary-​​only ker­nel mod­ules :(