For some reason I found myself reading a review of How Would You Move Mount Fuji, William Poundstone's book about questions asked by interviewers at Microsoft Corporation.
The review is pretty standard stuff, the usual mix of summary, ghastly neologisms (``key takeaways''-- really!) and occasional name dropping, and since I haven't read the book I can't really comment on it. But I was drawn to two of Ole Eichhorn's example questions and answers:
First, we explore algebra:
Mike and Todd have $21 between them. Mike has $20 more than Todd. How much does each have (you can't use fractions in the answer).
Right, you think. A simple question. Then we are told,
This question has no answer!
and Eichhorn explains,
Apparently sometimes people ask questions which have no answer to see how candidates react. This might be helpful in some situations (if you're hiring for a company with a confrontational culture!), but I would never use it; I don't like what it says about me and my company, and I can't imagine what it would say about the candidate, either.
What does this illustrate? That Ole Eichhorn apparently doesn't know that dollars are divided up into cents:
m = t + 2000¢;
m + t = 2100¢
Hence,
m = 2050¢;
t = 50¢
Next he asks (the question is not, apparently, from Poundstone's book):
Consider a pool table with the balls set up for a break. You must write a program which models the table, so you can predict where all the balls will end up. How do you approach this?
This is quite an interesting question, to which he gives a less interesting and rather misleading answer:
First, do they deal all the physical constants out of the deck? Hopefully they can immediately ignore all that stuff, treat them as constants, and move on. When people ask detailed questions about the masses of the balls, pool cue velocity, etc., I get worried.
If he means what he says, that's pretty worrying. Of course, the actual values of the physical constants don't matter in the final simulation, but they are very important in determining how to approach the problem, since like all physical systems this one is controlled by its dimensionless parameters. As a particular example, consider the question of timescales. Three relevant timescales in the problem are
Between the first (say half a second) and the third (say the diameter of a pool ball divided by the speed of sound in nitrocellulose or whatever they're made of now, say about ten microseconds) there is a huge difference, and the size of this ratio, about 50,000, is very important in designing the simulation. Ignoring this suggests a failure to understand the physics involved.
So, we move from physics to implementation, without, apparently, pausing to understand the physics:
Second, do they take an object-oriented approach? To model a problem with sixteen identical balls, six identical pockets, etc., one would hopefully do so... If they don't go there themselves I'll ask ``what objects would you need?'', and ``what are the properties and methods of each object?'' If they can't think about the problem in this way, that's a red flag.
Object-oriented programming is, of course, very fashionable nowadays and it's hardly for me to say that it's a poor choice here. But there is a subtlety that's worth pointing out. Such simulations normally wind up solving big systems of linear equations. This is a representation which, because it loses all type information -- it's just a big pile of numbers -- is quite inimicable to the typical software engineering notions of object-oriented design. Such a program will have a bunch of data representing the physical variables and some code which marshals this into big linear equations which then get solved. The physical variables are then updated from the solution to the equations.
The actual data structures used to do this don't really matter and may well not be an important part of the implementation. Object-orientation is one way to express the solution, but it's not the only one, isn't necessarily a very helpful one for implementation, debugging or understanding, and -- in the context of an interview -- just sitting there and waiting for the candidate to say `object-oriented' or ``I'd start by defining a class CPoolBall'' doesn't seem very helpful.
As an alternative, a FORTRANesque statement like ``I will have nine arrays of length sixteen which store the positions, linear velocities and angular velocities of each ball, and a DO/WHILE loop which computes an interaction matrix based on these'' is an equally valid solution. Should the interviewer reject it because it lacks the object-oriented pixie dust? If you accept the idea that software engineering is like real engineering and therefore that known tried-and-tested solutions are sensible choices for future implementations even if they do not comply with current programming fads, then the FORTRAN approach is an extremely sensible choice which corresponds to historical best practice. Reliable, well-understood FORTRAN simulation programs outnumber C++ ones by a substantial margin.
Anyway, having disposed of physics and implementation, we move to numerical analysis--
Third, how do they deal with time? [...] Ideally they'll come up with some sort of discrete time simulation, where they have an outer loop that cycles through units of time, and computes the new position of each object. If they don't deal with time correctly their solution is incomplete.
-- at which point we're very likely to come a cropper, since all the questions about timescales were apparently ignored in the first part of the answer. In particular, because there is a wide difference between the fastest and slowest timescales in the problem, you must either wastefully run your simulation with a fixed timestep (`unit of time') suitable for the elastic interaction of pool balls, or you must use different timesteps for different circumstances. This is very important and cannot be glossed over.
If Eichhorn's suggested answer is what he expects from a strong interview candidate, I'm at a bit of a loss as to why one would ask it.
Are these good interview questions? Well, who am I to say? I'm not in the commercial software development business now, though thinking back to people with whom I've worked, I don't think that their responses to these questions would divide them by competence particularly effectively. The answers given by Eichhorn aren't exactly shining examples, but that may not be the point either.
There are other things to wonder about here, some of which include, ``Why are Microsoft interview questions such a popular topic?'', all sorts of questions about authority and accuracy which you can read into the above; and, also, why such pontifications irk me so. I'd love to hear your comments.
Apparently David Blunkett has now stopped beating about the bush and is advocating the introduction of identity cards, as opposed to the fluffy, happy `entitlement' cards which were previously proposed.
One Andy Burnham MP appeared on the Today programme this morning to defend this latest extension of authoritarianism. Burnham has a bit of a bee in his bonnet about ID cards, and on the radio repeated the arguments he trotted out in a letter to the Guardian in February.
Burnham tells us that,
``people are accepting that ID cards are necessary and inevitable,''
though he doesn't bother to mention which people are accepting this, or to name the focus group to which they belong. In response to his claims about the marvellous benefits of the cards, Alex Runswick of Charter 88 quite properly pointed out that
``the idea that they're going to prevent terrorism is simply wrong''
and offered in support the observation that all the perpetrators of the September 11th 2001 attacks held valid identity documents. To which Burnham responded,
``That's the American system... what's being proposed here is a very sophisticated system that would also contain biometric information.''
By now it should be obvious that as soon as a politician mentions the word `biometric' you should bury the silverware and head for the hills. Naturally Burnham -- whose degree in English doubtless leaves him with particular expertise in this field -- didn't trouble to explain how biometric information would help the State protect itself or its citizens from terrorism. I emailed him earlier, asking
Could you give me an example of a recent terrorist attack in a country without ID cards which would have been prevented by their introduction?
but he didn't bother to respond. This is probably not surprising, since he didn't respond to the same question when asked it on live national radio, except to make the rather surprising claim that,
``People don't have a right to anonymity. The State has a right to know who people are.''
Now, this is a bit of a novelty. Normally we think of the State having responsibilities to its citizens, and the citizens having rights and responsibilities to one another.
The claim is, of course, a value judgement, but regardless of this it cannot be in any way relevant to the ID cards debate. Nobody is asserting that the State has newly acquired this right -- if it has the right now, it had it all along. So we can't make an argument about introducing ID cards now on the basis of a `right' which the State either (a) has always had, or (b) has never had, since there has been no change in the State's position. It's not really clear why Burnham mentioned this at all. (If, on the other hand, he's claiming that the right is newly acquired, we should wonder how this came to be, especially since there has been no public debate on this issue at all.)
After his brief excursion into philosophy, Burnham returned to terrorism. He argued that,
``Terrorism is going to be the biggest threat to our security. By its nature it's hidden: it blends itself into the crowd.''
Again, no explanation of why terrorists -- who are unlikely to miss a chance to blend into the crowd by carrying a valid ID card -- should be in any way thwarted by Mr. Blunkett's bonkers notions.
At this point, John Humphries -- presumably judging that no more blood was likely to be squeezed out of Mr. Burnham's understanding of this issue -- asked a question of Alex Runswick:
``Most people in Europe carry [ID cards] quite happily. Why should we be different?''
To which she mumbled something about their rights being protected by written constitutions. This is, of course, irrelevant. Firstly, our rights are now protected by the (written) Human Rights Act. Secondly, Europeans accepted the imposition of ID cards long before their governments deigned to grant them the luxury of written constitutions. The real reason that typical Europeans accept ID cards -- and the reason that we should not -- is the history of authoritarian government which blights normal European states. A long parade of Tsars, Emperors, Kaisers and Fuhrers have cowed the occupants of mainland Europe into believing that carrying an ID document and producing it at the whim of one or other police or customs lackey is a perfectly natural state of affairs. We should not accept their verdict on this matter. As John Simpson points out in his autobiography, 150 years ago all travellers except Britons were frequently expected to produce their papers whenever travelling. Many Frenchmen and others would, when challenged, claim to be English in order to avoid this imposition. Since then, our position has worsened. We are expected to carry documents when travelling, though, as A P Herbert quotes in Stamp out Stampery,
... the passport, designed to allow us to `pass freely, without let or hindrance' is, in fact, the cause of more lets and hindrance than anything else. The nerves of the globe are worse [at the time of writing, in 1951], it is true, and its future seems even less assured than in 1925. But the disturbing suspicion grows that passportery has little practical purpose except the maintenance of full employment among the passport tribes.
Passports are bad enough. There's no reason to extend their tyranny into our everyday lives. Blunkett and his cohorts claim that ID cards will prevent terrorism -- which they won't -- and that they will assist him in implementing his policy of locking asylum seekers up in concentration camps and preventing them from obtaining employment. Even those who think this is a good idea probably don't imagine that ID cards will actually help, and again nobody has explained how they would do so. It's hard to think of an argument in favour. I observe also that since I last wrote about this the cost of the marvellous instrument has quintupled to £25.
As for Andy Burnham, I'd be fascinated to know whether his statements on this matter are his own, or if they are fed to him by Mission Control. His letter to the Guardian was a masterpiece of indirection, with a first paragraph making the claim about the cards being `a useful tool in the fight against a range of social problems, from anti-social behaviour to terrorism', and a second paragraph deftly avoiding explaining how the cards would achieve this, and instead claiming that `the British people' would be happy to carry the damned things at all times. But the fact that this carried as little rhetorical weight as typical New Labour statements doesn't necessarily mean that it came out of the same sausage machine.
Anyway -- and I know that this is futile -- if we must have ID cards, could at least one of their advocates make a reasoned case for them, explaining what benefits they will bring, how they will come about, and why one will be worth £25 to me?
David Blunkett:
If you want to recieve a state pension, you should welcome economic migrants into this country, since otherwise there won't be enough young people to pay for it.
I saw The Matrix Reloaded, a tedious kung-fu movie mixed with paperback-grade philosophy. The fight scenes are over-long and quickly become boring. The car chase, though quite entertaining, doesn't live up to the reviews. In summary, don't bother.
This week's futile letter of protest:
Anne Campbell MP,
House of Commons,
London,
SW1A 0AADear Anne,
Two weeks ago I wrote to Beverley Hughes, Minister for Citizenship and Immigration, to establish why the Government had acknowledged receipt of only 2,000 of more than 5,000 responses to the Home Office's consultation on identity cards. I enclose a copy of my original letter.
She has not responded to my inquiry, and the Home Office appears to be pressing ahead with an identity cards scheme without resolving this serious anomaly in the consultation procedure.
Since I wrote to Beverley Hughes, Need to Know has reported that the the 5,000 consultation responses from members of the civil rights campaign Stand have been treated as a single response, giving their arguments one five thousandth the weight of others'.
Why has the Home Office manipulated the results of the consultation in this way? Why has Beverley Hughes not answered the same question put to her, and apparently the questions of many others concerned about this issue? Will the Government press ahead with an identity card scheme despite the overwhelmingly negative response to the consultation?
Yours sincerely,
Chris Lightfoot.
My original letter to Beverley Hughes:
Beverley Hughes MP,
House of Commons,
London,
SW1A 0AA10th May 2003
Dear Beverley Hughes,
I read with some concern of your statement (Hansard, 28th April 2003) that 2,000 responses had been received to the Home Office's consultation scheme on identity cards. As Need to Know points out, at least 5,000 citizens are known to have commented via the `Fax Your MP' web site. I cannot understand how only 2,000 responses have been received when we know that at least 5,000 were sent. Since the Home Office cannot possibly have mislaid 60% of the responses submitted, there must be an alternative explanation. I would be much obliged if you could tell me what it is.
My own response to the consultation exercise was sent by email on the 13th January. Looking back through my email, I see that I did not hear any confirmation that it had been received by the Home Office. I enclose a copy; I would be grateful if you could confirm for me that it was received and assessed.
Yours sincerely,
Chris Lightfoot.
Chances of getting a response? Close to nil, I'd say. (I'm still waiting for one from Blunkett, though in the intervening period the courts smacked him down on that one. This, naturally, didn't stop him whining that -- to paraphrase -- he's the Home Secretary and he wants to be able to break any laws he wants.)
``A random sample of web loggers mainly discuss message (85.5%) rather than medium. Their posts are split approximately evenly between original content and regurgitating the work of others. `A-list' web loggers are more likely to regurgitate the work of others, and to discuss web logging and associated subjects rather than topics of more general interest.'' -- some data on web logging and its adherents.
I hate to comment on Radio 4's Any Questions?, but my attention was drawn, like a moth's to a candle flame, to two statements of breathtaking idiocy uttered during the first five minutes of yesterday's programme.
The first was from Jack Cunningham, whose prior expertise in agriculture obviously leaves him specially equipped to pontificate on the difficulty of finding `weapons of mass destruction' in Iraq. He made a local analogy:
``... after thirty years in Northern Ireland we haven't found a single IRA arms cache.''
-- which will probably come as a surprise to police on both sides of the border. Anyway, the Government claimed to have evidence that the `weapons of mass destruction' existed prior to invading Iraq, which they plainly didn't. Desperately pleading that Iraq is a big place -- variously `the size of France' or `twice the size of France' depending on which innumerate and ill-briefed bozo is trotting out this `argument' -- and that `weapons of mass destruction' are difficult to find doesn't really cut it, if you care whether they find the things or not. Frankly they'd be better off appealing to the `facts on the ground', just like Bush. (For reference, Iraq has an area of 437,072 square km, and France of 547,030 square km. Note also that `weapons of mass destruction' is a bit of Pentagon Newspeak used to justify a change in policy whereby states which have used chemical or biological weapons against US interests might find themselves the targets of a nuclear attack. Previously US policy was never to strike first with nuclear weapons. Of course, nuclear, biological and chemical weapons have little in common -- as is obvious from the fact that the US is happy to renounce chemical and biological weapons, but shows no signs of getting rid of its nukes.)
(As a slight digression, the Iraq/Northern Ireland analogy has been trotted out by a number of New Labour figures over the past week, in particular by John Reid who made an unimpressive display on the Today programme yesterday morning. It's clear that it's been concocted by some spin doctor at Mission Control for deployment by any members of the party confronted by the press -- probably a wise move, given what these people come up with when left to their own devices. John Reid's own try at an analogy was to claim that the failure to find `weapons of mass destruction' in Iraq does not mean that military action was taken without justification any more than the failure to recover all the proceeds of the Great Train Robbery meant that Ronnie Biggs was not guilty of theft, which is a pretty poor attempt, especially since Reid mistakenly referred to the crime as the `Great Bank Robbery'.)
And the second statement which irritated me?
``Since the war on Iraq we know that global terrorism has gone down 44%.''
from Anglo-American academic Colleen Graffy. (She said this shortly before the recent bombings in Casablanca.)
What could this statement possibly mean? Beats me. `Terrorism' isn't a scalar. You can't measure how it changes in percent. Did she mean that the number of terrorist incidents had decreased 44%? If so, why didn't she say so? And over what period was this measured?
Really she could have meant almost anything, and the saddest part of it was that neither the panellists, the chairman Jonathan Dimbleby, nor the audience questioned this statement. I wonder what it would take to improve the condition of public discourse in this country to the point where data are treated as evidence, not just magical pixie dust to be sprinkled onto arguments in the hope of rendering them more convincing to their audiences? (``This week's 98% increase in ignorant wittering on radio panel discussions will give rise to a 57% fall in my tolerance for them.'')
Elsewhere... Anthony Wells (of What if Gordon Banks had played? fame) makes some interesting comments on the recent tuition-fees announcement by the Conservative Party, from the Tory perspective. Which is interesting. He doesn't really address the HE funding issue in any detail, though.
The BBC's `mockumentary', The Day Britain Stopped has been attracting quite a bit of attention. The basic notion of the programme is that A Bunch Of Bad Things Happen To The British Transport Network All At The Same Time. The result is chaos of a uniquely televisual kind, with the added bonus that most of the programme could be stuck together out of archival news footage.
It turns out that the BBC have put the programme on the web, in crappy RealPlayer format. So I thought I'd watch it. I'll spare you any comments on the quality of video-over-the-internet, except to remark that it would be nice if video and sound were synchronised, just like they are on real TV. But that's by the by.
The basic sequence of events in Stopped is,
Now, everyone likes disaster fiction, and this was quite well-produced. But much of it doesn't make sense. For instance, as Nick Barlow points out,
Also, there was one fact that was wrong. After the accident, they referred to tailbacks on the M25 growing at `a mile a minute' which means that the back end of the queues was growing at 60mph. To understand how strange that would be, imagine driving down one carriageway of a motorway at 60mph when the opposite carriageway has been closed because of an accident. You'll drive past a long queue of traffic caused by the closure, but eventually you'll reach the end of the queue. For it to be growing at a mile a minute, the end of the queue would be travelling with you as you went at 60mph. I have heard before a figure of 15mph for the speed at which queues on the M25 can grow after a closure, though.
-- actually, we can do a bit better than argument by assertion. (Sorry, HTML is a crap medium for maths....) Suppose that vehicles length l drive at speed v at intervals of s. Suppose then that they reach an obstacle and stop, with cars in the queue separated by a distance d, and that the queue grows backwards at speed u. Cars join the queue at a rate f, so u = f (l + d).
Clearly f = (u + v) / (vs + l), so, solving for u, we find that u = v (l + d) / (vs - d). Choosing v = 26m/s (60mph), s = 1.5s, l = 4m, d = 1m, we get u = 3.4m/s, or a bit over 7mph. Tweaking the parameters for higher input speed or a larger mean vehicle length (to take account of trucks and so forth) could yield Nick's 15mph. 60mph would require pretty extreme conditions, for instance dropping the separation to half a second and tripling the mean length of vehicles (which would correspond to traffic consisting almost entirely of heavy trucks).
The most controversial bit of the programme was the mid-air collision. The supposed sequence of events was that an aircraft coming in to land was forced to `go around' because a previous aircraft had not cleared the runway. At the same time an aircraft on the second (parallel) runway was cleared to take off. Both aircraft turn left, but second 'plane turns more rapidly and the two collide at an altitude of 1,800ft. The BBC have produced some pictures of this, of which this is the most important:
(It was notable that the programme didn't show any of these diagrams, despite its `documentary' format.)
Naturally, the air-traffic-control people do their best to avoid embarrassing accidents of this type, and of course have procedures designed to prevent their occurence:
The missed approach procedure for all Runways is:
Climb straight ahead to 3000ft then as directed by ATC.
Normally missed approaches from Runways 27R/09L will be turned, after co-ordination, towards the North and from Runways 27L/09R towards the South. Missed approaches from Runway 23 will be turned after co-ordination to the left. It is stressed that if a decision is made to turn a missed approach aircraft towards the departure runway, the arrivals controller must ensure that specific authority is obtained from the departure controller and acknowledged.
...
Aircraft carrying out a missed approach shall not be instructed to make any turns below 1500ft QNH unless there are overriding safety reasons, in which case the SVFR Controller is to be informed immediately.
So, to start with, the scenario presented -- with the 'plane going-around beginning its turn well below 1,800ft -- would apparently require special action not explained in the programme. Secondly, departures are supposed to be cleared with the arrivals controller:
On becoming aware of, or on being informed of a 'go-around' from any runway the Air Departures controller is to:
a) Suspend departures until otherwise agreed with the appropriate Radar Director and Air Arrivals.
b) Co-ordinate with Air Departures to establish separation between the `go-around' and departing traffic. Air Departures is required to inform Air Arrivals of all departures and Air Arrivals is to acknowledge this information. Actions taken to establish separation between the missed approach aircraft and any departing aircraft, including details of any tactical radar headings that are being used must be confirmed with Air Departures and an acknowledgement obtained.
-- whereas in the programme, a 'plane was cleared for departure regardless of the go-around in progress. It's not clear how this is supposed to have worked, since permission ought to have been required from the arrivals controller, and if this was given it wasn't explained why....
Although near-misses do occur in this kind of situation -- see, for instance, this report from 1996 --- it seems that procedures have been tightened up and aeroplanes do now have collision-avoidance RADAR. In any case the altitudes and distances in the programme don't make much sense.
Another rather dubious detail concerned a character who was supposed to be on a flight from Glasgow to London. The flight was diverted from Heathrow to Gatwick, and the programme claimed that this might have resulted in the 'plane running out of fuel. This seemed a little bit surprising, but this incident report describes a 'plane diverting from Gatwick to Stansted which carried enough fuel to hold for eight minutes plus enough for its preferred diversion to Stansted. In conditions as depicted in the programme with very long hold times, an out-of-fuel emergency is probably not inconceivable. This article describes an airline policy which covers
taxi delays, ATC delays enroute, holding fuel, fuel for an approach into the destination, a missed approach, diversion to the alternate with a full approach there, then a 45-minute cushion on top of that.
... but there's no way to know how domestic carriers actually determine how much fuel to carry. So this bit was probably just about plausible.
Obviously Stopped was designed to be controversial, which explains comments from its writer such as,
The aviation industry will close ranks and cast doubt on the credibility of this.
-- or, to put it another way, ``I'm not listening''. Hardly a helpful way to start a debate.
So, on Sunday I went to the Air Show at Duxford, which was a nice day out which basically involved sitting around in the sun drinking wine and watching aeroplanes fly about. Which is nice, if you like that sort of thing.
It had been a very long time since I last attended an air show. There were a few things I had forgotten:
While I can see the logic for that last one, it's a bit annoying, since it means that most of the time you find yourself glimpsing aeroplanes between other peoples' heads:
... though, obviously, many aeroplanes are capable of flying high enough to offer a better view:
To the previous points I should add,
... so I wasn't able to get decent photos of many of the things on show. In particular, they had a Harrier doing its whole hovering/flying backwards/generally taking the piss number, which was interesting to see, but too far away to photograph. (I had a brief go at taking photos through binoculars, which works fine with my camera, but in bright sunlight it's impossible to see the viewing screen, so I couldn't make this work.)
The Duxford Air Show isn't an arms market like the Farnborough or Paris ones, so the various stands and stalls are there to solicit recruits for the RAF and Army, and flog all manner of aviation-related tat. I guess I now know where publicans buy those prints of one or other sort of aeroplane without which no lounge bar would be complete.
I wonder how big the market for Second World War memorabilia actually is; judging from the number of vendors of books, videos, model aeroplanes, leather flying jackets and so forth, it must be pretty large. Needless to say none of the vendors looked old enough to have remembered the war, but so what?
The `theme' for this air show was the 60th anniversary of the famous Dambusters Raid on German hydroelectric plants. Personally I thought this was rather dubious. I wouldn't expect an air show in early August to celebrate the anniversary of the nuclear attacks on Hiroshima and Nagasaki; while the 1,200 civilians who died in the attack on the Ruhr dams were few by comparison with those killed in Hamburg, Berlin or Dresden, a celebration of the raid seemed to me in rather poor taste. My feeling was compounded by the fact that the discussion of the raid broadcast over the PA system, including archive interviews with surviving air crew, never once mentioned German casualties.
This, I think, is symptomatic of a more general problem with Duxford and probably with other museums of the same type. Weapons and other artefacts are presented without enough historical context to allow the uninformed visitor to understand them.
A particular example: a few years ago Duxford acquired a collection of US aircraft and built an annexe to house them. This is a large and rather pretty shed which is somewhat longer and somewhat wider than a B52 bomber.
Inside is an extensive collection of US aircraft from the twentieth century. There are some witty touches-- suspended from the ceiling is a U2, and beneath it on the ground is a Soviet SA-2 missile of the type used to shoot down Gary Powers -- but the centerpiece of the display is a B52.
This looks pretty much how you'd expect it to: it's big, hardly elegant-looking, and has a bunch of little pictures of bombs on the side indicating the number of missions it completed over North Vietnam. Next to the bomber is a little bit of blurb talking about it. I didn't take notes of exactly what it said, but the gist was, (dates may be slightly wrong -- sorry)
This is a B52. It was manufactured in 1956 and delivered to its unit in 1958. From 1966 to 1972 it was involved in air raids on Communist North Vietnam.
There's a really serious omission here. What was the aeroplane doing between delivery to its unit and its missions in Vietnam? Why was the United States building aeroplanes of this type in 1956, long before it became necessary to harrass the Viet Cong by dropping thousands of tonnes of bombs on them? What is this account of the B52 missing?
The B52 was designed to drop hydrogen bombs on Russian cities. As an instrument of policy, it exists because US governments of the 1950s had calculated that, one day, it might serve US interests to murder somewhere on the order of 50 million Russians in an afternoon. Happily, that didn't come to pass, and instead many B52s were used for conventional bombing in Vietnam. But it's impossible to understand the B52 -- to see why anyone would come to build such a thing -- without knowing this information. Presenting the aeroplane without this supporting explanation is dishonest, and reduces the museum to serving only the worst sort of aeroplane geekery, which is very sad.
And this week on `Media Errors Monthly',
The Editor,
The Economist,
25 St. James's Street,
London.Sir,
I read with interest your article (``Special Report: North Korea'', May 3rd) on the nuclear ambitions of North Korea. However, I must take issue with the map you print (page 30) showing the threat posed by North Korea's missiles. Not only do the ranges printed in the accompanying table not match the map -- the circles on the map have about half the proper radii -- but it appears that your cartographers have made an elementary error of map projections in their drawing.
I have prepared corrected plots. The revised maps may be of particular interest to your readers in northern Russia, Canada, Finland and so forth.
Yours faithfully,
Chris Lightfoot.
The new maps:
(I should probably point out that all this security crap did make me really, really angry. Without it I might have made it through `Stay Calm April' relatively trouble free; after all, my vote won't make a difference, I am unlikely to be machine-gunned by some trigger-happy Yank and my mostly-futile attempts to upgrade a computer took place before I decided to `Stay Calm'. The take-home message, of course, is nothing to do with security: it's `stay out of local news groups'. If you want the answer to a question, find it yourself, however much it might be of general interest. As somebody once said,
Go not to USENET for advice, for they will say both `no' and `yes' and `try another newsgroup',
though in this case it's more like,
Go not to local newsgroups for advice, since you won't get anything but patronising content-free crap from most of them and the whole experience will just make you angry.
Rant over.)
Ah, the relief: `Stay Calm April' is over. Of course, the whole exercise was a waste of time, since it is not possible to remain calm purely through an effort of will. I could act calm by refusing to discuss the things that made me angry, but doing so is pretty futile and in any case I didn't muster quite enough self-control to manage it. So I found myself saying things, pausing for a moment, and then saying ``I'm sorry, that didn't come out calm at all, did it?''
Anyway, in true content-free web log style, here's a list of some of the things which challenged the purpose and execution of `Stay Calm April':
There are four parties putting up candidates in my ward. I only received election literature from one of them, and that was the party for whose candidates I already thought I would likely vote. So how am I supposed to make an informed choice when none of the other candidates were prepared to make the effort to inform me?
Now, admittedly, this ward hasn't changed party affiliation in more than ten years (see Colin Rosenstiel's data for this and other fun and fascinating electoral factlets), and I gather that in local elections opposition parties typically don't find it worthwhile to expend effort on safe seats. But a single leaflet from each candidate would have been nice. Perhaps next time round the candidates can put all their views on one circular and send it 'round by Royal Mail Door-to-Door -- assuming that the Royal Mail still exists by then.
I see that the fucking Americans are still machine-gunning demonstrators in Falluja. Idiots.
While I appreciate that you can't make an empire without breaking heads, how in fuck's name can these people travel ten thousand miles to take over a country where they know they're not welcome and forget to bring any plastic bullets, so that when some hick grunt in an armoured car gets nervous, the only recourse open to him is to loose off live ammunition into a civilian crowd?
For god's sake. It makes the British Empire look organised.
And some dull, more geeky things:
Again, from email.
I upgraded my RedHat machine a little while ago. (This was before Stay Calm April started, so I think it's just about allowable to describe the procedure.) RedHat doesn't have the Debian-style upgrade-everything-on-the-live-system feature, you're supposed to reboot with a RH CD, but that's stupid, so instead the right thing to do is to start a statically-linked shell and manually install the new RPMs. You wind up saying `rpm -Uvh {about a zillion packages}' but eventually it works and it even seemed like it hadn't broken much. Oh, apart from the quote marks, but that's The New UNICODE Reality, so it's to be expected.
And then, about a week later, somebody pointed out that my web page of newsgroup statistics wasn't being updated.
So then I realised that the new RH had squashed all my perl modules. No problem:
cd /software/src for i in */Makefile.PL ; do dir=`dirname $i` cd $dir && perl Makefile.PL && make && make test && make install && cd .. doneSo I run the script and it works fine. But the little shell script which gets run from cron and iterates over groups doesn't, and I can't understand why. It's finishing without doing anything, or printing a diagnostic. So I put `set -x' at the top of the script, and it basically does
+ GROUPS=" ... list of news groups ... "and exits silently. WTF?
The answer: in bash2, $GROUPS is a reserved variable which holds the groups (GIDs) of which you are a member. Trying to assign to it causes a shell script to fail silently. (Actually not quite true -- ``Assignments to GROUPS have no effect and return an error status'' -- but if you have `set -e' on that's basically the result.)
Now, it's not like I regression test my code, but this is used by zillions of people all over the world. Gah.
Now, in general, it's not worth documenting these little frustrations, except for the fact that one day somebody might encounter a similar problem, find this post, and save some time. But really this is just self-indulgent ranting....
(This is the non-rant bit coming up, by the way.)
... on which subject, the UNIX-Haters Handbook has now been released in PDF form. And there was much rejoicing, accompanied, obviously, by the demented ravings of a bunch of Suckdot weenies who obviously Don't Get It At All.
The Handbook is a very amusing book, probably the best extended operating-systems rant which will ever be written. Many of its examples are now out of date, but that doesn't affect its basic message. (It's a pity that the world-wide web has apparently been saved the treatment they give `snoozenet'.) Now, the interesting thing about this is that the book makes two basic points--
The first point can, largely, be ignored: UNIX has got better; mainly, we assume, because vendors have been shamed by the existence of Free software into fixing the idiotic bugs in their code, or, failing that, the users have replaced the broken programs with their GNU equivalents. In any case, it's not like competing systems have raised the bar on `software quality' much.
But the second point is much more interesting.
`What came before' was ITS, TOPS-20, the LISP Machine, and a variety of other weird-and-wonderful operating systems that are now long out of use. Now, Richard Gabriel's The Rise of ``Worse is Better'' is, supposedly, the explanation of why UNIX beat all those systems in the marketplace -- it was smaller and easier to port, basically -- but it doesn't explain why all those systems -- perhaps with the exception of all that LISP inside EMACS -- have decomposed into memories. I haven't even seen a coherent explanation of the ideas in, say, TOPS-20, that describes why it was so great. Have these ideas -- whatever they were -- actually been absorbed by current software, or have they really vanished?
To me, this is a strange business. I'd love to know the answer.
(This one is parochial and technical.)
A little while ago, some machines -- none of mine -- here were apparently broken in to, presumably by some hyperactive eleven year old or fuckwit adolescent. Obviously this means that it's imperative to check other machines to determine whether they've been compromised.
Now, it turns out that since I last looked at this crap, `root kits' designed to compromise the security of Linux machines have become slightly more sophisticated. The one in use in this incident, suckit (ho-ho, aren't these people so amusing), is able to patch a running kernel to hide the files it installs, as well as its running processes and network connections. It works by replacing /sbin/init and modifying the kernel through /dev/kmem, then running the original init. The point here is that you can't trivially detect that init has changed, because all of the file-reading APIs get redirected to the original init.
The suggested means to determine whether a system has been compromised is to reboot with a clean kernel and then poke around the filesystem. Obviously this works but it's a pain to do and creates considerable inconvenience.
Now, there is an alternative. This is to look at the raw filesystem on disk, without going through the kernel. You can do this using dd(1), or, slightly more easily, with debugfs(8). Obviously it's possible to spoof this, too -- by modifying the kernel to lie about the contents of raw disk devices -- but this is more difficult than simply redirecting the file APIs.
So, I suggest this on a local news group, and ask if anyone with access to one of the compromised machines can check that this does in fact work.
Now, apparently, nobody in front of such a machine had the five seconds to spare to test this, which is fair enough. Naturally, this didn't stop others from repeating their mantra about how this is not sufficient, and the software can be spoofed, yadda yadda, tedious weenie crap, the whole thing; and all of this without contributing any actual information.
The point being, I know this stuff. I do not need a lecture about it. I wanted to know the answer to the simple question, ``Can I use this approach to avoid inconveniencing somewhere on the order of 200 people by pulling the plug on a bunch of machines to check for a security compromise which probably isn't there?'' in this case. Somehow this was interpreted as ``Please offload some patronising drivel about security onto me.''
This shouldn't have affected my state of calm, since I have repeatedly been exposed to the lesson that you shouldn't expect anything resembling a useful answer to any but the most trivial question on the local newsgroups, but nevertheless it did annoy me, since the tradeoff between how much effort it would take to give a helpful answer to the question and how much trouble it would save me and others to receive such an answer was so enormous.
Somebody did point me to the root kit code above, and, reading it, it's clear that -- in its distributed version -- it can be detected by the means I suggest. Obviously, the code could have been modified, but it looks like it wasn't in this case.
So, I can recommend that you do not try any `Stay Calm' months. They are a waste of time.
I was pondering doing `no technology made after 1950 month', which might work a bit better since so much of what seems to annoy me results from transistor-age technical innovations, but I don't think that's really feasible. That said, I did a quick count and the only bits of post-1950 technology I use are the computers and the mobile 'phone (which I'd rather do without). (I should note that in `pre-1950' I include things which could have been made before 1950, even if they weren't, like my bicycle or my FM radio; things which, though they didn't exist in 1950, are the direct equivalents of things which did, like supermarkets and bar-coded goods; and things which I can't really avoid using, like roads and public transport. In any case, this would be far too difficult to sensibly pull off.)
This is all done with wwwitter.
Copyright (c) Chris Lightfoot; available under a Creative Commons License. Comments, if any, copyright (c) contributors and available under the same license.