Archive December 2003
Tuesday 30 December 2003
And then we're back to movies. Boondock Saints is quite good. Ideal within its genre, but it's not a genre I'm a particular fan of. I more enjoy its aspects from outside its genre; the superimposing of what the police think happened onto what actually happened, for example.

Terminator 3 is horrible, but at least it doesn't have Sarah Connor screeching all through it. It's well made and such, not too over-CGI'd, but it's horribly horribly written. "Oh yes, he's a robot from the future. Tell her!" "I am a robot from the future." "You're a crazy lunatic." "Hey, robot from the future, tell her who I am, and whatever you do don't show her your already-exposed metal insides, or pull off your mask-bit or anything, because then she'd believe us and that would be horrible." "You are John Connor, leader of the resistance." "See, the robot says that." "But he's just a crazy man." "Hey, robot from the future, nice sunglasses!" "Thank you. I am not really a robot from the future, young lady, we are lying to you." "Good one, Mr Robot! That'll confuse her more!"

Miracles, touted as one of Jackie Chan's favourite of his own movies, is a bit slow and boring. One can see how it would be his favourite; it seems like it was probably more fun to make than many of his others, and has a bit of a plot, and things, but it was too long and drab. That said, we saw a 122 minute version; America's was cut to 105, the UK's was cut to 101, and Germany's was cut to a slim 86 minutes. That last version is probably quite good.

And, saving the best 'til last, Battle Royale. Somewhat similar to Series 7: The Contenders, which we also enjoyed a lot, this is something like a cross between Lord of the Flies, any of the many movies where a person is hunted, and anything good. Perhaps also a little similarity to Cube, with the rampant suspicion and lack of information. It's a movie that would be best seen without having been told the plot, if you can manage it - and also a movie that would be best seen. See it. With your eyes. Even if you already have. Even if your eyes don't work. Get new eyes, and see Battle Royale with them. And then you can gouge them out again if you want. [20:41] [23 comments]
Tsk, a joe-job on my domain-name happening at the moment. Still, at least it's from (silly-random-name)@ rather than any email address that I actually use, meaning I can safely filter the mailer-daemon bounces, and put a temporary auto-responder on for the inevitable angry and misdirected 'stop spamming me' "reply" emails that will be coming in over the next week or so. Hopefully this is just a joe-jobbing where an automated spambot has picked a 'source' domain from the virus-infectees address book, rather than anyone actually being malicious in my direction. Not that I'm wishing a virus upon people who have my email address in their address book, mind - I'd just prefer that to maliciousness. Though I would quite like it if people who have my email address in their address book and have a virus would have their computer explode, so I don't have to deal with their virus's annoying side-effects. [19:48] [0 comments]


Saturday 27 December 2003
Why is there no such thing as a combined dishwasher, washing machine and clothes dryer? The latter two are already available in a single unit; surely the only major differences for a dishwasher are that it contains a rack, sprays hotter water, and doesn't spin around? It's certainly not hard to add "don't spin around" functionality to a device, variable temperature is already a feature of most washing machines, and it wouldn't be hard to put a few rack-mounting holes in most top-loading washing machines. Would it be hard to combine all three devices? Obviously it would cost more than any one device, possibly even two, but it'd still be cheaper than all three (one heating element rather than three, one spinny thing rather than two, one shell rather than three), and, probably the better gimmick, it would take up less space and require less plumbing in than having two or three units.

I'd certainly buy the combo device in preference to the clutter of all three, even if it cost the same as the sum of individual units. Having a huge heavy box for each purpose, when even the dishwasher - as most-used of the three - probably wouldn't see usage more often than every three days or so, is just galling. [11:46] [20 comments]


Thursday 25 December 2003
And another movie review: The Medallion.

Jackie Chan's latest mindless fluffy fantasy action movie. Given an appreciation for that genre, it's a pretty good movie. The timing is good - particularly in contrast to yesterday's Kill Bill. There's an aeroplane flight in this one too, but in The Medallion it consists of a shot of a landing aeroplane, and the subtitle "Dublin, Ireland". Three seconds max. That's how these things should be done.

There's a bit of Lee Evans mugging up the movie with his unfortunate brand of pulling-faces comedy, but it's okay because he's mostly upstaged by Chan, and is certainly less annoying than Chan's other 'comedy' partners, Chris Tucker or Owen Wilson. Evans is largely playing the same character as in Mouse Hunt; somewhat inventive, a lot cowardly, very clumsy and/or unlucky, and bloody annoying. But unlike Mouse Hunt, it's occasionally funny in this.

The action is what one should expect from modern Chan - a bit dodgy, with cuts and quite possibly strategically positioned cameras and fake legs for some of the non-Chan characters. A few moments of fighting bordered on Matrixised, but nothing quite so slow-mo as the bloody Matrix sequels. And a lot of random leaping, spinning and improvised weapons - it's Chan-formulaic, but at least it's a fun formula.

The plot, too, is what one should expect from a modern Chan fluffy-fantasy-action - about on a par with those of Jean Claude Canned Ham's movies that pretend to have a plot, such as that one about evil fashion designers, or one of the several in which he plays twins. It's extremely extremely fluffy, and involves superpowers and talismans. You can't beat that for a mindless action movie, really. It's like Spiderman without the pants CGI.

