Monthly Archives: October 2009

From the Imaginarium of Avaragado

The best films transport you away from your humdrum existence of gas bills, vexatious traffic lights and phlegmy work colleagues, if only for an hour or two. You forget the CGI, ADR and implausible dentalwork and instead inhale the director’s vision.

Sadly, nobody who sees The Imaginarium of Doctor Parnassus will entirely lose themselves in the film; not for a few years. Maybe ten. It will forever be subtitled in your mind The one Heath Ledger was filming when he died, and not until people can forget that or not know it will they be able to properly judge the film or experience it as intended.

It’s a bonkers plot bulging with trademark Gilliam ideas, visually potty as per, but every time Heath Ledger appears – or Johnny Depp, or Jude Law, or Colin Farrell – The Bungee Of Knowledge whips you back into the real world. And you find yourself thinking “is this the last scene he filmed?” or “I bet they’re glad the sound was good enough as he wasn’t around to redub it” or “have they digitally inserted his face anywhere?” or “did they film this scene with Ledger but reshoot it with one of the others?” or “this scene is surely a tribute to him” or a thousand other thoughts.

For the next few years this film’s a bit of a dancing bear: it’s not about the quality of the dance, but about how they got the bear to dance at all.

The device Gilliam used to cope with the loss of Ledger works fine within the context of the film. The eponymous Parnassus’s titular Imaginarium is a kind of mind-projection Tardis, which allowed them to plonk in a replacement thesp or three and wave it away with a couple of lines of dialogue.

But how much the overall storyline was recarved after Ledger’s death I don’t know. Perhaps not a great deal, although I very much suspect several “INT. CARAVAN. NIGHT” and “EXT. CARAVAN. NIGHT” scenes had “INT. IMAGINARIUM BLUE SCREEN. #7777FF” scribbled over them, especially later in the film.

Regardless of the merits of the movie, or about the struggle Gilliam had to complete it, I almost wish he hadn’t. X’s last film, for various values of X, tends to hover around poking away at their legacy, being referenced ad nauseam in any piece about X. Raul Julia’s last film was Street Fighter. Bela Lugosi’s was Plan 9 from Outer Space. Imaginarium is not in the same category as those two films, not by a long way; but it doesn’t seem a fitting end. It’s a bit too long and a bit too rambly. An ellipsis rather than a full stop.

But ask me again in ten years.

Avaragado’s rating: dwarf in a basket


Leave a comment

Filed under Random

Tuscany photos

I’ve finally uploaded all my photos from Tuscany. You can see them, plus those from Chris, Melanie and Andy, in a lovely little Flickr group. We’re still waiting for Chef’s photos.

1 Comment

Filed under Random

The invisible revolution

People generally notice that they’re taking part in a revolution. Barbarians-at-the-gates revolutions with Bolshevik oiks toppling Romanov nobs and their imperialist haemophiliac ways are self-evident thanks to the bodies in the streets and the widespread clampdown on interesting haberdashery. But we’re in the middle of a revolution now, a revolution most people aren’t even barely aware of.

Two skirmishes in this revolution have taken place in the last week. They’re not the first and won’t be the last, but they’re a classic demonstration of cluelessness from the Old Guard.

The first can be summarised in one word: Trafigura. You, like me, had probably not heard the name before this week. The first inkling I had of a percolating story was a tweet from Ben Goldacre suggesting that the Guardian had been gagged from reporting Parliament. The bare facts emerged pretty quickly: this tweet revealed all to me a short time later. What followed, and the story behind it, is well documented so I shan’t bother here. The salient point to make is: welcome to a different world. In this world, sufficient eyeballs routes around censorship. Maybe not immediately, but ultimately.

The second skirmish involves the Daily Mail and is ongoing. One of its columnists, Jan Moir, wrote a hateful story that appeared on Friday morning entitled Why there was nothing “natural” about Stephen Gately’s death. As with Trafigura an immediate twitstorm ensured that the bigotry was well publicised. Comments on a Daily Mail article are usually of the string-em-up, ship-em-back variety, but not on this one: the writer’s views were soundly condemned. The Daily Mail changed the story’s headline (but not its content) in an attempt to paper over the cracks, and the article’s author has issued a non-apology apology. But more importantly for the paper, companies have pulled their adverts from the story.

