Wednesday, November 30, 2005

AAAAAAAAARGH!

Python has been ported to the GP2X!

That means pyGame can now be used to create GP2X games.

And I've had so little free time available, I still haven't got very far with learning Python.

I'm being punished, I just know I am. I finally discover a language I can learn, and think of dozens of things I could do with it, but then can't find the time to learn it well enough to do any of them.

It's driving me nuts. I've got to find more time!

Tuesday, November 29, 2005

XDMsnow - screenshot!

Following on from my last post:

Innit pretty?!

MP3s suck

I'm not a music fanatic. I like to have some background music at various times, but that's about it: I don't have any major hardware purchases dedicated to enhacing my music-listenting pleasure, or anything like that.

And for background music, MP3 is a great format. But when you really concentrate on it. . . yuck. Seriously.

I just had a go on Pandora, another of those internet radio things. It's working quite well so far. But when it played an MP3 of Life Uncommon by Jewel. . . it was really bad. I know that song well, and this was not right. It was. . . I don't know, flat. It was almost hard to listen to it. I actually removed an MP3 of Flashdance (ripped from a CD I own, before anyone starts) from my collection because that sounded really, really bad.

I know MP3 is aimed at certain types of sound and not all songs will fit its bracket. But I'm growing steadily less impressed with MP3s. They render too many of my favourite songs hard to listen to.

Possibly my current meditation practice is another factor: It revolves around increasing my concentration skills, so I'm listening much more closely to music than a 'casual' listener. I don't know.

I just know I'm incredibly grateful for the Ogg Vorbis encoding. Never mind the fact that less hardware supports it, at least it doesn't ruin the music that I like enough to rip.

Christmas is coming. . .

. . . and it's an old, old tradition that Xsnow gets hauled out.

Of course, it's easy enough to trigger it to run when you yourself log in to an Xwindows session: Just put "xsnow &" in your .xinitrc or .xsession file.

But what about your login screen? After all, that's got far less windows getting in the way, and it can accumulate some impressive snow drifts.

I, of course, use XDM as my login manager, because it's the best. To set up XDM to run xsnow, it's very simple:

cd /etc/X11/xdm
echo "xsnow &" >> Xsetup_0
echo "killall xsnow" >> GiveConsole


Easy as that! From now on, your XDM session will have Santa, Rudolph, Christmas trees and flurries of snowflakes that go away when you log in (If you don't use the third line, Xsnow will run even after you log in)

Xsnow's great. I've even been able to compile it for Cygwin here at work. And it's got lots more options than you might think: You can even run multiple sessions with different-colored snowflakes in each one to make it more colorful (You'll get a warning about the perils of yellow snow if you choose that particular color tho ;o)

There are Windows and Mac versions for you non-Linux users too, so there's no excuse!

Saturday, November 26, 2005

Open Document vs. MS XML

I just saw this comparison on Groklaw

Have you seen how MS's format actually codes the contents?

It's hideous! Unbelievably ugly. Words cannot express the horribleness of the format. I am genuinely stunned at how awful it is: I can honestly say I expected a lot better of Microsoft.

Coming from a Linux zealot such as myself, that should tell you something ;o)

Friday, November 25, 2005

The Wall

My dad's a big Pink Floyd fan - an endless stream of it used to issue from the HiFi in my childhood years.

I was never hugely into it myself, but I got to know a lot of it very well, just because I heard it so much.

In the last year or two tho, I have started to like it. Enough to buy a couple of albums from the secondhand stall in town, anyway. . .

The Wall, in particular, seems to have numerous bits that are still highly relevant today. In fact, probably more so than they were back in 1979, when (according to the album copyright notice) it was first released. Such as:
Momma's gonna keep you right here under her wing.
She won't let you fly, but she might let you sing.
Momma's gonna keep Baby cozy and warm.
. . .
Of course Momma's gonna help build a wall.
Take a look at numerous big players in the technology stakes. Especially the Digital Entertainment and Trusted Computing stuff. "Don't worry. We'll look after all your needs. Trust us. We're only sealing you away from the things we think are bad." sums up their attitude neatly, wouldn't you say?
The prisoner who now stands before you,
Was caught red-handed showing feelings.
Showing feelings of an almost human nature.
This will not do.
And if at least one of their initiatives hasn't struck you as striking against basic human nature, then you really haven't been paying much attention, IMHO. Creativity for any reason other than profit? Ignore it, it's an abberration. Sharing with others? Should be illegal!

etc. etc.

Just something that struck me as my PC's media player randomly selected a PF track as it cycled through my music files, which for some reason is now an illegal collection in some countries, even though I own all the CDs. . .

Thursday, November 24, 2005

As above, so below. Or not.

Something that occurred to me a while ago: I use Gentoo, and that means all my software is compiled from source. When you compile something you have the option of compiling in specific parts of the code for specific functionality.

You might want to compile in support for Esound rather than Alsa or Arts, for instance. You might want to compile the Links text-browser without X11 support. You may want to compile mplayer with support for Windows codecs. And so on.

It's just like compiling the kernel itself: You work out what you want it to do, and compile in support for the things you want, without support for things you don't want.

But it's not like that. Because the kernel has another option: It has loadable modules. This means you can code in support for almost anything, but without having it make the kernel any bigger, because it's loaded separately, and only when needed.

Linux is often touted, even today, as running on software with minimal requirements. Imagine if every feature of every bit of software could be chosen at compile time, as either "in", "out", or "module"

Let's take Firefox as our example.

I never use the "Back, Forward, Stop, Refresh" collection of buttons: I use keyboard shortcuts and/or mouse gestures. These buttons are worthless to me. I'd like to compile them out.

I don't use Live Bookmarks much any more: I have an RSS aggregator on my web page, it works better as it can give me article summaries instead of just the titles. But occasionally, I do want the live bookmarks for some reason. I'd like Live Bookmarks to be a module: Not loaded when Firefox starts, only loaded into memory when I actually click on the Live Bookmarks subfolder.

Some people might not want any bookmarks at all: They might think del.icio.us is all they need.

Some people don't use Firefox extensions at all. But they still have all the functionality for it, none of which they're using. Same goes for themes and Plugins. And so on.

Linux code is almost invariably modular. I gather Xorg is being re-written to be even more modular to make it easier to maintain and upgrade the code.

What if that modular nature were expanded even more? What if every piece of software were as configurable as the kernel? You could still use "Yes, chuck in the kitchen sink as well" binaries for people who don't care. But for people who do care, being able to compile in only the features that are needed could make Linux as configurable as it's possible to get.

It's not so it could run on old hardware: That's all well and good, but doesn't really benefit many people.

But rather, so that it could run on very modern hardware: PDAs and other small devices that are cutting-edge but not very powerful. If you could make Linux software as lean as possible, you could really increase the number of Linux apps. that these devices can run, and the speed at which they can run them.

Especially if you could make it so that it didn't interfere with existing ways of installing software, but just added a new one, so you could:

Download a compiled binary with all the typical options built-in

Compile from source with all the current typical options

Call up a "menuconfig"-style menu that allows you to enable, disable, or modularise every possible feature of the software.

I reckon you could really boost Linux' appeal in less-powerful devices by doing this. To say nothing of the benefits of having highly modular code.

Just a thought. . .

It isn't easy being geek