In case you couldn't tell, this was a positive review. First new movie I've enjoyed in quite a while. Don't take this as a recommendation, though, unless you liked The Tuxedo, or at least Rush Hour. [17:35] [3 comments]


Wednesday 24 December 2003
It's review time again, and this time it's the turn of Kill Bill: Volume 1.

Kill Bill
All the good bits of Kill Bill
are in this one picture


The current front review at IMDB tells me that other IMDB reviewers were complaining about too much blood, gore, and nonsensical violence. Those reviewers, and also the reviewer attacking them, are stupid. The latter because he or she accepts the claim that there is a lot of blood, gore and nonsensical violence. There isn't. There's a lot of bloody long pointless scenes of nothing happening which also don't serve to enhance any characters or provide any emotional significance, and only a little bit of blood, gore and nonsensical violence.

There is no need for a two minute scene of the main character screaming at nothing in a hospital bed. There is no need for three minutes of cuts back and forth between main character on an aeroplane, and a bunch of people on motorbikes. The aeroplane cutting was even preceded by her asking for a ticket to Tokyo, then a classic cartoon aeroplane-on-a-map that lasted two seconds - one snippet of the motorbikes in the middle of that and the entire travel segment would have been done with in five seconds, no need to show plane-exterior shots, no need to show sitting-in-a-plane-seat-with-a-samurai-sword, no need for more shots of motorbikes and baddie-in-a-car, and certainly no need for each of these to be repeated seven times.

I said it about Lord of the Rings part 2: Symbolic Double-Penetration, and I'll say it about this - just because you want to have a piece of music playing doesn't mean you have to extend the scene to the length of the piece of music. Fade it out, or get a fucking shorter piece of music.

Of course, if I was given free reign over cutting, Kill Bill would be a single 80-minute movie, at most, rather than two 100-minuters - but it'd be an absolutely fantastic movie, rather than a piece of crap that opens with 30 minutes of tedium, and interjects another 30 amidst the 20 minutes of content.

Actually, I also have to marginally side with the people who complained that there's too much blood. There isn't too much gore - in fact there's no gore - but there's about two Sumo wrestlers worth of blood inside every skinny character. Splattering blood is fine, but spraying blood just looks stupid.

And cutting to black-and-white in the middle of a scene, with no reasonable justification, is not artistic. It says "ooh, look at me, I'm an artist", and prances around, like Homer Simpson would if hypnotised and told he's an artist. Particularly aggravating is that later in the same fight-scene, a cut to black-and-white would have been quite reasonable, as the music changed, the style of fighting changed, and the situation changed. The place where it did cut, however, had nothing except the colour-scheme changed.

Also, what's wrong with putting subtitles on black bars, rather than putting pale yellow subtitles against white backgrounds? It's not hard to do, and it's not hard to see that it would be better, either.

Quentin Tarantino? Bag of ass-hats, more like. [17:01] [5 comments]


Tuesday 23 December 2003
Spaghetti? Beans, more like!Quick, contact the dictionaries, there's another word that seems to need updating. Look in that tin - it's 'spaghetti', by the new definition in which spaghetti means baked beans. The next tin was the same, so it can't just be a fluke - spaghetti really must have been redefined while I wasn't looking. Only for small quantities, though.

Unique stunning for 2! Get your stunning now!Another word that seems to have a new definition is "unique", depicted to the right on a builder's sign. 2 only? Bique, then, rather than unique. Or, wait, perhaps I misread the punctuation - "Unique stunning! 2 only" - get uniquely stunned with your loved one, before some other, less deserving couple takes this once in a lifetime opportunity.

Independent Order Of Odd FellowsWe walked past this "Independent Order Of Odd Fellows" building, so we went in and told them "your ideas are intriguing to us and we wish to subscribe to your newsletter", but it turned out they weren't actually very odd or independent, so, in order to cleverly cram this picture into the same theme as the rest of the post, I think both independent and odd also need a new definition. And possibly order. But mostly I just wanted to grumble about the ninja beans. [16:25] [9 comments]
Aha, dictionaries have updated the definition of democracy, so I can stop being annoyed when America does things in the name of democracy rather than in the name of 'elective oligarchy' or 'representative democracy'. But now what word is one supposed to use to describe a system of government in which votes actually affect decisions, rather than just changing who makes the decisions? Maybe we can call that "old school democracy".

So, time for mental linguistic adjustments.
1. Democracy no longer necessarily means that minority opinion is suppressed, though in practice it still mostly does.
2. Democracy now also means that majority opinion is also suppressed.
3. The etymology, essentially 'people government', must now be considered to suggest government of the people, rather than by the people.

Democracy: Forcibly introducing American-style government wherever possible. Brain update complete. [08:48] [3 comments]


Monday 22 December 2003
Three of the best ideas ever; one on politics, and two flavours of reality TV.