People power again, yes; big deal, nothing new. But it’s yet another demonstration of the crucial difference between the bolshies and the nobs. What Trafigura’s legal team Carter-Ruck and the Daily Mail’s journalists don’t get is that people – more people every day – now realise that power, real power, is bottom-up not top-down. That’s at the core of this revolution.

Jan Moir complains in her non-apology that there is “clearly a heavily orchestrated internet campaign” to accuse her of homophobia. Excuse me while I point and laugh at the deluded woman. The Daily Mail is itself massively guilty of orchestrating campaigns in a traditional top-down approach: it was the Daily Mail that hyped up the Russell Brand/Jonathan Ross story, encouraging its readers to complain en masse to the relevant authorities about something they hadn’t themselves heard. That’s orchestration. Top-down.

Moir’s story about Gately offended individuals, who commented or tweeted or blogged to make their opinions known to others. Those others read the article themselves, made up their own minds, and communicated likewise. The network effect ensured that, pretty soon, word spread to connectors (to use Gladwell’s term from The Tipping Point) like Stephen Fry, Graham Linehan, Charlie Brooker and Derren Brown who have thousands of followers. Bottom-up. (I’m not using the word viral because that makes me think of marketing, and this is more fundamental.)

The same effect a few days earlier ensured everyone knew about Trafigura and its “super-injunction” gagging order on the media, even if they hadn’t read the Guardian and put two-and-two together. People also soon learned that Wikileaks held a copy of the Minton report, which says that Trafigura’s oil waste, dumped in west Africa, was potentially toxic. Meanwhile traditional media couldn’t even mention the report’s existence. Last night Trafigura caved again, since the ants had well and truly unstitched the bag to let out the potentially toxic pussy, and the Guardian became free to publish the report. Trafigura and Carter-Ruck bodged this up in as bodgy a way as it is possible to bodge, and questions are now being asked about how, on earth, could a judge issue such a super-injunction in the first place. And why do we have super-injunctions anyway?

Publicity about Moir’s article ensured the Press Complaints Commission web site was hammered out of existence for a time. But the PCC won’t do anything of consequence: it’s a toothless body, controlled by the newspapers themselves, that exists as a sop to politicans afraid to regulate an industry that knows all about their cupboard-based body parts. In any case its policy is to “normally accept complaints only from those who are directly affected by the matters about which they are complaining.” Which is handy.

The way to deal with the Daily Mail is, I hope by now, obvious: bottom-up. Continue to publicise its bigotry and hatred. Make its advertisers pull out.

The two incidents I’ve highlighted aren’t isolated cases. Earlier in the year a single tweet by Graham Linehan started off a “we love the NHS” campaign on Twitter to fight back against uninformed or deceitful comments from those on the side of private health insurers in the US healthcare debate. Many right-wingers in the UK proved they Just Didn’t Get It by claiming this was a Labour party campaign: nope. Bottom-up, not top-down.

Perhaps I’m being idealistic. Perhaps this is merely a Prague Spring of freedom before the tanks roll in. But I don’t think so. People may not be brandishing pitchforks but change is afoot and the world will be a very different place in ten years or so. At the moment we’re still clanking our way to the summit of the rollercoaster, and don’t have the faintest idea what’ll happen on the way down.


Filed under Random

Why (some) Open Source projects suck, part 94

I hate PHP. PHP is the bunny in the road having a scratch, oblivious to impending, blood-streaked, gut-strewn death. It is the Saudi bar that serves everything except what you want. It is the mildly fragrant old man leaning too far through your passenger window giving you directions round the corner via the most perverse, circuitous route a human can devise.

In my job I work with PHP constantly. There’s no doubt that PHP is great for some projects: it’s easy to do simple stuff. But, my god, on substantial projects it’s a pain to work with compared to Python. All languages have their good points and their bad points, yes, blah, religious issue, you can write bad programs in any language, etc, but you can’t deny that Python has an elegance, a philosophy, that PHP has never had and never will.

PHP is an overflowing slop bucket of poorly named, arbitrarily parameterised, ill-considered functions encrusted with half-arsed OO bolt-ons and it doesn’t care two hoots about clarity, brevity or maintainability.

But all this is an aside, albeit a ranty, spit-flecked one, to the main point of this blog.

Ladies and gentlemen, let me introduce you to this PHP error:

Fatal error: Exception thrown without a stack frame in Unknown on line 0

