Monthly Archives: December 2007

Chinese preface

Some time ago, 张立强 (hope that comes out right – it’s cut-and-paste from his/her email From: line) contacted me to ask if I’d write a preface for the chinese translation of my book.  I wrote something, but wasn’t very happy with it, so I put it aside.  I only remembered it when 张立强 bugged me about it this week.

So I finally got around to revisiting it.  Realising that the subtleties of language are going to get lost in translation anyway, all it really needed was an ending.  So I had a go, and sent it off.

— but — 

I was foolish enough to mention it on #apache-helpdesk, and they’ve been ribbing me about it ever since.  So, dammit, I’m going to put my poor little effort here:

Apache HTTPD has long been the leading server on the Web.  Apache 2 is more than that: it’s a versatile applications platform.  But for several years, its adoption amongst developers was held back by the lack of good documentation.  There was the code, the mailing list archives, and very little else.  I wrote the Apache Modules Book to try to fill that gap, and make it easier for developers to take advantage of its capabilities.

Two things have really thrilled me since the book was published.  The first is the great reception it’s had, from the first reviews (within weeks of publication) to the regular feedback from readers who find it useful.  The second is the news that it’s being translated into Chinese, bringing it to what must be the biggest and most important developer community outside the English-speaking world!

As you will see from the dedication, I have a dream of how telecoms and the Internet are liberating us from the drudgery of the office of the past.  I can now work from my home for clients anywhere in the world, and with a community of colleagues from every continent.  I don’t even have a car, and in the modern world, my life is far better for it than others who are still living in the past.

Sadly, we cannot hope to integrate the Chinese and English-speaking communities at the level of our day-to-day work.  But we can build bridges to share our work and help each other take advantage of it.  I am delighted to hear that my book is to become one such bridge.  I hope our Chinese readers will find it useful, and I look forward to seeing more applications follow the lead set by mod_fcgid, the first Chinese-developed Apache module to bridge the gap back and achieve widespread recognition in the English-speaking world.

Finally, let us hope that maybe the map of Apache developers at need not always be so skewed as it is now towards the English-speaking “old world” of the Internet in Europe and North America: I look forward to seeing our community enriched by more of the best talent from “new world” countries such as China!


Link Valet timeout

Link Valet, the Site Valet tool for checking HTML links, has always been a somewhat dangerous tool to run.  Making lots of HTTP requests to external servers is inherently open to abuse, and particularly to a DoS attack on my server.  That’s one reason I haven’t released the script: I can react to problems on my server, but don’t want to take on the responsibility for what might happen elsewhere.

I’ve made a few adjustments to restrict it over the years: reducing the timeout for checking a link, reducing the level of recursion available, denying access to known abusive ‘bots.  But in the last few days, someone’s been abusing it to the point of overloading the server.  So I’ve put in an additional limit: a timeout on the whole thing.  That is, a graceful timeout: the script will complete, but will not check any more URLs after the timeout.

So far, it seems to be working:-)

My Hero!

Like all intelligent people, I greatly dislike Christmas. It revolts me to see a whole nation refrain from music for weeks together in order that every man may rifle his neighbour’s pockets under cover of a ghastly general pretence of festivity. It is really an atrocious institution, this Christmas. We must be gluttonous because it is Christmas. We must be drunken because it is Christmas. We must be insincerely generous; we must buy things that nobody wants, and give them to people we don’t like; we must go to absurd entertainments that make even our little children satirical; we must writhe under venal officiousness from legions of freebooters, all because it is Christmas – that is, because the mass of the population, including the all-powerful middle-class tradesman, depends on a week of license and brigandage, waste and intemperance, to clear off its outstanding liabilities at the end of the year.

– George Bernard Shaw

No trains?

As usual, our rail network is closing down for an extended period.  Apparently that’s to facilitate engineering works (OK, fairy nuff), and because there’s very little demand.

Yeah, right.

Perhaps the reason there’s no demand is that we’ve come to expect a shutdown, and plan around it?