On politics: if one must have a democracy, it should be an automated perpetual democracy, not a four-year gamble. Automated computerised voting, wherein your vote is continuous rather than per-election. All votes start out as 'abstain' when the system is implemented, and become 'abstain' again if your candidate stops running. Voters can change their vote whenever they like, and whenever a candidate has a small margin lead (say, 1%) over the current president, senator, or whatever role is being voted for, the replacement happens immediately. Try making unpopular laws with that system in place. Propose a PATRIOT act, and watch your actual real vote popularity drop away before the bill is enacted - a far more convincing demonstration than crummy biased polls will ever be. And if the demonstration isn't convincing enough, but popular opinion is, you lose your political position, and your replacement, presumably, retracts whatever stupid idea got you kicked out. Much closer to a true democracy than the usual four-year "I didn't know he'd be like that" voting system. Whether a democracy is a good thing or not is another matter, of course.

On Reality TV: The Bachelor 2: This Time He's Doomed - the same show as The Bachelor (and its reverse-gender equivalent), but with one in three of the crowded gender being actors or actresses rather than genuine participants. If the chooser-person picks one of the fakes, they get no money and no partner. Ideally they get some sort of punishment too, but I suppose Reality TV isn't allowed to do that.

Also on Reality TV: Iron-ic Chef - similar to Iron Chef, but instead of having professional chefs working with a theme ingredient plus whatever ingredients and assistants they like, it has competing amateurs, working with simulated student kitchens. They have an amount of time in which to make a delicious three course meal, with no assistance, not knowing what ingredients or utensils they have available, with the kitchen starting off scummy with half the utensils in the sink, a fridge with unlabelled tubs of leftovers that may or may not be mouldy, jars of unlabelled herbs and spices, and so on. All contestants start with kitchens modelled exactly alike, for fairness. The winner each episode goes on to the next, with increasing prizes at stake; anyone who wins four in a row is pitted against a professional chef for their fifth return, still in the same "emergency cookery" circumstances, for their final challenge, with a suitably larger prize if they win. The whole thing being done with the same sense of drama as Iron Chef, but geared towards looking squalid as well as dramatic. [13:55] [2 comments]


Friday 19 December 2003
Do not watch The Matrix 3 without the following guide. It will still be painful even with the guide, but at least you won't feel the need to shoot yourself in the eyes with cosmic rays afterwards.

The Essential Guide to The Matrix 3: Revolutions

We open on a repeat of the nonsense ending of the second movie, so that we can pretend the two movies are somehow connected and sequential.

Once that's out of the way, there's room for about six thousand hours of conversation, including these extracts:

"Who are you?" "I am the Oracle." "You don't look like the Oracle." "No, I don't. There's a reason for that. It's mumble mumble cough mumble. Sorry you couldn't hear that bit, I'm old you see, but it was a good explanation I assure you." "Great. That explains it then."

"Who are you?" "I am Apu, a program, and a cartoon shopkeeper. Your name is Neo - you dance in the sand." "Who is someone else?" "He works for the Frenchman." "Do you know him?" "No." "Then how do you tell me about him?" "I don't know." "You're after my robot bee, aren't you?" "No." "YOU WON'T GET IT!"

"I just said some words." "Then I will say some words too." "Shouldn't something be exploding or getting kicked by now?" "Only if we wanted a good movie." (all point at the paying audience and laugh)

There's a brief intermission in the dialogue, in which a gunfight scene from the original Matrix is replayed, but this time it's played upside down in the hope that you won't recognise it that way.

The next segment of dialogue makes up 80% of the movie. There are three lines of dialogue, but one of them is spoken by Morpheus (remember how slowly he speaks?) and the other two are from the Frenchman, who, not to be outdone, speaks at one-third of Morpheus Prime, an exacting one word every three minutes. Since they're speaking so slowly, you can't actually make out anything they say, but there are subliminal messages assuring you all the while that it's very important, whatever it is. I played this bit in fast forward, and discovered that the ten years of dialogue is actually comprised of the following: "Hello." "Hello." "How are you?"

Morpheus leaves the movie at this point, because, you know, we're all sick of him and his bloody prophecy ramblings by now. The rest of the characters, inexplicably, don't go with him.

"You need a thing from a place." "Where?" "You know where." "What does that mean?" "Yes." "Who are you?" "Everything that has a beginning has an end." "Who are you?!' "I am the Oracle." "You're after my robot bee, aren't you?"

"Who are you?" "I don't know, I wasn't in the other movies." "You must be related to the production staff or something." "Yes." "You're after my r-" "No, I'm not qualified to fly robot bees." "Ha! You're rubbish then."

(several scenes later) "Oh, now I know who I am - I'm Sylvester Stallone." "That's an actor, not a character." "Oh. I'm Judge Dredd, then, because you can't make out a word I'm saying." "What?" "I said mumble mumble!" "What? My robot bee?"

Then Trinity and Neo snog. There is implied gay sex, but this time, unlike in The Matrix 2: Neo's In The Well it's not shown - this omission is the high point of the movie.

Then Agent Smith, in someone else's body, shoots Neo in the eyes with cosmic rays, blinding him and simultaneously giving him the powers of Daredevil, which he uses for fighting for great justice and for pretending he doesn't know where Trinity is so he doesn't have to listen to her.

An irrelevant nameless character in a mech suit stolen from another movie informs a hundred other mech suit thieves motivationally, "we're going to die! Hooray! Let's go and die now!" "Hooray!" they respond.

Some clumsy computer graphics stolen from Tron fly around with some other clumsy computer graphics stolen from Tron, and then there's a tension-building intermission filled by an advertisement for Jurassic Park 3: This Time It's Robots Instead Of Dinosaurs.