I'm used to the frequent "The printer's not working!" and "Why can't I save this file?"type questions: I get them every day.

But at this time of year, I start suffering from "Where can I get a PSP cheaply?"and "Will an iPod work with a Windows PC?" and the like.

And the trouble is, I'm too much of a geek to give an authoritive answer. Less-geeky people would own a PSP and an iPod and all that sort of thing. But I have a GP2X. Less-geeky people use iTunes, I'm trying out last.fm (check the link over ->) and Gnomoradio for my non-CD music needs.

I can give a pretty good answer most of the time, because I keep current with such matters, but it's not definitive because I'm not an actual user. So when there are questions about battery life, prices, et al, I start getting vague.


I had a request from http://www.tectonic.co.za to republish my Linux != Windows article, since altho my whole site is under a Creative Commons license, it's a non-commercial one. It was a rather out-of-the-blue request, so I've no idea whether or not to give permission.


Due to my continuing email debate about coders and interfaces, I updated yersterday's post on interfaces, and put a link to it into the article itself.


And I'm trying to learn Python, learn how to use Blender & Gimp a lot better, create a completely new FVWM theme as part of an FVWM tutorial, post to a blog, and still have time to do do my work & have an actual life. . .


You don't hear about luddites worrying about these things!

Wednesday, November 23, 2005

Why aren't cars flexible?

Another random thought strikes. . .

It's a truism that most technological innovations are preceded by nature. Computers are just very simple brains. We envied birds for flight for centuries before aircraft. Digital cameras are still light-years away from matching our own eyes. Etc. etc.

This has lead to many people looking to the natural world to try and borrow the inventions instead of coming up with them independently: People want to manufacture spiderweb silk, they're trying to work out how those odd lumps on humpback whales can give turbulence without drag, and so on.

So why is it that cars & other vehicle haven't started emulating the dolphin approach to streamlining?

Different speeds & conditions create different demands for streamlining. Dolphins deal with this simply: their surface is highly flexible, and can be 'moulded' by the pressure of water against it, almost literally 'flowing' out of the water's way and ensuring that they are always as streamlined as possible, regardless of speed or body position. I believe bird feathers do the same sort of thing in many cases, as well.

Why is this not applied to cars? The biggest concession I've seen so far is a spoiler that pops up occasionally on a few posh sports cars.

Flexible bodywork would help to improve streamlining, which obviously cuts fuel consumption. It would also be good in crashes: Cars are already designed to crumple to absorb the force of the crash, why not go the whole hog and make soft & flexible body parts? Pedestrians hit by cars would be better off, and so would all those car owners who've had a minor prang result in hundreds worth of repair bills to bend the annoying dent back into shape.

You might be able to make a case for such bodywork being less durable than the existing ones. I don't necessarily agree: There are numerous soft-yet-tough compounds already in existence, and unlike their metal counterparts, soft polymer car panels wouldn't rust.

Maybe that's the problem. I know we could produce rustproof cars right now for the same cost. The reason we don't? Nobody would replace them. Or so say the manufacturers.

Ah well. . .

Coders & interfaces

I received a bit of feedback on one of my web pages (Guess which one)


The writer disagreed with one thing I said in particular: The bit that reads:

When somebody devotes a large chunk of his own time to create a piece of software, he will make the user interface (UI) as good as possible. The UI is a hugely important part of the software: there's no point having functionality if you can't access it via the UI. You might not know what it is, but there is always a reason why the UI works the way it does. That reason? Because it is the best UI the creator could create.

Before you insist that a more Windows-like UI would make the software better, bear this fact in mind: The creator of this software, a coder who, by definition, knows far more than you do about this piece of software, doesn't agree with you. He might be wrong, but the odds are against it.

He essentially was of the opinion that coders make awful interfaces, and that a coder's idea of a good, simple interface was an end-user's nightmare.

I disagree, as I said in my reply, quoted below for the interest of anybody who's interested:

Your points are all completely valid and accurate, but irrelevant to the point I actually make in the article. Your stated definition of a good user interface is exactly the one I address as a problem in the article: The definition of "User friendly software", which has become a synonym for "easy to use immediately without any prior knowledge"

Undoubtedly, a coder who sits down to write a piece of software for text manipulation will write a piece of software that a "typical" user will find horrendous to use. This is perfectly illustrated by vi, clearly a coder's text editor, and absolutely nothing like a non-coder's text editor, such as Windows Notepad. By "user-friendly" standards, vi is an utter loss and worthless as a text editor. And yet it's still in widespread use today, gaining new converts (such as myself) as well as keeping it's "old-school" users.

A coder who writes a piece of software for a task writes it to do so as efficiently and easily as possible. But because he writes it for himself, he has to take no account of "user friendly" concerns: He can happily say "'[ESCAPE] colon double-you queue [EXCLAMATION]' is a great way to save a file and quit the application!" His software will do everything it needs to do, with just a few keystrokes. It will also be an absolute nightmare for other users who don't know what keystrokes to use, but that's not his problem: He wrote it to do a specific job well, not to be intuitive and obvious to other people.

Or for a perhaps more relevant example, let's consider a simple, everyday task: Unzipping a multi-file archive.

On "user-friendly" Windows, this involves double-clicking the file. Up pops a new WinZip window, showing you all the files in the archive, the location in which it will extract them to, and some big, easy-to-understand buttons. To extract the file, you click the "extract" button, and with just one or two more mouse clicks, you're done.

Sit a "user-friendly" addict in front of a Linux shell and tell him "Unzip that .tbz file" and he won't even know where to start. Even if you give him the hint "Use 'man' for help and the unzipper is called 'tar'", how long will it take him to work out that "tar xvjf filename" is the magic combination he needs?

By a "user-friendly" definition, tar is a complete failure: It's a coder's unzipper, and unsuitable for "user-friendly"-demanding end-users. And yet it's still ubiquitous throughout the Linux world. Why? Because its nasty, unfriendly, failure of an interface is simply better than WinZip in many circumstances.

Consider, for example, you have a hundred Zipped archives, one of which contains a file you need - a possible enough occurrence if you run regular backups on your machine and accidentally delete a file you shouldn't have.

Using "friendly" WinZip, I may have a hundred double-clicks to do to find this file. I'm going to be there a long time.

Using our "failure", tar, I can find it with a one-line instruction by using tar's "list contents" switch and piping it through a "grep filename". I'm going to find my file in a matter of seconds.

So to return to my point: I never say, anywhere in the article, that a coder will create a "user friendly", intuitive, simple-to-use interface to his software. To do so would be laughable, and your point that coders make poor interface-creators is self-evident in a vast multitude of software.

Even in "user friendly" browsers like Firefox & IE, there is failure to make use of simple UI rules. The "Back" button is the most used browser button, and should therefore be larger and more obvious than the others. Instead, it's no more prominent than the rarely used "Forward" and "Stop" buttons. Why? Probably because coders use "Alt-Left" and never actually touch the "Back" button.

However, I do say, and I maintain, that a coder will make the user interface as good as possible. Not as friendly as possible, nor as intuitive as possible, but as efficient, powerful, simple, and effective as possible. An important thing to remember when comparing comemrcial projects to FOSS ones is that, typically, in FOSS the coders creating the software are almost invariably also the end-users as well. They aren't hired by another concern to create software that they will never use, they're creating software for their own use.