Some years ago I incurred a large and unwelcome taxi fare because the buses (not trains – which I’d taken the trouble to check) were shut down on new years day, so I was stranded when I arrived at Plymouth station.  Since then, I’ve avoided any kind of travel beyond where I can comfortably walk or cycle over the silly season.

So there we have it.  You won’t get demand from me unless you provide a service.  I expect others could say the same.

Anyway, this year the meeja have started to complain about it.  So maybe, just possibly, something might change in future years.

The Liar comes into his own

Today’s news: the Prime Minister who made war and strife his mission has been received into the Catholic church. He should be truly at home within the traditions of that Great Institution that brought us both Europe’s biggest ever genocide (the Inquisition – through a spanish theocracy) and the biggest in living memory (the Holocaust – through german thugs)[1]. In that company he may not be top dog, but he’s still a major figure.

Aside: interesting that today’s catholic church was against some of The Liar’s more outrageous ventures. The bloodlust is intermittent, and is just one facet of their history. Nevertheless, they’ve welcomed him in a very public manner.

Here’s a prediction: The Liar’s major legacy in the UK will be the awakening and stirring of religious hatred, in a country that had hitherto been essentially free of it[2]. Ordinary people (like me) went through the 1990s without even realising the religious significance of the headscarves some of our asian students wore: it was none of my business. Let alone the differences within the white majority, encompassing various flavours of christian, jew, and atheist.

Now that scarf, along with other tokens, has become a symbol of “them and us“, the perennial root of racial/cultural/whatever tension and hatred. Religious schools have been strongly encouraged and given special privileges, so we’re bringing up a generation of children who will have a strong perception of them and us. Within them surely lurk dangerous religious nuts seeking to indoctrinate a generation with radical messages.

His mission will be complete when we’re all as divided as Northern Ireland. Which, to be fair, he has done something to help improve.

[1] Yes of course that’s a simplification!

[2] Excluding Northern Ireland, and perhaps one or two other areas where traces of it remain.

Evening Café

One of the best lunch spots in Tavistock is Robertsons, the organic wholefood café.  Recently they’ve expanded, and announced evening opening serving pizza: Fridays in December, and three evenings a week in the new year.

So, I had to sample their evening fare, and today I twisted Chrissie’s arm into joining me for a meal there.  It’s not really pizza: indeed, the pizza of the day is just one item in a small menu, and we both had different things, (albeit with common hints of italian influence in the recipes).  Apart from having alcoholic drinks, it was really a café meal: very nice, but lunchtime rather than evening portions.  So now I’m adequately fed, but by no means as well-stuffed as expected.

They also had a live band in there playing.  They were bad, but not obnoxious.

Next door to them is the Birds Nest, the Chinese restaurant that serves probably the best evening meals in Tavistock.  I don’t think they need fear the new competition too much, but it’s nice to have another choice locally.

Waste disposal

OK, I have a dead lightbulb.  I bought a new one, and read on its little box that I should dispose of it carefully.  Not throw it out with my regular household waste.  At the same time, I’ve had to replace the batteries in my radio (for the first time this century, I believe).  Ditto.

Don’t these things come under electronic waste disposal regulations these days, meaning that someone is under an obligation to take them off my hands?  I looked at the council’s website for clues, and found none.  Their feedback form asks for such extensive information I thought it almost easier, and potentially more satisfying, to go round in person and harangue someone.

So I’ve just been.  I put the stuff I need to be rid of in a small carrier bag, and went round to complain of the absence of information, and point out that most such waste is almost certainly going straight into standard household dustbins, and hence landfill.

FWIW, they told me I can take such waste to the Crowndale facility.  I expect for most people, that means a car trip, and hence more pollution than you save by not throwing the stuff in standard domestic waste.  Yeah, right.

I also took the opportunity for a rant about the absurdity of how they recycle glass.  The lady I spoke to took the bait, and started telling me about washing all those difficult jars in hot water and detergent.  Good grief, she’s probably doing more damage washing them up than sending them to landfill!

I don’t expect it’ll do any good (except in that they took the rubbish off me).  But it can’t hurt, either, if someone gives them a hard time about it.