"Oh no!" screams Mech-thief, "why oh why didn't we install some sort of computerised targetting rather than relying on our slow human reactions? Why are we driving in these suits at all? We could have just left a lot of fridge magnets around the place!" This is the true moral of the movie, and the most educational moment, that didn't happen at all. What he actually said, over the course of about half an hour, was "Blobala! Hemo! Buboes!"

Too lazy to bother with any more computer graphics, the Winch-cow-ski-lamp-hatstand brothers thoughtfully wave a couple of sparklers at the camera for twenty minutes to simulate the chaos of war. If you listen carefully you can hear them in the background saying "ooh, look, I can write my name. NOO, DON'T CROSS THE STREAMS! AIEE! MY EYES!"

Trinity dies, yet again. She whispers her own eulogy, to Neo: "I wish -" "Blub!" "You remember when -" "Blub!" "That time when -" "Shut up and fucking die! For god's sake woman, you've got three spikes through you, what does it take to make you shut the hell up?" "And I just wanted to say -" "SHUT UP! WHY WON'T YOU JUST SHUT UP?" "I -" "SHUT UP!" "You -" "If I just cry loudly, then will you shut up?" "Yes." Neo cries like a schoolgirl, and Trinity finally stops talking, about fifteen minutes after she stopped breathing.

In the Matrix, Agent Smith eats Neo, and then Neo turns into Jesus and shoots Jesus lasers out of his eyes, which consume all the Agent Smiths with Jesus power.

The computer core which suddenly somehow has its own personality that Neo talked to earlier then calls off the war because it told Neo it would do so if he killed the Smiths for it. Because warlike computers always keep their word rather than exploiting situations logically. It also decides of its own accord to release any humans who don't want to be batteries any more, which wasn't part of the promise and has in no way been demonstrated to be a reasonable course of action for it. Hoorah, the humans win, because, er, the computer decided not to finish them off when it completely could have done, and they get to continue their life in a stinking pit of filth just like before, with robots that will fry them if they try to leave. Victory for humans!

Oh yes, and Neo's magic powers outside the Matrix are explained by mumble mumble mumble, and also his Daredevil powers are because mumble mumble a reason. Hooray! [21:14] [11 comments]


Monday 15 December 2003
Best idea for a business ever. Get a premium phone number - one with one of the less well-known premium dialling codes. Set up a website where users sign up to get a 'referrer code' and the phone number. Distribute this website to geeks, via Slashdot or the like. The website directs the geeks to give the phone number to Nigerian scammers to call, and to tell the scammer to cite their referral code as a passphrase. As the referrers, your geeks will get X% of all premium phone call profits from Nigerians they have referred, with you taking the rest. The scammers would, of course, be put on hold for as long as possible.

Alas, this would presumably constitute some sort of phone fraud, even if only scammers are being scammed. A shame. [19:34] [8 comments]


Sunday 14 December 2003
Furthermore, hoorah, Saddam Hussein has been captured - this means the War On Terror is over and won, and we can all stop worrying about terrorism again, and all the excessive nonfunctional security can go away again, and there will be world peace and no more hunger, and no more fighting, and thank you, vote for me for Miss World 2003. [18:25] [24 comments]
Hoorah! It's believed that Saddam Hussein has been captured - and if you watch the news on Australia's channel 7 with the sound off because you don't care, then you get to believe that he was captured by these two spokespeople. I like to imagine the news story went something like this:
The muppet either Statler or Waldorf, and Simon Quinlank
A Muppet and Simon Quinlank


Statler said "it was a bit of a disappointment really. I thought this guy was supposed to be hard, but he hadn't even managed to cut his beard." Waldorf agreed "Bit like Bush trying to cut a budget!" The two of them laughed together.

Quinlank responded "Shut up! Capturing dictators is my hobby, and you two are rubbish amateurs. Only I can do this hobby!"

This post has been brought to you by the US Government's department of misinformation, and Britain's obscure reference bureau. [16:07] [2 comments]


Saturday 13 December 2003
Grarh! I just spent hours trying to decipher why my programming's mouse-control was moving sluggishly. First I added some debug output - that, ridiculously, fixed the problem. Then I took it away, and the sluggishness returned. I tried a release build; sluggish. Release build with debug output; not sluggish. Release build with debug output but run not under the debugger; sluggish. This data pattern makes no sense at all, as it should be, if anything, the other way around. Adding debug output should never ever speed up a program.

So, I thought perhaps it might be some sort of weird display thing, that changing the display outside the DirectX area was making screen updates occur faster. I added a frame-rate display; 450fps with or without debug output, sluggishness as before. I checked my mouse-data-getting code to ensure that it was getting all the buffered input each frame, rather than trickling a little each frame; it was. I tried changing the window's title bar with debug output instead of doing it as debug output; that made the sluggishness go away too. I tried putting the debug output on the screen like the frame rate; sluggish again. I tried displaying the current frame number, in case it was something weird with the screen not actually updating when a frame was counted - it wasn't, the screen was updating very very fast, the mouse was still sluggish.

I exploded my brain with a delicious mix of sulphuric acid and sugar. That made no difference. So I asked Google about DirectX sluggish mouse. Lo and behold, a 44K patch from Microsoft to resolve "known issues causing mouse behaviour to be very sluggish when using DirectInput and foreground exclusive mode mouse access".