The coders out their working on Firefox are all browser-users. The people coding the Gimp are graphical designers who are adding the features they require in the way they require them. Gnome is being created by people who want a better Desktop. And so on.

So while it may be true that that the end-user should be the one who defines the interface, not the coder, in most FOSS projects, unlike most commercial projects, the end-user is the coder. That's an important factor to consider: If somebody is both a knowledgeable end-user and a knowledgeable coder, and he says "This is the best way to do it", he's in a position of authority on the subject that few others are qualified to match.

Easy to use and "ease of use" are two very distinct concepts today. It's easy to use tar to find that one file from a hundred archives, but WinZip is unquestionably the software that scores highest in typical "ease of use" comparisons. That's all well and good, but it completely ignores the fact that spending a little time learning how to use a more-efficient but less-intuitive application can result in saving time perpetually afterwards.

I work in an office where our job consists entirely of writing medical reports, which contain many frequently-used terms. By spending a half-hour teaching my technically-illiterate co-workers how to use MS Word's AutoReplace option to effectively write out long, frequently-used terms for them, I've increased the amount of work they can do in any given day. By making them invest some time in learning how to do something non-intuitive, they've made back a significant amount of time ever since. And will continue to do so tomorrow, and ever after.

An application's "user-friendliness" only ever matters at the start. If you have a totally non-intuitive, "unfriendly" piece of software, that only matters when you first put the users on it. After you've taught them how to use it, it no longer matters that it isn't friendly, because they can use it perfectly well regardless. If that application then means they save five minutes out of every hour because it makes up for its lack of intuitiveness by being superbly efficient at its task, then that application is the one that should be used, even if it does mean you had to spend an hour or two teaching them how to use it on day one. In under a week, that investment in time will have paid for itself. Considering an application's suitability for a task solely on the basis of how fast a user can start using it will result in bad decisions most of the time.

As a personal example, I recently wanted to design a new theme for a window manager: Icons, wallpaper, and all. MS Paint is unquestionably easier to use than the Gimp or Photoshop: I had to do a Google search just to find out how to draw a rectangle in the Gimp, for Heaven's sake!

But while I could draw a rectangle in Paint the moment I started out, how long would it have taken to create a graphic such as the wallpaper in this image:



with just "friendly" Paint? I'd have been there forever! By spending a little time learning to use less-friendly software, I accomplished a task in minutes that would have taken hours or just been downright impossible with friendlier but less powerful software.

So I must say again: I disagree that coders make poor interfaces. They don't often make good "user friendly" interfaces, agreed, but they make supremely efficient and functional interfaces. And that's what counts in Linux software.

If you doubt that fact, try a simple test: Go onto a typical Linux forum and ask "How do I unzip this .tbz file?" and see if you get pointed to tar, or to some user-friendly, GUI-touting unzip software.

Tuesday, November 22, 2005

Today: The best gaming & multimedia machine ever made

Over in America, they started selling the Xbox 360 - Microsoft's latest attempt at taking over the home entertainment industry. I gather they've carefully made sure the supply didn't come even close to meeting demand, to ensure they'd be sold out very fast & create a media buzz.

Not that I care about that silvery tat MS is touting, you understand. I only mention it because I got something far better in the mail this morning. Yes, my GP2X has arrived!

A small handheld based on Linux, it can play movies, it can play MP3s and Oggs, it can play games, and it can even output them to TV so your handheld can be used as a TV games console too.

I haven't had any chance to play with it yet, sadly, I just wanted to gloat about the fact that it had arrived at last :o)

The trials & tribulations of maintaining a Linux page

I've been a Slashdot reader for a few years, something that's much easier when you set your comments view to only show the better posts, and I'm all-too-aware of the Slashdot effect.

Accordingly, my heart skips a beat every time I check my stats and see that somebody was referred to my site via /.

So far, it's always been linked from comments a reasonable way down, fortunately. I don't think my server could survive a direct link from the front page. . .

But it can be very interesting to see where my stuff winds up getting linked from. You get a lot more feedback by seeing what people say about you in forums than you do waiting for them to tell you directly via email or comments.

Of course, you have to be prepared for the "What a load of crap" comments (especially from people who haven't actually read what you wrote, for some reason) but even those can be constructive. And it's always nice to see that people have linked to your stuff because they think it's a worthwhile read.

The latest ego-boost: LinuxForums.org have made a link to my site a sticky in the Newbie forum. So at least a moderator thinks it's a good read ;o)

Somebody sell me a Sony CD!

It could be worth $100,000 - that's what I call an investment! :o)

This brightened up my morning no end. I had to fight to avoid laughing out loud :o)

It's not just that Sony's getting shafted for it's extremely anti-social DRM. It's that you can feel all those litigation-happy Americans rummaging through their music collection, looking for any DRM that they might already own and trying to make a lawsuit out of it.

Imagine the questions being asked in all the media companies right now: Every consumer that buys DRM could potentially cost us a tenth of a million? Is that really more than casual piracy is going to cost us?

I think not! Sony has set DRM and its acceptance back years with this scheme: Public awareness is much greater, and the industry has just had it thrown in their faces that No, people aren't willing to be sit back and be treated like criminals grateful for any scraps they get thrown.

Sell us a decent product, sirs, or we won't buy what you sell. Sell us a bad product that you pretend is a good product, and you will be held accountable for it.

Your priority is pleasing your customers, not running roughshod over them in the name of preventing piracy. Remember?

Monday, November 21, 2005

A DRM problem that needs addressing.

Most people who know much about the subject agree that music CDs and DVDs are overpriced - discs that costs pennies to make are being sold for pounds.

Most tech-savvy people agree that this is a big incentive for P2P piracy and say that if the industry wants people to buy instead of download, they should drop their prices to a more reasonable level.

The industry, naturally, says "Charge less money? Charge Less Money?!?" and slaps another DRM scheme on their products to maintain what is effectively their monopoly.

The thing is. . . ignoring all the "DRM just turns honest users into pirates" debate, something that seems to be largely ignored is:

A DRM-free CD is worth a lot more to me than a DRM'd one. If I buy a non-DRM CD, I can rip it & play it on my PC, copy it onto an iPod, copy it to tape & listen to it in the car. . . I can do a lot with this CD. Legally and ethically, I can do a lot more than just play the CD in a CD player.

If, however, I buy a DRM CD, then I can't do those things. And yet the DRM CD will cost just as much as the non-DRM one.

Faced with this immense loss in value to the consumer, what exactly is the justification for keeping the price as high? If I buy a DVD player with less features, I expect to pay less. If I buy a DVD with less features, why am I expected to pay the same?

Anybody?

If you want me to buy a CD or DVD with a shedload of restrictions, I might actually accept that. If the price reflects the decreased value it has. I'd be willing to buy the occasional DRM'd DVD if it only cost a couple of pounds.

But pay as much to get much less? How does this benefit me, exactly? I have a GP2X arriving tomorrow (I hope) and I intend to transfer DVD movies & CD music onto it. I won't be able to do that with Creature Comforts because (I discovered after buying it) it's copy-protected and won't run on my computer.

The DVD is therefore worth less to me than all my others. And yet it cost me just as much. DRM has cost me a large chunk of the value a DVD has to me.

I'm not a pirate. And yet, DRM is causing me problems. And it's not giving me any compensation for those problems.

