Brian's Waste of Time

Fri, 23 Jul 2004

Re: Linux's Curse

Adrian Sutton comments on Preston Gralla's comments on linux on the desktop. They both miss the point though, I think. The native linux user interface is bash. Gnome, KDE, WindowMaker, Ice, etc are candy to make it easier to see several instances of bash and vim (or even emacs) at once.

This is important. The greatest component and software reuse idiom ever realized is Unix pipes. The pipeline is probably the most successful and used design idiom in the world, in and out of software or hardware. The native linux user interface is all about the pipeline:

find blosxom/entries -name '*.txt' | xargs head -n 1 | egrep -v '==' | sort 

Took 5 seconds (up from 2 because I forgot head was helpful when you gave it multiple files and tells you which file you are looking at) and gives me the alphabetical list of all my blog entry titles.

find blosxom/entries -name '*.txt' | xargs head -n 1 | egrep -v '==' | sort | grep -i ojb

now gives me the ones with (case-insensitive) "ojb" in the title. Note that I didn't type the line in again, I just used:

!find | grep -i ojb

same thing =)

ssh -L9000:localhost:9000 -t ssh 

And I just set up an http proxy on my local machine, routing through, routing through, to (eventually) my blog. This seems silly, until you need to do such silly things as talk to services across half a dozen NAT's, or access CVS through half a dozen NAT's, or as happened recently, conveniently access a local website from a variety of hosts in order to figure out why it is timing out for some people, but not others (dns issue it turned out) scattered around the world.

Admittedly, I am using OS X, not linux. If your budget allows, I think OS X blows away any linux distro around for a workstation, but if it doesn't, linux blows away Windows. The native linux UI (bash) has been steadily evolved for thirty years to maximize the productivity of people using it. The standard Windows UI (explorer) has been steadily evolved for twelve (?) years to minimize the number of support calls.

1 writebacks [/tech] permanent link