Ooh, it makes me cross when I spend hours debugging stuff only to find out there wasn't a bug in my code at all. I didn't even need to apply the patch, since I had been downloading the DirectX 9 SDK meanwhile, to get my SDK to match my runtime, so as to be able to use the DirectX control panel again, which would have been one of my debugging steps had it been available.

It's time to send in the pusher robots. [19:44] [3 comments]
The first challenge of Channel 4's online Distraction game is quite amusing, though bloody difficult when using a trackpad set to maximum sensitivity. Does the last challenge chant "kill the bastards" or is that just the voices in my head? [07:23] [1 comment]


Thursday 11 December 2003
How to make Not-General-Tso's-But-Raven's Not-Chicken-Either

Warning: May Contain Tofu. However, it is tofu cooked in such a way that people who say "eurgh, tofu" don't actually find it unpleasant. People who are allergic to tofu, however, will still swell up like comedy balloons.

First, don't make sure you have all the ingredients. Ingredients are for wimps. If you're missing an ingredient, subsitute something else. For example, soy-sauce tastes much the same as brine, and it's not uncommon for Tso recipes to have wine in place of half the vinegar, which suggests that you could probably replace all the vinegar with wine if you felt like it. Especially if it's a crappy beaujolais. Replace tofu with chicken, replace garlic with onion, replace ginger with coriander, replace sugar with honey or jam, replace oil with margarine, and replace water with urine. It'll taste like crap, but you won't have to go to the shops.

Now wash some dishes, because you don't want your Not-Actually-Chicken to end up tasting like baked beans

Next you'll have to mix two sorts of soy-sauce together, not because it will taste any different but because the first sort will run out and you'll have to pad it out with the other sort. Once the two are mixed together you'll have about a half-cup (the measure, not actual cups which are generally bigger) of soy-sauce. Put it in some sort of mixing space like a jug or bowl or pan or large mouth that promises it won't swallow, because you're about to mix some other stuff with it.

Add a little bit less white vinegar, or rice vinegar, than you just did soy sauce. It wasn't actually a half-cup at all, was it? Admit it! But that's okay so long as this is almost the same.

Add about half that much sugar. I use white sugar, but that's not because all the ingredients are supposed to be white. I'd be worried, in fact, if your soy-sauce was white, and white vinegar is actually transparent anyway. Also, the half-as-much sugar is by volume, not by weight, so keep it away from those bathroom scales. Most Tso recipes call for more sugar than this, but they're evil and wrong and plotting to rot your teeth and kidneys.

Add all the garlic that's left in your jar of garlic, unless your jar is much more full than mine was in which case only add about one to two teaspoons, or a few smooshed cloves. Of garlic. Don't go adding cloves just because I didn't say 'of garlic' in the same sentence as cloves. That would make a really horrible sauce.

Add half a teaspoon of ground ginger, or, since your ground ginger is in one of those stupid sprinkly containers, add some arbitrary number of shakes of the container that you just made up. Probably less than 20.

Add another of those 'half cups', this time of water. This is handy since whatever thing you're using to carry these so-called half-cups can have the sticky goo that thus far remains in it rinsed into the mixy-container at the same time.

Put the mix in the fridge. The cooling is a factor of some sort, apparently, so the refrigeration is an actual step, silly though that seems.

Now, go back in time at least 24 hours, drain a block of coarse tofu, and put it in the freezer. Then return to your own time, and retrieve the tofu, making sure you didn't bring the freezer back through the timewarp too, since you want the tofu to have had time to freeze.

Now say "tsk, I forgot, this is supposed to have been defrosted", go back in time 6 hours with the tofu, and leave it covered somewhere. Return to your own time, and retrieve the defrosted tofu (though it does have to have been previously frozen - that changes its texture). Alternatively, if your time-travel device malfunctions after the previous use, you can microwave the tofu on low power to get it defrosted enough that you can cut it into inch-sized cubes, which, either way, you should do.

Sprinkle the cubes with soy-sauce.

Somehow cover the cubes in cornflour (this is corn-starch in America). Dipping them works but tends to result in it annoyingly flaking off, and the dip-powder solidifying gradually. Sprinkling it on them gets similar results, but uses a bit less cornflour and a bit more effort. The best way is to ask someone else to do this part while you busily, er, heat the oil. For ten minutes.

Heat some deep oil. Deep-frying is best. You can, apparently, do this part with shallow frying, but I bet it sucks if you do. Heating the oil should take about three minutes, but if you've got someone else covering the tofu-blocks in cornflour, you can heat it over a lower flame to make it take the same amount of time it takes them to do that, and thus you can't possibly help them because heating oil is a very attention-intensive task.

Put the sauce-sprinkled cornflour-covered cubes in the hot oil. Try to stop them sticking together. This won't work, but you'll have such fun trying, especially if you try to hold them apart with your hands underneath the surface of the boiling oil. Take pictures if you do that. But, er, remember, this recipe said not to do it, in the event of a lawsuit.

While that's frying, taste the sauce in the fridge, and realise that it tastes really far too vinegary at the moment. Fix that by adding about half a teaspoon of chilli-powder, and a little more of paprika, and a few drops of a nice hot-sauce, and another quarter-cup or so of water. At this point you should decide that you'd like the sauce a bit gloopy today, and hence add about a level tablespoon of cornflour to it.