Why, therefore, should I be anything but anti-DRM?

(And, one other thing to ponder: Creature Comforts is avilable on several bittorrent sites. So what exactly did the DRM accomplish, other than pissing off at least one paying, non-pirating customer?)

Christmas began yesterday

As you may have gathered from other posts, we suffer from condensation in our flat. This year, it's been far worse than usual: We've got some decent radiators keeping the place warm, so the air can stay a lot more humid. Every window in the place is dripping with condensation every morning.

So we figured it was time to bite the bullet & buy a dehumidifier yesterday. Then my parents rang on anopther subject, and when we mentioned why we were out shopping, they told us we weren't to buy a dehumidifier under any circumstances.

Three guesses why. . .

So it seemed a bit silly that we spend a month squeegeeing our windows dry because of Xmas, so they offered to let us have it now. Early, and it does spoil the Xmas thing a tad, but it's far too practical not to, really. So yesterday afternoon, we took receipt of a big & rather posh dehumidifer.

By night-time, it had gathered 3 pints of water in its holder. The whole place was much, much warmer. Think about it: How long would a kettle have to boil to evaporate all that water? That's how much heat was locked up in the evaporated air. Getting the water out makes a big difference. And we've still got quite a bit to go: The radiators are good at heating the place up, the summer was so mild that the winter is a very cold one, so there's lots of water to get out of the air and down the sink.

And I have an email in my inbox that I've been waiting for for weeks. The contents?

Hello,

This is to confirm your recent GP2X order has now been sent to you.
Oh yes! Games, movies, music, all in one compact, Linux-based handheld package. I've been waiting for this for months!

Lastly, I'd like to complain about another Christmas-period water-based bugbear of mine. Frosted car windscreens.

There are three ways to get the layer of ice off the windscreen. In order of popularity:

  • Get a (usually plastic) scrapey thing and chisel the ice away. This is a bad idea for one simple reason: Scraping like this puts microscopic scratches in the glass. And the rougher a surface is, the easier water can condense onto it, and the more frost you'll get forming. You're exacerbating the problem every time you rasp the ice away like this. The only way to do it without this problem is to use a softer scraper (a rubber squeegee is good) and run the car heater on the inside at full blast. This melts the ice from underneath, and you can simply slide the ice off. Very few people seem to do this, however. They scrape it off in a way that sends shivers down my spine.

  • Get a can of spray-on de-icer. This is great, only it's solvent-based and rots rubber. That means the seal holding your windscreen in place, and the blades of your wipers, are both being disintegrated every time you use it. Plus you need to buy a new can regularly.
Note that these approaches are the only ones you can buy in the shops. Too many people think this means they're the only ones available. That's because the third alternative is better than either and completely free, thus disliked intensely by shops.
  • With any water-holding recepticle, such as a bottle, jug, or kettle, pour cold water (Not hot. Hot water on icy glass can result in spontaneous shattering!) over the ice. The water, although cold, is still liquid and therefore relatively warm. It will wash away the ice. Then use the wipers to remove the water before it freezes. Voila, your car is free of ice in seconds, completely free and without doing any damage to anything.
Year after year I see people wrecking their windscreens by chiselling at the ice with platic, or even metal, scrapers. They spend ages at it, without even using the car heater to help them, and it's totally uneccesary. Turn on the heater and give it a minute and you'll be able to slide the ice away in seconds; Or better still, keep a bottle of water in the car and just wash the stuff away!

Sunday, November 20, 2005

Fun with forkbombs

I figured it was time I locked down a couple of my settings. Specifically, preventing runaway processes from crashing my PC by spawning an endless number of new processes - a forkbomb.

If you want to do this yourself, you can: Just enter the following text into a console & press enter

:(){ :|:& };:

Unless you're protected from forkbombs by limits placed on the number of processes a user can run, this will lock up your PC. To check beforehand (a good idea if you don't like hard reboots!) run "ulimit -a" to get a list of your limits.

You'll see something like:

core file size          (blocks, -c) 0
data seg size (kbytes, -d) unlimited
file size (blocks, -f) unlimited
pending signals (-i) 4095
max locked memory (kbytes, -l) 32
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 4095
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited


In this setting, I can run 4095 processes before I'll get error messages. That's rather high, although better than completely unlimited.

So I edited /etc/security/limits.conf with the following line:

*               hard    nproc           100
And the next time I check my limits:

core file size          (blocks, -c) 0
data seg size (kbytes, -d) unlimited
file size (blocks, -f) unlimited
pending signals (-i) 4095
max locked memory (kbytes, -l) 32
max memory size (kbytes, -m) unlimited
open files (-n) 100
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 100
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited

100 processes should be plenty for anybody. Running the forkbomb now will generate lots of errors, but not actually lock up my machine.

I've also switched the Xterm that I always run in my desktop (See my screenshots post) to run with a higher nice level - by executing it with nice -n 20 xterm instead of just xterm. This means that if a normal process, with a default nice of zero, crashes in a using-up-all-resources way, the xterm will be unaffected and I'll be able to kill -9 it with much more speed.

Neither is likely to save me from a huge headache, to be honest - forkbombs are usually a problem caused by malicious users, but I don't allow remote logons, and if all a cracker can do is crash my PC, then frankly, Who Cares? And it's usually easier to end a gone-crazy process by Ctrl-Alt-Backspace-ing out of the X11 session. But it's better to have them than not to, so. . .

Saturday, November 19, 2005

Bloody noise

Right. Sound.

Sound was never a major feature of Linux when I started out with it more than 10 years ago. MP3s hadn't been invented back then, the only thing I really needed sound for was Doom.

But things have changed, so when I came back to it a few years ago, I was glad to find Alsa had been created. Of course, it still presented some problems, but overall, sound worked.

The main problem that people complained of was that Alsa only lets you play one thing at a time. This was, in my book, an advantage.

The people who complained, you see, where the Windowsy people who switched over to KDE or Gnome and, as on Windows, had a DE which plays noises for the most mundane reasons - like starting up, shutting down, and clicking on something.

I hate this "background chatter" intensely. In my book, sound should be played when it's asked for, and at no other time. If I'm not watching a movie, playing music, or talking via Skype, then my speakers should be silent.

The people who complained about Alsa's one-track approach were the ones who'd get a system beep go off as they started their media player, and find that the media player wouldn't work, or who'd play an MP3 and then get an error message when their email tried to beep at them. This, they found, was annoying.

I agree. That's why I shut all the damn things off. I don't even let my terminal beep at me when it's got a problem: I don't want my music to have system-error-muzak mingled with it.

So I saw no problem with Alsa only doing one thing at a time. Mostly. Very, very occasionally, I'd get some interference that was annoying, like a sound from a browser Flash dohickey going off just as I was starting up XMMS; or shutting down XMMS improperly so it stayed holding onto the sound /devs even tho it was gone.

Small niggles, but niggles. So when I found that Alsa can do multiple sounds at once, I decided to give it a go.

I created a file, .alsafile, in my home dir, and put the following contents into it:
pcm.dmixer {
type dmix
ipc_key 1024
slave {
pcm "hw:0,0"
period_time 0
period_size 1024
buffer_size 8192
rate 44100
}

bindings {
0 0
1 1
}
}

pcm.dsp0 {
type plug
slave.pcm "dmixer"
}

