Friday, November 27, 2009

Suicide bombers

The other day a friend and I were discussing the way the press call suicide bombers cowards. Call 'em idiots, if you like, that's generally appropriate, but cowards? I wouldn't have the guts to do it...

Then that led to us pondering [gross simplification alert] the whole Muslim paradise concept that these idiots are sold - die with the name "Allah!" on your lips and you are guaranteed an eternity of virgins, endlessly renewed... Well, think about it - what sort of pathetic inadequates would want to spend eternity in the company of virgins? The whole idea stinks of primitive misogynistic stupidity - give me an experienced lover over a virgin (or under, I don't care... sorry...) every time.

It's all a bit worrying, really - "Allah" sounds enough like "Aaargh!" that it could happen by accident. One wrong syllable and I could find myself educating virgins for eternity; remind me - is this supposed to be heaven or hell?

Maybe that's why black-box flight recorders show that the last word of people who know they're about to die is almost invariably "shit!"... Far less ambiguous than "Aaargh!"...

Hmmm. After due consideration I've decided to opt for re-incarnation and come back as a lesbian, who in their right mind wouldn't? Though knowing my luck it'll be as a lesbian sheep with all the frustration that implies. Gah...

Oh, shit - thought of something worse than being a lesbian sheep - might come back as a lesbian in one of those backward countries where the women have to go round wearing tents lest the sight of naked female flesh (we're talking about arms, legs, faces, etc here, nothing risque) drives the so-called 'men' wild with lust - ever stopped to think about their revolting logic? The men make the women cover themselves up because the men say they can't trust themselves not to rape women who are uncovered? What does that say about them? Learn to control yourselves and leave women alone...

Those wondering what I've got against sheep might not know that a female sheep that wants sex basically signals this by standing still. That's fine if you're a heterosexual because eventually the ram will notice and spring into action, but if you're a gay female sheep it's a bit of a non-starter... You stand still. If you're lucky another female likes you and... stands still... Then you both stand about being embarrassed and fending off unwanted males. It's a bit like a student disco, now I come to think of it.

I'm going off this whole lesbian thing, it seems fraught with difficulty.

Thursday, November 26, 2009

Garden Partly


I was rummaging about in some old files and I came across this set of alternate lyrics to Marillion's Garden Party. May not mean anything to anyone else, who doesn't know Ste, Simon and Fiona, but it amused me to write and it amused me again when I came across it today...



Ste's been drinking things today
Fiona's home there's hell to pay
Social drinking, another bender
Wayward Ste's with another lager

"Hello can, hello can"

Edgy cats in mewing numbers, rudely wakened from their slumbers
Time has come again for slaughter, on the chair by drunken 'master'

Water pistols keep them on the run
Again
Flying cushions chase them, every one
Again
Straafed by Steve, they sulk in hidden corners, again
Again
Oh God, not again

Vindaloos consumed en masse, betray their presence as a gas
Plazas loiter in the stomach, chemicals leech creating ulcers

"A lifetimes' drinking dims the light, the results of smirnov in the eyes"

Doctors son, her mothers daughter, will they make it to the altar ?
Please don't consume all the grass, unless accompanied by a fellow

May I be so bold as to perhaps suggest othello ?

Punting all the cats is jolly fun
They say
Going to the pub, oh please do come
They say
Drinking is the tops, a game for men
Oh they say
They say
Good God they say

I'm punting
I'm drinking
I'm snoring
So boring
I'm rocking
I'm fucking
" Who's is she ?"

Life's a party

Simon scores another few, Fiona smiles she got it too
Ste concedes a losing battle, cigarettes out - it's his flash
Flash...
Flash...

Phone calls polluted with false charm, Mother knows he means no harm
Future dinners now assured, he returns to drinking - unperturbed
Oh, unperturbed

Ohhh Punting all the cats, oh please do come they say
Drinking dry the town, oh please do come they say
He's sleeping with your wife again today
"Oh please do come"
"Oh please do come"
He say...




Incidentally, they all loved it. Ste was invited to retaliate, but sadly never did.

Psi (the Simon in the tale) also versified Ste, but the only line I can remember was :-

"It was big and brown and it wouldn't go down"

I seem to recall this related to the mother of all turds...

Pardon?


Wasn't paying much attention, but while I was I working with the radio on in the background I heard that Obama had pardoned a turkey.

Was it Bush or Blair?

Thursday, November 19, 2009

Synchronicity


In order to justify his invasion of Poland Hitler hatched a plan to make it look like the Germans were provoked; this involved the Nazis faking a Polish raid on a German radio station near the border. To create credible 'evidence' for the raid some political prisoners were to be dressed in Polish uniforms, shot and their bodies left near the station; in the plans these unfortunates were referred too as "canned goods".

As a result of this invasion the English declared war on Germany, and the declaration of war was broadcast on radio immediately following a programme titled "Making the most of tinned food".

Someone or something has an ironic sense of humour...

Monday, November 16, 2009

Dairy products


Just turned the TV on and stumbled across an episode of something called Emmanuelle 2000 on the sci-fi channel. In an improbable sex scene set in a kitchen a couple were pouring dark chocolate sauce and milk over each other... Chocolate sauce, yes, cream, yes - been there, done that - but milk? cold milk straight out of a fridge? No.

Probably some insane american black/white equal opportunity thang...

Tuesday, November 10, 2009

Windows 7

So, in a rare - one might even say unprecedented - moment of enthusiastic optimism I ordered a copy of Windows 7 (ultimate edition) from Amazon. After all, it couldn't possibly be as awful as Vista.

After forking out £140 and waiting a couple of days, this arrived:



Gods, it comes to something when even Microsoft can't afford a decent box... Hang on - light dawns - this is a pirate! I suppose that's what you get when you order software from:



Gah... I spend minutes of my life writing invective and telling them that if I wanted pirated software I would get it myself, not spend £140 on it. I wax lyrical. I am prepared for a long drawn out fight with some faceless corporation. And then you know what they go and do? Refund me in full. What sort of nasty, evil, twisted company does that? After Sue has gone to the trouble of finding that nice picture an' all...

Sheesh. You just can't trust some people.

Monday, November 09, 2009

Yahoo toolbar

No! I do not want to install your bastard toolbar! Stop asking me! Just bugger off with your "A new Java update is available and by the way, would you like to install the Yahoo Toolbar?" or your "A new AVG update is available and by the way, would you like to install the Yahoo Toolbar?" or your [deleted] garbage [deleted] bastard [deleted] software that installs that miserable toolbar... [deleted]

I wish there was a way to tell those [deleted] [deleted] at Yahoo to stop spamming the [deleted] universe with their accursed toolbar. Wankers...

I may have been going on a bit about this at work, because after one grump a chorus of "They fuck you with the toolbar" was heard...

Monday, November 02, 2009

Religious education


"The thing you have to remember about religions is that they can't all be right... They could, however, very easily all be wrong"

Friday, October 23, 2009

Engineering


So, after much rummaging about I have got this bastard long-running project to a state where it's worth taking it to the customer and plugging it into their mass spectrometer hardware, where it's basically going to be responsible for controlling the timing, driving various electrostatic lenses and acquiring data.

The design has an FPGA containing a reduced version of the R3220 (my custom 32-bit RISC processor) and about a dozen custom peripherals, it's running a fairly complicated embedded application (written entirely in assembler) consisting of 33 source files and the damned thing is responsible for some fairly hairy real-time data acquisition in a noisy environment.

As well as the device itself there are various development tools that have been written to support the design, all in all some tens of thousands of lines of code. All of which had to work and none of which had actually been tested on the machine.

And to cut to the chase, after we'd set some parameters (there are thirty-odd interface registers to play with up) and I'd restored a couple of lines that had been accidentally edited to death, it was controlling the hardware and we were looking at mass peaks... In other words, nearly everything worked first time, and the bit that didn't just required a few seconds of editing to fix.

The thing is, a programmer would regard writing so much code, and in assembler, and having it work virtually straight away as success beyond their wildest dreams, if not as being completely impossible. Me? I'm actually slightly pissed off - if I hadn't made a tired mistake tidying up a file (unnecessarily, at that) the bloody thing would have been right first time... As usual. Bugger!

Still, given that the processor was designed in only ten days and it's lovely to use, is kicking the shit out of a Nios2 performance wise and has behaved perfectly I suppose I'm allowed a small cackle of victory.

Mu-haha! MU-ha-ha-ha-oh... Sorry. Bit carried away there.

[Update on the "kicking the shit out of a Nios2" comment.

The R3220 (clocked at 30MHz) is handling more data in 5uS than the Nios2 (clocked at 70MHz) managed to handle in 80uS, so as far as the application goes the R3220 is a factor of 36 times faster, or so.

Much of this performance margin is down to the efficiency of the code they are running, of course, thought it should be noted that the Nios2 was running highly optimised C, code that was written and tweaked over a period of months. The R3220 is running hand assembler written over a period of hours and not optimised at all - there was no need.

The Nios2 system also had a lot of hardware support for functions that the R3220 system just does in software, because it can, so the performance factor is arguably higher even than that...]

Tuesday, October 20, 2009

CO2


Just watched an advert demonising CO2. Far too little and far too late.

Wonder if any of the stupid ignorant bastards who've been doing their best to doom us all by opposing nuclear power will finally wake up and admit their culpability?

No, don't be stupid crem. They're probably all gearing up to oppose nuclear fusion...

Thursday, October 08, 2009

Great Myths of the IT Industry

  • Abstraction is invariably a good thing
  • Efficiency doesn't matter
  • You can be a competent programmer without understanding hardware, low-level programming, logic, anything much
  • Bugs are inevitable

Wednesday, October 07, 2009

Alli


Alli is a new over-the-counter drug that binds to the fat in your diet and prevents the body from absorbing some of it, so that people can carry on stuffing themselves and still lose weight.

In a world where people starve to death it strikes me as almost obscene to market a drug that encourages the rich to eat too much and then shit fat...

Thursday, October 01, 2009

Even more gloom


You know, I wouldn't have thought it possible for today to be worse than yesterday, work-wise.

But it managed.

We have a reasonably large order for a new project, for which I have already designed the hardware, and so I just need to write enough of the software to be sure that the hardware works so we can safely order the PCB's, etc, for manufacture. Though actually I suspect that once started I'd actually write the whole thing so that we can provide an early sample for the customer to evaluate.

So, I duly set up the project and start to write code. Or at least I would, except that for some unknown reason the thrice-damned compiler for one of the processors involved (a Jennic RF device) has stopped working. Yes, the software has rotted. Or, to be more accurate, something I've installed (some other version of gcc, probably) since last time I used it (a few months ago) has messed with the path, or the environment, or whatever, and killed it.

Not that it gives a helpful message, you understand, no, the only indication is an essentially meaningless error from the make process, emitted from one or other of the (slightly incompatible) versions of the fucking make utility I have to have on this system. So once more, if I can work up the energy, I'm going to have to delve into makefile hell, find out what the bastard thing is moaning about, why it has changed, and what to do to fix it. And this, no doubt, will fuck with something else on the system and make that stop working with some obscure problem I will trip over later...

Oh, gods, how I detest relying on other people's development tools. I'd say most of 'em were designed by arseholes, but the truth is that most of 'em weren't designed at all and are just the product of generations of open-sore bodging.

So, what to do? There's something to be said for the idea of using virtual machines to isolate each and every piece of third party garbage out there, but that's a real pain in the arse for people like me who create systems which involve multiple pieces of hardware/software using different CPUs, languages and so on and so forth...

[sigh] I guess I'm going to have to spend some time studying the more arcane details of make utilities and makefiles so I can debug this mess. It's a study I've been putting this off for quite some time. Far too many makefiles are childishly overcomplicated and seemingly designed by immature programmers who admire complex solutions to simple problems - baroque stupidity for the terminally anally retarded.

Christ, I sometimes wonder what it is about so many programmers that makes them incapable of grasping the fact that simple solutions are to be prefererred to complex ones, but such wondering's clearly a waste of time. The answer is, as it so often is, merely stupidity.

Grump, snarl.

[later]

After a lot of farting about I sort of cured the makefile problem... What I don't understand is what brought it on. The cure was to replace a couple of absolute paths with relative paths.

Like this:

Before:
BASE_DIR = c:\foo\bah\sdk
After:
BASE_DIR = ..\..\foo\bah\sdk

Now, the thing I don't understand is what changed on the machine to stop the first version working. The paths haven't changed, the relative paths just refer to the same directories as the static paths did. The static path makefiles still work on other machines, they used to work on this one, FFS, and without anything changing now they just don't. There are times when I hate computers...

Morose-looking sheep


"Research by scientists at the Free University in Berlin has shown a link between depressed farmers and vets and the infectious Borna virus which makes cows, sheep and horses behave weirdly. One good method of cheering yourself up during a depressive bout can now be to search your memory for contact with morose-looking sheep and blame it on them".

Try as I might I can't remember close contact with any sheep, morose or otherwise... Though I have shouted "mint sauce!" at them in the distance on occasion, so I suppose it could be delayed payback.

Bastards.

Wednesday, September 30, 2009

More gloom...


Today follows the recent miserable trend with a problem being reported in something I wrote a couple of years ago, so once more I'm dragged off what I'm supposed to be working on and have to screw about setting up a different project, because my old tools don't run well under Vista (thanks Bill) I have to port various old sources into my new development tools, which means I have to update the new assembler to add support for a long-forgotten pseudo-op I added to work around an Atmel fiasco where a batch of their damned AVR processors failed to read constants from memory reliably when operated at anything more than room-temperature, then I had to chase a problem uncovered while I was adding that, then having sorted out the original problem I had to update the product website, add a new version of the product to various configuration tools and programmers...

It was well after 8pm before I left work and all of the day spent dealing with some problem I didn't even know existed yesterday.

And tomorrow, guess what - I've got to stop everything and start working on a different design which also needs to be done right now.

You can probably tell from the shitty writing style that I'm so tired I can't really think straight. Not having fun here...

Monday, September 28, 2009

Disappointment



I use this (slightly modified) Roger Dean wallpaper as a desktop background, well, a reduced brightness version of it at any rate. Yesterday James, my five year old son wandered in and noticed it...

"Dad! Can we go there when I grow up? I want to go there!"

"Sorry, James, it's just a picture. Someone drew it."

His face feel. "Awww" he said and started sniffling. It was as if I'd cancelled christmas... There's something heart-breaking about the disappointments suffered by children.

Later it struck me that (barring disasters) there's a good chance he will get to go there, or at least to places every bit as imaginary, through virtual reality.

Saturday, September 26, 2009

F1


Gah, he's driving like a pillock so I have acted to ensure Button wins this year drivers championship.

How? I hear you ask. Well, 'twas easy - I placed a bet on Barichello to win it... At the moment one of the web betting sites have a promotional deal where your first bet is essentially free, and the odds against him were something like 6 to 1, so taking a free punt on him seemed like a good deal to me. I'd like Button to win but if Barichello beats him I win £130 or so, which would go some way to moderating my indifference - disappointment, I meant.

Now, I just need someone to nobble Red Bull...

Friday, September 25, 2009

Scribblenauts


Scribblenauts is a game for the Nintendo DS and it's the first game in a long time that has impressed me. If you've got an NDS I strongly suggest you download the rom, play it and then buy the bloody thing, as I will be doing - they deserve it. It's superb.

What? Describe it? Well, basically it's a platform style game where you have to solve problems but the amazing feature is that you can write the name of just about any object you can think of into the game and have it appear.

The guys at work failed to fox it, they suggested "table" and it understands tables. They suggest "brick" and it understands bricks. I tried "osmium" expecting nothing, but it understands osmium. It knows it's dense. "Elephant" doesn't phase it, nor does "Bazooka"...

I was showing it to Sarah, on a level where there is a tree that needs to be cut down. "What would you suggest?" I asked her. "Axe" was the obvious response, so I write "axe" and one appears. I give it to the waiting lumberjack and lo, the tree was cut down. No great surprises there I hear you think.

"Suggest some other objects" I say - "Sunglasses" she replies. The game duly produced sunglasses, which the player's character then wears

"Go on, think of something awkward" I suggest. There is a pause.

"Ball gown" says Sarah. Ha! She's got it - it can't possibly... But it does. I write ball gown, and a ball gown appears. We give it to the lumberjack, who is definately not impressed and who then grumps mightily... clearly not a fan of Monty Python.

I then play about a bit. I write "atom bomb" and blow the entire level up. I write "time machine" and (glurk!) one appears and whisks me off into the past, where there are dinosaurs.

Ha! I think, and write "meteor"... One duly appears, and wipes out the dinosaurs...

At this point Psi phones and I wax lyrical at him. "Think of something!"

"Kumquat!" He says. Guess what? It knows about kumquats.

Later on I found there's a level where you have to shift a cow out of the road without harming it. I'd already found that "UFO" is recognised and gives you a flying saucer you can fly about in, so naturally... yes... you can hover over the cow and have the flying saucer pull it up. I like the way their minds work...

Thursday, September 24, 2009

Garbage


I've been finding it harder and harder to motivate myself of late and the reason, well, one reason anyway, is that I'm working on an upgrade to someone else's design and the original is such complete and utter garbage that every time I have to refer to it I want to throw the whole project in the bin and walk away.

It has a large software component - far larger than it needs to be - which appears to have been written by a beginner as their first ever software project. Unfortunately he wasn't a beginner and it wasn't his first project. Be that as it may, this piece of crap is, without doubt, the worst piece of programming I've seen in over thirty years. It is shockingly poor, a combination of just about every bad practice known to programming merged together in an orgy of sustained idiocy. None of it, and I mean none of it, shows any sign of competence whatsoever... Programmers will get an idea of what I mean when I say that the C source, all in one file, is about seven and a half thousand lines long, and that six and a half thousand lines of it is all in the main() routine. It's not that it needs to be, it's just that the author doesn't appear to grasp the idea of abstracting out common code into subroutines (whatever they're called these days)... Oh, he does know about them - he even has a couple. I'd tell you what they do, but then you'd have to kill yourselves in despair...

Oh, to hell with it. I'm depressed :(

Later: And as much as I hate it, I'm sure the bastard thing hates me even more. Wasted a lot of hours tonight trying (and failing) to figure out why I couldn't readback some ADC values, which it now appears is some sort of obscure board fault and not a problem in my FPGA design... That's the story of this project, I take one step forward and then several steps backwards with every session. Not one single fucking part of it has worked without a struggle. Every deadline has come and gone while I struggle with some obscure piece of stupidity and I'm heartily sick of it now.

[gloom]

Monday, September 21, 2009

Windoze


I must put on record that I was being unfair to Herve today.

I accused him of being the flying dutchman of the laptop world, forever doomed to spend his time running Windows 95 - but he quickly corrected me - he actually runs Windows 98 SE and is proud of it...

You know, I'm not entirely sure that using Windows 98, even the second editon, accurately portrays the dynamic, thrusting and forward-thinking aspects of Design Design as a high-technology design company. Bet he still uses lead in his solder...

[Furtively crem returns to the assembler source for an FPGA processor he's tweaking. It is clearly a variation on a Z80...]