Once the blobs are a bit crispy (takes between five and ten minutes), take their oil off the heat, and raise the blobs in a magical little basket thingy so the oil drains off them into the other oil, unless you are a fool who thinks shallow frying is the way forward in which case I don't know what you should do because you're silly and probably shouldn't be cooking this recipe at all.

Heat a little oil in a normal shallow frying pan. Chop up an onion and fry it, unless you don't like onions in which case simply don't do the oniony bit since it's mostly just to add a bit of lumpiness to the sauce anyway.

Once the onions are fried, or the oil is hot if there are to be no onions, pour the sauce into the pan. Let it get hot, and then add the blobs. Let it all simmer together for a few minutes, with stirring. About now you should panic and think "aiee, this sauce is too thin, perhaps I shouldn't have added that extra bit of water". And rightly so, because it is a bit too thin, actually, so go back in time and persuade yourself that you shouldn't have added that extra bit of water, or perhaps that you should have added a bit more cornflour. If your time machine is broken, don't worry, it's still quite nice, and the sauce does thicken up a bit if you let it cool slightly before you serve it.

Serve it in the middle of a circle of broccoli or some other vegetable or some rice, which someone else cooked while you were doing all this. If they didn't then bollocks to them, can't they even make a little bit of effort when you're cooking a complicated thing like this? Nothing but lumps for dinner tonight, all of you!

Blog the entire recipe with which to remind yourself. [14:35] [5 comments]
Coo, this bank that I now have an account with has surprisingly functional internet-banking.

What I expect of internet banking: an up-to-date statement, maybe some sort of bill-paying thing, and the ability to transfer money between savings and checking accounts or similar.

What BankSA does: those, and also dealing with home-loans, four distinct sorts of investment, payment-like transfers to other Australian bank accounts, and wire-transfers. Yes, wire-transfers, those things that I couldn't get an American bank to do without a signed-stamped-sealed-and-kissed-by-the-pope letter.

I bet Australia will have proper internet voting before America or the UK does. [07:36] [1 comment]


Wednesday 10 December 2003
Danger, Will Robinson, Danger! This Hexic game intends to eat your soul! [20:14] [1 comment]
How To Cook Raven-fried Rice

Ingredients:
Some rice. However much you intend to eat, or how much will fit in the pans available, whichever is less.
An onion. Always one onion.
Some oil. The edible sort. No particular amount, just have a bottle of it to hand and you'll be fine. And I don't really care which sort of oil it is, either. Olive, sunflower, generic vegetable, it won't make any difference because the oil's taste will be obscured by the more aggressive flavours you should be adding.
A heaped teaspoon of smooshed garlic, or about six cloves of garlic that have been hit with something so as to have cast off their cloven form. Or don't bother. This doesn't actually seem to make a lot of difference to the end result.
A Whole Bunch Of Spices which you should find in a drawer near the sink, ideally in separate containers rather than just poured in there.
Some nice hot sauce and maybe some lemon juice. And some soy sauce. But none of those if you don't have them. Put some other things from your fridge in there instead of these.
Optional: some sort of lumps of fake meat stuff from a tin, with an ambiguous and unnerving name such as "Tender Pieces", or if you prefer, substitute some meat-substitute-substitute such as steak or mince.
Boil the rice in about twice as much water as it takes to cover it, with a pinch of salt taken from your spice-pile, and a drop of oil, which seems to reduce the stick-to-the-pan effect.

While that's happening, cut up the onion into pieces as small as you can be bothered, and smoosh the garlic if it's garlic that requires manual smooshing rather than the more convenient jar-based pre-smooshed garlic.

Once the rice is done (the water will be up to about a third the depth of the rice at that point), take it off the heat and put a shallow-frying amount of oil in a wok or big frying pan that can function much like a wok, in its place. Set the onion frying, and, if you elected to go with some sort of meat-esque lumps, add them too. Stir it around a bit.

When that's fried for a while (about the amount of time it takes for the rice to absorb the rest of the water it's in), tip the rice in as well, and stir it all together. Now dig through your spice drawer, and add all of the spices except bad ones to the rice, in sensible quantities. For example, with our spice-drawer as it is, I go with enough turmeric to make the rice nicely yellow, half that much coriander and paprika, half that much garam masala and salt, and half that much ginger and maybe mustard. Also add the glob of garlic, and the various sauces if any. Stir it all together again.

Taste it. If it's dry-spicy, add lemon juice. If it's dry-bland, add soy-sauce. If it's just a bit bland, add salt. If it's quite a lot bland, add all the spices again. If it's too spicy, add lemon juice.

Fry it until the rice at the bottom becomes crispy. Stir it around. Fry it until the new rice at the bottom becomes crispy. Stir it around again.

Turn off the oven, and put it in a bowl. You're done. Enjoy it. Now, if you don't enjoy it, that means you haven't followed the recipe which included the instruction that you should enjoy it, so it's your own fault, not mine or the recipe's. [13:01] [5 comments]


Tuesday 9 December 2003
RavenBlack-skinned Trillian contact list. Red border is not part of the skin.For reasons not really worth elaborating, I wanted Jabber support for Trillian. I found that it exists, for a Trillian updated to the latest beta. So I did that.