pcm.!default {
type plug
slave.pcm "dmixer"
}

pcm.default {
type plug
slave.pcm "dmixer"
}

ctl.mixer0 {
type hw
card 0
}

This bit of code enabled Alsa to "mix" sounds: The reason a default Alsa only does one sound is that the player grabs the /dev nodes for sound, and don't let anything else use them. By using dmix, you create an intermediary: Dmix grabs the sound devices, and everything else grabs dmix. Multiple sounds at once now work fine.

So I was happy, and everything worked fine. Until Skype. Skype didn't work, constantly complaining that it couldn't find either arts or esd - the Gnome & KDE sound mixers. Annoyed, I shrugged & installed esd. Then told everything to use esd, and once again I had working multiple sound, only via a different mixer.

And all was well, until Skype stopped working recently. Re-installing it, I found it didn't need esd at all. But it was all set up & working, so I left it.

Until today, when suddenly XMMS wasn't playing any sound. No erros, it thought it was playing. But it wasn't. So I switched it back to Alsa, and it played fine. Esd has just become more trouble than it's worth: I wipe it out, recompile mplayer without esd support, change Gaim's settings to use Alsa, and I'm back to square one.

Except the Sound Scope GKrellM plugin no longer works: I can't see my sound output on a graphical display.

*sob*

Fortunately, good old gentoo forums come to the rescue yet again: "amixer get Capture" shows all well, but "amixer get Mix" doesn't: capture is switched off. "amixer set Mix cap" fixes this, and suddenly, GKrellMSS is working.

Except the stereo monitor seems to think everything is only going out via one speaker: "Girls just want to have fun" has a great stereo bit at the start, and
GKrellMSS's twin monitors show a constant sound from just one speaker.

So that's still broken. But everything else works fine.

Perseverance is, I'm told, a wonderful trait. . .

The joys of shopping

There aren't any.

This was brought home to me yet again this morning, courtesy of my mother.

Having taken last week off entirely so that I could go shopping without all the weekend hordes doing their Xmas buying, you can imagine how thrilled I was by my mother's request that I go & buy myself a new shirt & trousers for her to give me for Xmas.

Humpf.

So we went to M&S where I'd seen a shirt I rather liked, but hadn't bought yet. Other M&S stores didn't have that one when I looked - only a darker one that wasn't quite so nice. When I went there yesterday, my local M&S didn't sell it any more either - only the dark one.

Butthe dark one was still an OK shirt, so I went to get it.

They'd sold out of it, too.

Spent a while pratting about with other shirts & trousers, which either looked awful or didn't fit, despite being the right size on the label.

Gave up & headed back to the car. On the way, we passed TK Max & Lou suggested we try there. Reluctantly, I agreed.

I don't much like TK Max - they have some hideous clothing & it's badly laid out. However, they have one redeeming quality that at least makes me willing to enter them: They arrange clothes not by brand, but by size.

This amazingly good idea I've encountered in only two or three shops, and it still baffles me why other shops don't use it. It's such a wonderful experience. It eliminates forever the chore of looking at every bloody item in the shop, deciding which ones you like enough to buy, and then finding that they don't have it in your size.

I'm sure you've had it happen numerous times: "Oh, that's a nice shirt that doesn't fit me." "I like these trousers that they haven't got in my size." "I'd buy two of these jackets if not for the fact that I can't even buy one."

Instead, you can simply go to the bit of the shop that holds all the clothes in the place that will fit you. And then you decide which ones you like, and you buy them. No frustrations at all: If it's in your section, you can buy it.

Wonderful! And yet, so rare!

So, I hunted down a shirt that I rather liked, because it wasn't blue (All my casual shirts are blue. Absolutely all of them. I'm sick of having to choose between a dozen different blue shirts) and some jeans that I liked because... well, they were jeans. What difference does it make, they're all blue denim tubes sewn together at one end.

So that was that sorted, and now I can give them to my mother tomorrow and act all surprised when I get given them for Christmas next month.

I hate shopping. Especially for clothes.

And especially when I have to do it at the weekend, a month away from Christmas, right after a whole week off when I could have gone shopping for the poxy things in peace!

Thursday, November 17, 2005

Sometimes, it's easiest to cheat

When it comes to learning Vi, anyway. . .

When I was trying to get my head round it, I went through vimtutor and made notes of the interesting & useful commands. The most useful ones, I saved. And here they are, for whoever wants them:

(The formatting doesn't preserve wonderfully, I'm afraid)
===============================================================================
VIM cheat sheet
===============================================================================

h, j, k, l - left, down, up, right
) - Beginning of next sentence
( - Beginning of current sentence
$ - end of line
^ - start of line

CTRL-E - Scroll down a line
CTRL-Y - Scroll up a line
CTRL-F - Page down
CTRL-B - Page up
CTRL-D - 1/2 page down
CTRL-U - 1/2 page up
CTRL-G - Show position
n Shift-G - Move to line n

/text - Search for text
n - Search for next instance of text
:set ic - ignore case
:set noic - stop ignoring case
% - Find matching ) > ] etc
:s/old/new - Change the next occurence of old to new
:%s/old/new/g - Replace all old with new
:n,ns/old/new/g - Replace all old with new from lines n to n

u - undo last commands
U - undo whole line
CTRL-R - undo the undo

r - replace current character
R - Overwrite text
x - delete current character

d - delete things
dw - delete word
dnw - delete n words
de - delete word but not space
d$ - delete to end of line
dd - delete line
dnd - delete n lines

p - put

i - insert text
o - Open line and enter insert mode
a - append text
A - append to end of line
:!command - execute external command
:r filename - read filename into current file

:w (name) - write (to file name)
:n,n w (name) - write lines n to n (to file name)
:q! - quit without prompting