You don’t need to be a PHP guru to realise that “Unknown on line 0” looks, smells and tastes like a PHP bug. There is no stack trace; no other assistance to help you track down the cause. That’s yer lot.

I’ve been seeing this error randomly on one particular cron job but, since I could find no resulting damage and my head was deeply entwined in some other code, I’ve left it alone until now. Today I investigated further. It turns out that PHP has an annoying limitation: it explodes with the entirely unhelpful fatal error above if there’s an uncaught exception within a destructor. It’s up to you to figure out which of your possibly large collection of objects is committing this particular mortal sin.

I discovered this via Google, which pointed me at PHP’s own bug tracker. The developer who reported the bug included everything a good developer should, including details of the stack trace he expected to see and the nonsense he received instead. There’s no doubt that this is a bug in PHP and the error message is entirely useless, no better than saying “bye!” and falling over.

The response:

Throwing exceptions in __desctruct() is not allowed.
Should be documented..

And so they treated it as a documentation problem, added a note to the doc, and closed the bug. See for yourself.

I cannot begin to describe how much this annoys me. Yes, document the problem. No, the problem has not been fixed. Adding a one-line note does not absolve PHP’s developers of any and all consequences, and PHP’s users are not helped in any way by this tiny documentation change. If you think they are, you are probably the type of person who mistakenly believes that engineers memorise every last wrinkle of every API they use.

But it gets worse. As in all bug trackers, especially those open to the public, there are duplicates. Duplicate reports of this particular bug get the response “Thank you for taking the time to write to us, but this is not a bug.” It’s not a bug because it’s mentioned in the documentation, of course! A magic wand is waved and all shall have presents!

This is just profoundly wrong. The only possible response in any professional development process is to reply “Thanks for the report, and sorry you hit this bug. As this has already been reported as bug XXX, we’re closing this report as a duplicate.” Bug XXX, of course, would be open and – I’d say – reasonably high priority since it can be so hard to debug.

I see similar things all the time in PHP’s bug tracker. In one case someone claims “That’s a gcc bug not a PHP bug” and promptly closes the bug, disregarding the fact that PHP is often built from source and its build process happily builds using this supposedly buggy gcc without warning the user that their code will break in undocumented ways. It’s really, really simple: just because there’s a bug in a downstream tool it doesn’t mean it’s not your problem: your users see a problem in your software, and see that you’re not helping – they don’t care about the downstream tool. “I’m sorry sir, I don’t see why we should fit a suspension system to our vehicles: the problem is with the roads.”

I’m picking on PHP but it’s by no means the only culprit, sadly. I’ve seen similar problems with ExtJS. Are there in fact any open source projects that get this right?

1 Comment

Filed under Random

Towers and showers

Under grey skies we sped first thing to Pisa. There is after all a substantial dearth of photos of the work of 12th century cowboy builders, and especially of 21st century tourists pretending to prop up said shonky works as if they were the first to think of such an idea despite half a dozen others on either side in exactly the same pose.

I suggested that we four gentlemen in the party should arrange ourselves in a near-vertical for a photo we could christen the Leaning Tower of Geezers, but I was cruelly shunned. I’m sure it’s not an original idea but it was MY unoriginal idea, dammit, so intrinsically better than those propper-uppers.

It was to be a relatively short visit. We bypassed the infinite row of market stalls selling leaning limoncello bottles, ferchrissakes, and drove to Lucca for lunch.

Inside the still-imposing medieval wall protecting the old town we found a pretty piazza retaining the oval shape (and supposedly some original stone) of a Roman amphitheatre. We parked our collective behinds at a café. Beer, pasta, sunshine.

And then thunder. A darkening. A few heavy drops of rain. Folllowed by half the Med.

Safe under canvas we waited out the storm with another beer. It was thirty minutes or more before the rain relented; we started back to the car but got nowhere before the other half of the Med descended.

No escape. Well, Chris and Chef had bought umbrellas from an enterprising tat-seller and Andy had a waterproof jacket secreted about his person just in case, but Melanie and I had decided to risk it. It was a long, wet walk in an ever-increasing monsoon.

It was like those adverts where beautiful youths frolic in a rain shower. Identical in fact. Maybe a marginally lesser degree of frolic. And much, much more water.

And an hour in the car back to the villa. Nice.

Memo to self: beach holiday in spitting distance of food, drink and hotel next.


Filed under Random