I then found that my preferred Trillian skin kimae didn't support Jabber properly - contacts wouldn't appear when online, and the online status of the client, and connection control, were not available. So I reverted to the default skin. Which is eye-gougingly ugly.

So I tried modifying the XML of the good skin to add support for Jabber. That didn't work. So I modified the default skin, mostly by just shoving big black rectangles over all its images and exchanging all near-white RGB values with nearby near-black RGB values in the XML. After a lot of fiddling with lots of trivial little files, and redrawing a few bits, it ends up looking like that image over there. And this one, and this one. Mm.

It's amazing how much time one can waste in an effort to not have one's comfortable working environment disrupted by a bit of nasty pastel-coloured invasion. [16:47] [2 comments]


Sunday 7 December 2003
The best movie ever was just on TV; The Silent Flute. In many ways it's similar to Gymkata. It has men with silly hats who laugh too much, really horrible martial arts, awful pseudo-philosophy and a nonsensical plot. However, it's even better, because it also has Mr Kung Fu himself, David Carradine, as most of the sort-of-baddies and village-of-the-crazies, and all of his usual beautiful pseudo-philosophical claptrap.

"What do you know of Zetan and the book of enlightenment?"
"I only know that it is a book." [19:46] [2 comments]
Mix coffee and orange juice. It's nice. Proper squeezed pulpy orange juice, and proper machined-or-stoved coffee, mixed in a half-and-half ratio. They remove each other's most unpleasant traits, and don't interfere with the positives which kick in at different stages of the drinking process. Orange on the lips (but with its sting removed), a smooth coffee-orange flavour on the tongue, and a short-lived aftertaste of the coffee. Mm.

Don't make a vegan milkshake with coffee, soy-chocolate-ice-cream and soy-milk. It's horrible. It's thin and tastes mostly like scum. Soy scum.

Have air-conditioning. Locking out the weather and then grabbing the bit of weather that's trapped inside and stabbing it in the face is very satisfying and pleasant.

Don't have a lawn. Lawns are stupid. You have to maintain them and they aren't actually enjoyable or anything. Same goes for any garden that isn't edible. [17:41] [9 comments]


Saturday 6 December 2003
Recently watched good movies: Run Lola Run, 2002. Lola Runs. See Lola Run. Run Lola Run. Pretty Lola, pretty directorial work, pretty amusing flashforwardses. 2002 is like Special Unit 2, only Hong Kongier. Unfortunately we missed the first half of that.

Recently watched bad movies: Rushmore, Withnail and I, League of Extraordinary Gentlemen. Rushmore didn't rush enough; it took ages, and amused almost as little as Michael Moore. Withnail and I is like Bottom, only movie-length. Extraordinary Gentlemen was extraordinarily slow and boring for a movie of superheroes with explosions. It momentarily promised a good ending, but then backed out on that part of the deal too.

Recently watched indifferent movies: Sumo Do, Sumo Don't, Pirates of the Caribbean. Sumo Do, Sumo Don't is probably entirely unwatchable if you haven't somehow picked up the rules of Sumo in your childhood, but I quite liked it. Not so much that I would say 'enjoyed' though. Pirates wasn't even really redeemed by its Depp content, but it would have been in the 'bad' category without him. [16:53] [14 comments]


Friday 5 December 2003
Why You Shouldn't Believe Anything University Teaches

Today I was struck by a realisation related to my programming practices. I have been programming for many years; I wrote games for the Atari ST in 68000 Assembly language, and in STOS Basic. I finished writing many games, and had very few unfinished. In fact, I don't remember ever having an unfinished project in those days, except for one insanely ambitious project - and even that was going quite well, but it was too big a project for the deadline I had.

C is not so different from STOS Basic or Assembly language. The one main difference is that there's a lot more emphasis on using the stack rather than global variables. Especially if you learn C from a higher education institution. They will tell you that using global variables is bad.

I have finished some projects in C(++). Those finished projects all have a high concentration of global variables. I have many many unfinished projects in C(++). Those projects were "well-written", with lots of "reusable" code. I have never reused any of that code.

Global variables being bad is largely a holdover from the days of yore, when memory paging was a slow painful operation. Nowadays, global variables are often no worse than using the stack - and most of the time even if you weren't using global variables you'd be using malloced structures which end up on the same heap your globals would be on.

Reusable code is a consideration if you write many things that are exactly alike. Excel and Access, for example. Most programmers, especially game programmers (except for those bastards who keep writing Quake over and over again), don't write many things that are exactly alike. Reusable code is a waste of time and effort, and will just end up abstracting away the functionality you'll later find yourself wanting.

This realisation struck me when I realised my latest project has stalled, during the menu-writing phase. Most of the gameplay code works, and works well. Most of the gameplay code, though not using global variables, is functionally equivalent to using global variables. The menus, on the other hand, I was writing reusably, object-oriented, in a manner not unlike Windows; buttons as controls that are stored in a list within a given menu screen, things optionally nested within other things. Now I realise that writing it this way involves three times as much code as it would be to just write each menu screen as its own pair of functions, or even as a simple switch within two functions; "draw screen", which would have several calls to a "draw sprite" function for each button, per menu screen, passing coordinates and sprite identifier, and a "do click" function which would have simply a sequence of 'if' statements redirecting to the appropriate piece of code if the click is within the appropriate button. Parsing through lists of button structures with virtual functions and passing links back to the current menu for dealing with the result is complicated and awkward in comparison to this simple method.