Transcoding module

One of the new features in mod_proxy_html 3.0 is improved i18n support, adding character sets supported by apr_xlate (normally iconv) to those supported by libxml2.

In generalising this for other filter modules, I’ve decided to split it out into a new transcoding module. It will be tied to libxml2 applications, and will be usable both before and after any libxml2-based content filter. For maximum efficiency, it will only handle charsets that are not supported by libxml2.

It will also support additional preprocessing fixups that experience has shown necessary. That includes adjusting charset declarations that are invalidated by transcoding, and fixing tag-soup problems that screw up libxml2’s htmlParser.

It won’t do anything useful yet, but I’ve committed mod_xml2enc as a work-in-progress to svn at When ready, it’ll borrow from several existing modules, and replace transcoding and preprocessing functions in them.

Throwing good money after bad

Even as the mirage of a private-sector bailout for the taxpayer billions thrown at Northern Rock fades, central banks are to throw far more taxpayers money at the commercial banks. That is, banks that threw their money into what is probably the world’s biggest ever bubble (USA, UK) in a classic race to the bottom, and are now terrified of the pyramid collapsing.

I’ve already commented on the demise of Prudence and expected inflation. Combine that with throwing unlimited public money in in panic, and we’re straight back to something like the 1970s. Or perhaps worse.

The best hope for avoiding much deeper trouble now is if the remaining banks can keep away from this money.

Wind power (and how not to do it)

The government has announced a serious programme of building offshore wind farms to supply a significant proportion of our energy needs. For the first time in a political generation, this is not obviously-empty bullshit, but looks like a real announcement. So let me join with everyone else in welcoming it.

However, I must express some reservations about the plan. Apart from practical problems like engineering and maintenance (which I’m sure can be solved – eventually), there are a couple of serious problems.

The lesser of these is the inevitable law of unintended consequences. Some idiot has already described the plan as powering all the UK’s households energy by wind. So householders, anxious to massage their consciences, will tell themselves “my energy use is now sustainable”, and cease to think about constraining it. But that only really affects those few households that are doing anything more than empty tokenism in the first place.

The more serious problem is that it has no economic basis. For the time being, and perhaps throughout the construction, the immediate cost of providing this wind power exceeds that of burning hydrocarbons. So the work will be driven by government rules and incentives. History has demonstrated clearly that free markets are altogether better than command economies for efficiency and innovation. Yet here is the government, commanding let it be so.

The government understands about markets They will create a competitive market, as they have done in other areas of public expenditure, from construction projects, to weapons procurement, to schools and hospitals. So where’s the problem?

The problem is that it’s a narrow micro-market. Sure, it’ll drive efficiency and innovation in the business of building and operating offshore wind turbines. But it will do nothing for out-of-the-box “big picture” ideas: in fact, it will actively lock them out, if they don’t happen to fit neatly in the defined micro-market. That’s the same underlying straitjacket that afflicts the command-and-control economy.

I refer the reader to my sketch Alice in Business for a story of how a marketplace in a narrow sector stimulates incremental optimisations at the expense of a radical order-of-magnitude improvement.

It’s not possible at any price to clean up fossil fuels to the standards we rightly impose on the nuclear industry (one could say, the true cost would be infinite if we did). The proper way to bring in large-scale development of renewable energy is to make fossil fuels pay a more realistic cost for the damage they do.

Governments can do that through taxation: indeed, I have argued for a major reduction in taxes on individuals and companies, with the shortfall being made up by taxing destruction and use of non-replaceable resources. Adjust taxation every year, and make it clear to everyone that this will continue for as long as we are burning any fossil fuels, and suddenly the free market will drive huge investment in renewable energy, including offshore wind.

That’s the real market, where Big Ideas can compete on their merits, and not be squeezed out by narrow constraints.

A political generation ago, John Major’s government did that, albeit just in one market sector. But instead of broadening it to encompass power generation, the present government killed off his good work. While the wind power programme is welcome, it’s no substitute for stimulating the market.