mx - mark current position as x
`x - move to mark x
'x - Move to start of line containing mark x
:marks - list current marks

guw - Change current word to lower case
gUw - Change current word to upper case

yw - yank current word
v - visual mode (select)


I hope that helps any prospective Vi users. If not, run through vimtutor and make your own :P

Living in the past...

Have you been struck yet by the number of corporations that are supposed to be cutting-edge that are instead about a decade out of date in their thinking?

I mean, their whole DRM approach is laughable - they make life harder for the average customer, who wouldn't be trading MP3s in the first place, and ignore the fact that it only takes one pirate to put something on P2P and the whole world can get a DRM-free copy.

Somebody needs to sit the execs down and say "Look, imagine a P2P which can make ten copies an hour. (And that's a very conservative P2P speed) Now imagine one person breaks your DRM:

In one hour, there are ten copies
In two hours, there are a hundred
In three, a thousand
Four hours, 10,000
Five hours, 100,000
Six hours, a million
And in only ten hours, you've now got more copies than people living on the planet. That's why even a DRM scheme that stops 99.999% of copiers will not do any good. P2P makes numbers irrelevant, find a better solution!"

Something like that might possibly make it into their heads. Baby steps.

But then you see the whole Printers & Game Console thing. And you just sigh.

Here's the wonderful bit of logic they used here: "We have one product, that is very hard to duplicate at a lower cost than we could supply it at. We have subsidiary products for it (ink & games) that can be replicated very cheaply, in fact virtually free.

So, where should we try and make our money? The easy-to-rip-off product, or the hard-to-rip-off product?"

And then they go and sell their printers & consoles at LESS than they cost, and sell the ink & games at ludicrous prices. And then people supply ink & games at pennies, and so they come up with all sorts of schemes to make it hard to supply ink & software.

FFS! How dumb do you have to be?

They could supply games at $1 each and still make a profit on them. Same goes for ink fills. Instead, they supply stuff that's easy to rip-off at hugely inflated prices to cover the cost of the stuff that's hard to rip-off sold at a loss, and then they complain that people are under-selling them.

And then you get such utter stupidity as the DMCA being used to prevent ink cartidge refills, and people downgrading their PSP firmware so they can install homebrew games, and Howto guides on taking an Xbox apart for modding without damaging it.

What is WRONG with these people? Is it so hard for them to understand that the world has changed, and the old tactics won't work any more? They're supposed to be the ones who understand this better than anybody!

Plus, if they worked out just how their futile efforts were causing so much resentment, they might realize just how pointless it is for them to keep trying to get people to switch away from Linux, BSD, GNU, and all the other Free initiatives by pointing out how hard to use they are.

Who cares? I'm sitting on a computer whose OS has been designed 100% to maximize what I can do with it, not to maximise what I can't do because corporations make more money that way.

Tuesday, November 15, 2005

Another screenshot

Yes, I know, I did a post on screenshots just days ago.

Well, here's one more. It's my login screen, for any curious individuals:



It's done with the XDM login manager, none of this messing about with the "more functional" GDM or KDM - both of which are nowhere near as far ahead of XDM as they'd like to think!

Courtesy of XDM, I can see what my PC is up to in regards to CPU, disk, and network usage (I'm paranoid); get updates via portage; and reboot or shutdown at will, without any sudo or root logins.

Monday, November 14, 2005

Xmas shopping begins

And man, am I glad I was wearing my new shoes! After hours of trudging around the Bluewater shopping mall, I usually expect my feet to be killing. Instead, there was barely a twinge. I'm impressed.

Just as well, as my shopping success was. . . underwhelming. My mother is now completely sorted out. That just leaves my father & gf and my sister-in-law.

Ho-hum.

We collected my parent's dog on the way back - they're in France overnight, so we're dog-sitting. He's a bit subdued - he was recently diagnosed with throat cancer, and has just had his first blast of chemotherapy, plus his throat is still sore from where they hacked a large lump of it out, plus he's never too happy about being away from home, altho he does quite like out flat in many ways - it's small & cosy, and he's a clingy sort of a dog. Which can be awkward, given that he's an alsatian-collie cross, and so very large.

I saw something in Bluewater that I must add to my Xmas list now, as well (People are always asking me what I want ofr Christmas, so I've gotten into the habit of putting a list online) - there's a Python Cookbook from O'Reilly that looks pretty good.

I've made a start on getting into my Python book again, by the way - I'm several chapters in, and have two pages of notes so far. With any luck, I'll get a good bit further in during my week off.

Sunday, November 13, 2005

Fighting the Shoe Event Horizon

I've been needing some new shoes for a while now. In town yesterday, our route took us to the cycle shop, which took us past the running shop I bought my jogging trainers in. We figured that, tho they're a running shop, they might have something suitable for general walking as well, so in we went.

If you really want running shoes designed for serious runners, you should of course disdain utterly the high-street 'sports' shops and the Nike and Reebok style of trainer. These are fashion items, not sport equipment - kinda like an iPod is never going to replace an audiophile's roomful of hifi equipment, no matter how cool & fashionable it may be.

The diference is apparent from the moment you enter the store - somebody trying to sell you Nikes will ask your shoe size, hand you the requested items, tell you they look great & are really popular, and sell you whatever is comfy enough to part you with the ripoff price.

However, in the running shop, they want you to take off your shoes & socks so they can examine your feet, the way you stand, how you walk, and so on. Then they point you at the 3-4 types of shoe they sell that are appropriate for you, taking into account your foot's shape, your posture, how you spread the load over your soles, and so forth.

Then they make you try it on in multiple sizes, which they (unlike any other high street store) have in half- as well as whole-size numbers. My jogging shoes, for instance, are 10.5s, whereas I generally wear 11s for other footwear.

So I bought some jogging shoes there a while back, since when I've had absolute zero issues with knee pain. So I had a fair amount of faith in their being able to supply me with some shoes that are better than my current ones, which in fact cause me such problems that I can't wear them any more.

I can feel you thinking "This seems a lot of effort to get some comfy shoes. And how can ordinary walking shoes cause problems, anyway? Isn't he just wasting time & money on gimmicks?"

And the answer is, no.

This time last year, I was quite literally half-crippled from RSI. To the point I was close to quitting my job because I was spending 8 hours a day in agony, despite wrist supports, painkillers and an ergonomic chair. Today, I'm so much better that I can keep a blog without pause for thought.

The difference? A book I was referred to by an offchance comment ("I'm a physiotherapist, and it was a revelation to me!" is a high commendation in my book). I bought it for Lou, who has had severe shoulder pain for over a decade - I used to spend 15 minutes massaging it before it had relaxed enough to actually move under my fingers.

She started the excercises, and was nearly bedridden for a day - the rock-hard muscle that had been unremittingly tense for years letting go suddenly relaxed her entire body so much she could barely move. She advised me to try it myself, and the following Saturday, I started the excercises it advised for wrist RSI.

On the following Monday, I went to work and threw my wrist supports in the drawer. I've never used them since. I get an occasional twinge now & then, but chronic pain is a thing of the past. The reason? My posture was very bad, and leading to RSI. It's still not completely fixed, but it's getting there.

And (to return to my point) your entire posture affects, and is affected by, your feet. If your feet are badly placed, everything above them is thrown out of alignment to compensate.

Put shoes that don't offer the right support on the feet of somebody whose posture was so badly aligned it nearly disabled him, and trust me, he'll notice the problems PDQ. My old shoes were giving me headaches and serious foot pain. The only shoes that didn't were my jogging shoes. But they're very thin & lightweight, not what you want for cold, wet, muddy winter days. I wanted something more sturdy & protective. And comfortable.

So in to the shop we went & explained this. No need for all the foot- and posture-studiying this time, he took a glance at my jogging shoes and knew exactly what feet they would fit, so that saved a bit of time. They only had two shoes that fitted me that were of a winter type, so I tried those. First the blue in size 11 (my usual size), but they were too large.

So he got out the blue in 10.5 (my trainer size), but they were a tad too large still, and too lightweight for my taste

So I tried on the brown, which were more sturdy but only in a size 10, and they fit great. So I bought them.

The HHGttG states that there's a problem with shoeshops: As you get more of them, you need people to buy more shoes to support them. So shoes are made more fashionable & less sturdy so buyers need to replace them more. And the more they buy, the shoddier they become, so the more shoeshops are needed - a vicious cycle, that lasts until the Shoe Event Horizon is passed, and it's economically impossible to be anything other than a shoeshop.

I bought some brown shoes that are very good quality and utterly unfashionable, so I like to think I've done my bit to stave it off ;o)

Wikipedia? ME??

Browsing thru my access stats the last couple days, I've noticed a few people coming to LNW via Wikipedia. To be precise, via the page that tells you what a GUI is. Where I find that it's listed as a reference.

WTF?

Okay, there's a small amount of GUI consideration here and there in the article. But enough to be a link on a GUI definition? Not hardly - if I were a Wikipedia edity person, I'd remove the link to my page myself! I genuinely can't see the connection. . .

In unrelated news, my feet are apparently shrinking over time. More on this shortly. . .

Friday, November 11, 2005

Remembrance day

I rather liked this.

View in quicktime or WMV

Nostalgia & Barney the purple dinosaur

I've mentioned that writing is a hobby of mine. And you may have seen the link to writing.com over on the right.

Well, I was reminded of one of the stories I wrote a while back, and I thought it would bear a republish.

It was one of the many entries I made in the "Stake and Garlic" contest - a monthly vampire-story-writing competition. The prompt for this particular month was "Write a nonfiction article, essay, or list that posits evidence suggesting a famous person or well known character from a movie or book is a vampire."

My nominated celebrity was Barney, the Purple Dinosaur. Read on for why ;o)

I know, he seems an unlikely candidate. But that's the very thing that makes it likely! Vampires are hidden creatures, they don't walk around in evening dress with their hair swept back in a widows peak; they don't have a Transylvanian accent; they don't write their name backwards and expect it to go un-noticed; and they don't work for blood banks or hematology clinics. They do their utmost to be the last person you would ever suspect. So the first rule is, don't suspect anyone who is an obvious vampire.

Barney seems totally non-Vampiric, and therefore is a prime suspect.

However, there are still certain signs that point towards the fact. The thing you have to remember is, they're non-obvious signs. Vampires are clever creatures, they don't broadcast what they are. But they make decisions a certain way, and that way of thinking can be spotted.

For instance, Barney the Blood-Red Dinosaur would be an obvious clue. Barney is not red, because a Vampire easily spots such an obvious clue. Barney is Purple. And purple is a very popular colour amongst the "creatures of the night", whether they be Vampire or just Goth. Barney the Black Velvet Dinosaur would have been another giveaway, of course, so he settled on a gothic colour that isn't quite so commonly associated with Vampires, and can be considered cheerful in the right shade.

So that's the Purple - what about the "Dinosaur"?

The whole attraction of dinosaurs is that they were big, scary animals with spikes and fangs and so forth. The most popular dinosaur is the Tyrannosaurus Rex, whose distinguishing feature is an enormously large mouth with an impressive array of fangs. Why would anyone make a cute kids character from an animal kids like for being non-cute?

Answer: They wouldn't. Not if they were human. A vampire, on the other hand...

You see, Barney is NOT a dinosaur. That's just a cover. He's actually a Dragon! There are enough superficial similarities between dinosaurs (which are large reptiles) and dragons (which are large reptiles) that Barney can get away with it, but "What's in a name?". He might CALL himself a dinosaur, but he is actually a dragon.

Is this significant? Well, yes. It's not known to the population at large, but Vampires and Dragons are connected at many levels. A quick search on Google for "vampire dragon" will show you that: "Dragon" was once a name given to demons in general, and the devil as well. Vampires, being by definition evil spirits, are firmly connected with the Draconic tradition.

So that's the appearance of the character explained for you. His colour and nature are subtle, hidden clues to his bloodsucking nature.

But what about the man inside the suit?

Well, that's a difficult one, isn't it? Have you ever seen him? No. Of course not. You can recognise a vampire for what he is if you see him. Why do you think he designed a character that wears a suit? It hides him from two things - prying eyes of humans, and sunlight.

Of course, sunlight - Barney isn't a nocturnal dinosaur. He comes out in daylight. But when the vampire comes out in the sun, he's perfectly safe, because he's protected by the large, opaque suit that is Barney. How terribly convenient.

Almost as convenient is the way Barney always stays "non-controversial" - no politics, no world events, and NO RELIGION. When have you ever seen a crucifix on Barney's show? Has he ever been splashed in Holy Water?

No.

Now we move onto the important thing: Drinking blood.

Obviously, nobody has ever seen Barney leap on one of the children around him and messily devour them. That, after all, would be bad for ratings.

But vampires don't actually need blood. Blood is just salt water with little bags of red protein floating in it. What a vampire needs is life-force, the energy generated by living things. And he doesn't need to drink blood to get it - a touch, or even line of sight is sufficient. If you can see a vampire, he can drain the life out of you.

And that is why so many vampires work on television these days. All they need to do is appear on-camera, and they can drink from millions of viewers all over the world. Television was a huge boon to vampires. If you've ever watched Barney for any length of time, you may have noticed how mind-numbing it was. That's not just because of the insipid nature of the show, it's because Barney was draining you of life as you watched!

But worse still is the insidious cultural conditioning Barney poisons children's minds with.

Two attitudes Barney promotes specifically mark him as being vampiric.

Firstly, there's his discouraging of individuality. He tries to convince kids not to stand out, to be like all the other kids - to not think for themselves, but do things because everybody else does them. This is not because he wants children to try and fit in to society. It's a promotion of the vampire attitude that humans are nothing cattle - Vampires promote a herd mentality in humans at all opportunities; it's easier for them to deal with a flock of sheep than to have multiple independent humans to contend with.

And then there's his encouragement of suppressing negative emotions. "You've fallen and hurt yourself? Don't cry - be happy!" kind of thing. Not only do all psychiatrists recommend expressing emotions as being healthier than repressing them, it defies belief that you should happy about something bad happening.

Unless you're a vampire! Then it makes perfect sense - "Don't be sad when unpleasant things happen to you" is simply a way of saying "Being bitten by a vampire should make you happy" - once again demonstrating the promotion of a slave-mentality.

I entered this essay in the contest purely as a bit of fun. I actually won the contest with the more serious contender of Sherlock Holmes. But I still feel more proud of the Barney entry, somehow ;o)

Some updates

Firstly, my cold is mildly better - I'm still snotty, coughing, and feeling bleah, but at long last, I can make my ears pop. It requires silly facial contortions every time I blow my nose, but it's a small price to pay.

Secondly, I've taken the hint and made my titles clickable - this seems to be what people prefer.

Thirdly, expect a change in the number of posts for the next week - I've taken the week off to do some Xmas shopping and just to use up some of my enormous backlog of unused holidays (Jealous yet? ;o) That could mean I'll be home bored & posting furiously, or home having fun & barely posting at all, I just don't know yet.

Fourthly, there is no fourth point

Thursday, November 10, 2005

My desktop

A post on LQ calls for screenshots of desktops. Since I've got some uploaded anyway, here's some info about it. It's FVWM2.5, running on Xorg with Gentoo's patches, by the way.

Default screen opens up to look like this (click for full-sized image)


No idea where the Supergirl pic came from, I found it years ago & liked it. I added the sun to the image, but other than that it's not my own work. The border is both a nod to the original FVWM config (steelblue), and an easy way to make apps blend in. There's no taskbar, desktop icons, or other such paraphernalia. What there is, clockwise from top right:

  • A torsmo app - purely because I like the network summary.
  • A GKrellM - for all the other system monitoring. Uses the same fonts & colors as torsmo for a unified appearance. In order, it shows:
    • CPU usage
    • CPU temperature
    • Motherboard temperature
    • Disk usage
    • Network activity
    • Memory usage
    • Swap partition usage
    • Mountable media status (with mount/unmount/eject controls for each)
    • System partition status
    • Sound output
    • XMMS current song display & controls - looks like I was listening to Jewel!
  • FVWM buttons module, which has swallowed within it:
    • FVWM pager - shows my four virtual screens & the windows within each of them. Apparently, I had Firefox running on the next screen at the time of this shot
    • An Xterm - I'm a heavy CLI user, but it's not always worth the bother of starting up a new Xterm just for one quick command
    • An Xclock - for reasons unknown, it refuses utterly to be any color other than black.

That about summarises what I see at startup. Everything else is run from either the main menu, called via the left Windows-logo key or a left-click on the desktop; or from an Xterm, if there's no menu entry.

Next up, here's a few open windows & menus:


The inactive windows have a greyed-out titlebar. The currently-active window (Gaim) has a rainbow effect and coloured buttons.

The buttons, in order:

  • Tux - opens a menu that moves or resizes the window. Movements include to a different screen; sizes include default Xterm & 1024x768 sizes
  • Blue - toggles window to & from fullscreen
  • Green - minimizes window
  • Amber - closes window
  • Red - nukes window (killing all related processes as well)

The main menu shows my icon theme (marbles, obtained from kde-look.org), along with my distro's logo (Gentoo), and a continuation of the rainbow theme, in what I like to think is a tastefully subtle way :o)

The sub-menu, in this case the Media menu, shows what all my other menus look like - plain translucent white, with Tux in the bottom corner. All the FVWM fonts are Bitstream.

You can see that the CPU is working hard at this point, due to the two Xscreensaver hacks I've started from the Xterm - a new graphics card to replace my laughable MX400 would probably help here ;o)

You can also see that I've added a carriage-return to my bash prompt, so I get a blank line between each command - I find this invaluable in making an extended CLI use more readable.

One thing I can't show from here are all the special keyboard controls I've added, but you can read my web page about them if the subject interests you. You can also take a look at the config files should you desire.

Any questions or feedback can be left as a comment, of course!

First cold

Six years ago, when I started working in this place, I caught a cold. Followed closely by a cold, which was succeeded by a cold. I then came down with a cold.

After an unbroken six-month run of colds, my immune system was at such a low ebb I was hit with impetigo as well, an infection that produced ugly scabs on the backs of my hands that looked for all the world like somebody had stubbed out a cigarette on them.

After that, my immune system finally caught back up again. Following which, my immune system has been so hardened against colds I've barely been troubled with them in six years. I did have one about a year ago, but it was a mild irritation to me, whereas it laid up my gf in bed for a day or two.

This week, however, I've finally succumbed. It's not really a cold so much as a cough, which is probably how it got through. But man, is it getting on my nerves.

The coughing I can cope with. The sore throat is an irritation, but treatable. The runny nose I barely notice.

But my left ear. . . There's a pressure bubble in it that just will not pop. And I'm a scuba diver - we know a thing or two about equalizing ear pressure!

I'm not even bunged up, that's the silly thing - why are my ears blocked up when my nose & sinuses aren't? It's bloody daft! And it's been sitting there for two solid days.

Bloody viruses. . .

Wednesday, November 09, 2005

Would my readers do me a favour?

I've made a few changes to my template. It's introduced a niggle: Font size is inconsistent.

I've had the same issue before with FF, where it treated .php files differently to .htm. So I'm not sure if it's just me, or what.

So could I ask you, if you're reading this post, to compare the font in this post on my main page, to this version of it in the Novemember archive, and leave a comment telling me if the fonts match or are different?

Much obliged!

Google competes with MS?

A poster on Slashdot asks states that he doesn't believe Google, a search engine, threatens MS, an OS & desktop supplier, in any way, and doesn't believe MS are really worried about google.


I disagree.

Google don't seem to compete with Microsoft, in the same way as Netscape didn't - MS didn't have their own browser in Netscape's day, after all. MS still acted swiftly to destroy them utterly.

Google, like Netscape, are cross-platform, free, and significantly reduce the impact of what OS you run and what software you have installed. And MS are fanatical about protecting their OS from any such reductions, however indirect.

Not so many years ago, if I wanted to play a computer game, it had to be installed on my PC. If I wanted to plan a route to drive from A to B, I had to use software installed on my PC. Look at pictures?Software installed on my PC. Send & receive email? Software installed on my PC.

Today, I can do it all via Google - search for online game sites, Google Maps, Gmail. . . Instead of having to buy & install software, software that only ran on Windows, software that had cost me money and wouldn't work on any other OS. I can do it free with Google, and I can do it from Linux just as easily as from Windows.

Google might not provide an office suite online yet, but it's easy to forget just how many things you can do via a browser today that used to need locally-installed software to accomplish. And all that software I didn't have to buy & install is software that's no longer chaining me to Windows. It's one less reason to rely on Microsoft, and that scares them.

And more fundamentally, every cent that Google make is a cent that M$ aren't, as far as their world view goes. That's Microsoft's potential revenue being generated by Adsense - MS have a search engine, MS do ads, and yet cusomers still go to Google. I'd be willing to bet that there are a lot of exec's in MS who consider every penny earned by Google as a penny lost by MS.

Watery problems

It's cold this morning. As usual, all the windows in our flat were so heavy with condensation there were small puddles on the windowsill.

We get a lot of suffer from a lot of condensation, but we suffer a lot less than some of our fellow flat-dwellers. This is because most people go about getting rid of condensation the wrong way. So I thought I'd explain the right way here.

Firstly, the typical (and wrong) way of dealing with the situation: It gets colder in the winter, so we turn on the heating. But windows and some other surfaces tend to stay cold, and they get lots of water condensing onto them. To get rid of it, people turn up the heat, or point hot-air blowers at the windows, or whatever, to make the water evaporate away. And because they've spent a lot of time & money on heating the place up, they naturally keep doors &windows closed to keep all the warm air in.

The problem with this approach in that it involves keeping the air in the house, and keeping the water in the air. It will never eliminate the water that's causing the condensation issue.

The logical flaw is, of course, in equating evaporation with elimination: If water isn't solid or liquid, then it seems not to exist. But of course, evaporating water doesn't get rid of it, it just moves it temporarily into the air.

But the next time that humid, water-laden air meets a cold surface, the water condenses straight back out of the air, and the problem is returned.

We can't do much about water vapour. We need to grab our water while it's liquid. Never try and evaporate unwanted water, it'll just come back again. Learn instead to be glad to see liquid water: It's the only time you can grab it & throw it out, breaking the vicious cycle.

The easiest elimination is on windows that open - just grab a squeegee and scrape the water down the window to fall to the ground outside (check nobody's under it first). Other windows tend to need absorbent cloths.

The bathroom tends to be another place to get rid of water from: Showers spray water over the walls, shower curtains, and the like. The bathroom mirror may get fogged up. All of this water should be removed: Shake the curtain, squeegee the tiles, etc. Even though most of this water is scattered spray rather than condensation, it'll only evaporate and become condensation if you don't get it down the plughole first.

None of this will stop condensation happening: We add water all the time, from baths & showers, cooking, and even breathing. But by removing water from the system instead of simply moving it about, it can be drastically reduced. Our bedroom window tends to be saturated most mornings in winter, but our neighbours can have permanently wet curtains in their living room because their French windows are perpetually sopping wet.

Tuesday, November 08, 2005