For the sake of comparison, imagine the code for "user presses tab". In the object-oriented example, you'll want to parse through all the controls to find which one currently has the focus, deselect it, loop through the linked list of next controls until you find a focus-compatible control, looping back to the first one if there isn't a next one, and select it, then redraw both controls. In the simple global-using method, you'd add one to a "selectedcontrol" variable, make it zero if it has exceeded the maximum value, and redraw the screen.

Programming in C should be as easy as programming in Basic, once you have the lower-level functions down.

If, and only if, you make sensible use of global variables, it is that easy. Most versions of Basic don't have a stack, and don't have a malloc. This is very rarely a problem. Most games don't need a stack and don't need a malloc.

As for me, I intend to scrap my existing menu code, and rewrite it as if I was coding in Basic. It'll be faster to code, faster to run, and maybe I'll actually get something finished for a change. [19:01] [6 comments]
The other day, I got a request to do and review an IQ test, based on my having done so before... Also that I could get the extended report free. Well-timed to coincide with my being unproductive and aimless, I opted to play along. The request was pleasantly weird, too, after all.

The test is this one. Fairly good design - it includes a time factor, and an "I don't know" option which presumably scores better than a wrong answer. There weren't very many of my IQ test pet hate questions, the "which of these is the odd one out?" variety.

On the negative side, the test didn't have very many questions at all. Thirty questions is a bit limited when you're aiming to be judging ten distinct characteristics, and rather susceptible to the results being thrown off a lot by just one random slip of the brain.

Results-wise, it's not bad; the score is about what I would usually get on a live-normalised scale, scoring me at 136; the extended report suggests that my weak point is classification, which is fair enough since that's the category that features the stupid odd-one-out questions. The extended report also tells one the correct answers, though it was lacking an explanation, which would be a nice feature for some of the questions (again, particularly the stupid odd-one-out questions - I know what my reason is for saying something is different, but what reason does Mr Test have for selecting a different difference?)

There should be a test for this sort of question - take away the correct answer, and pick the new odd-one-out. If there is no new answer, the original question is okay. Otherwise, add the original correct answer back in - is the reason for the other correct answer invalidated? If not, the question should not be allowed, as there are two perfectly valid odd ones out. It's my opinion that more than half of such questions would be found broken, under this simple test.

Anyway, as IQ tests go, this one's fairly good. The extended 'personalised' report is rather impersonal, but what can you expect from answering 30 questions? "If you were a bird you would be a chaffinch." [14:09] [14 comments]


Tuesday 2 December 2003
VICTORY FOR ZIIIIM! [20:09] [7 comments]
My mistake, it's not Chevy Chase Bank, it's America that's fucking shit, at least according to Chevy Chase when I inquired in an angry tone. "Concerning the Consulate Stamp, this is a federal regulation put into place with the United States Patriot Act. Unfortunately, there are no exceptions to having this stamp affixed to a wire request."

I believe it's paragraph 14 of the PATRIOT act which says "Want to get at your money, but you're in a foreign country? Ha ha, fuck you, fucking unpatriotic bastard! Why did you leave America?! America is the best and you have betrayed us you terrorist! No moneys for you! Them thar's government moneys now!" [18:53] [13 comments]
Grarh! Chevy Chase Bank are fucking shitheads. I can prove to them in three separate ways that I'm me, but no, they want a US consular signature or they won't do the wire transfer of my money that I've been trying to do for a month. Here is why I've been trying to do said transfer. I'm sure the bank won't refund me the money their bastard delaying has cost me, unless I fly over there, go into the bank, stab them all in their fat fucking faces and take the money that I wouldn't have lost in the first place if they'd do their fucking job of letting me have access to my fucking money. Fucking fuckers. [15:39] [23 comments]
A thumb ring in its natural habitat.The answer to the "What Is This?" post of a couple of days ago is that it's a thumb ring. Well done, those of you who guessed a thimble or archery finger-protector, both surprisingly good guesses. I was rather disappointed by the lack of people making dubious kinky guesses though, since that's what I was really hoping for.

Depicted here is the thumb ring in use (the one on the thumb), albeit not at full draw because my thumb is knackered after a day's archery doing a thumb-draw for the first time with a bow that's a bit stronger than I'm used to. On the up-side, it feels like a conditioning pain, rather than a now you've given yourself arthritis pain.

The finger-guard also in the picture is much the same pattern, but worn the other way up and with fewer layers since it's just protecting against friction, not pressure. The arrow would be resting on the string just beneath that metal nodule.

I did get a brass thumb-ring from the same place I got the bow, but I found it much more uncomfortable and unwieldy than the home-made leather one. The thumb-draw, on the other hand, seems more intuitive, comfortable, and (given practice) probably also more accurate than the common mediterranean draw. Also, an aching thumb interferes with my typing much less than aching fingers would. [12:04] [4 comments]


Sunday 30 November 2003
This is our favourite sign in Adelaide. I hope I don't need to explain why.

XTREME RELOCATING! WHOA! DUDE!


The Shadow knows. [11:00] [7 comments]