Null references (oh no, not again!)

Georg Wrede georg.wrede at iki.fi
Fri Mar 6 07:45:49 PST 2009


Walter Bright wrote:
> Georg Wrede wrote:
>>
>> The "non-Boeing" designers had drawn all three steering systems next 
>> to each other, above the cargo door, below the passenger floor.
> 
> I started at Boeing soon after that incident. Boeing was very proud that 
> they ran one set of controls under the floor, and the other overhead. 
> Such a failure mode wouldn't happen to our plane.

I bet!

> This kind of thing is called "coupling", where a single problem could 
> bring down both supposedly independent systems. It's a hard thing to 
> avoid. For example, in the recent Hudson crash, the engines are designed 
> to be thoroughly independent, so one failure won't propagate to the 
> other. But criminy, who'd have thought birds would be sucked into *both* 
> engines at the same time?

Yeah. Things happen. Period. (Although, looking at a jet engine, one 
would think you can throw a pig into it, with no effect.)

A similar thing happened with a DC-9 in Sweden, a few years ago. Both 
engines broke shortly after takeoff because of ice. The crew did a 
Hudson-like thing and landed on a field. Pretty well done with low lying 
clouds and darkness. The fuselage broke in three, but nobody died! It 
was Christmas.

>> My father was an airline pilot, who had participated in crash 
>> investigations.
> 
> How ironic, my dad was a military pilot who also did crash investigations!

Cool! In the old days both jobs were filled with glamour.

Even at 75 he flew an old Dakota filled with enthusiasts. I glued 
together a Revell model airplane, and for extra detail I painted it the 
same matte metal as the original. The next year he had folks polish it 
to a nickel-plated look. I never bothered to repaint the miniature...

I still remember the id OH-LCH, which was hard to make because the 
transfer decals had some other id.

http://www.airliners.net/search/photo.search?regsearch=OH-LCH&distinct_entry=true

> The Sioux City crash, which was a DC-10, amply demonstrated that it was 
> possible even with only 2 of the 3 engines working! The tail engine 
> failed and took out the hydraulics and the flight controls - another 
> coupling point it shouldn't have had.
> 
> There's a case of an L10-11 that lost all flight controls (ice) and 
> landed the thing by manipulating engine thrust.

Another TriStar crashed in Florida at night. All three of the crew were 
so busy wondering why the gear-down lamp didn't light that they crashed 
into a swamp. 75 survived and more than 100 died. An example of 
Inferior Pilots. Turned out the light bulb was burnt out.

> Related to this is the idea of checklists. Checklists dominate
> flying, and they have a well-proven efficacy in improving safety.
> Recent trials in hospitals with checklists have shown dramatic
> improvements in results.

Dad used to give a hard time to others who didn't aspire to become 
Superior Pilots. Sometimes, during pre-takeoff checks (one reads the 
list aloud, ticking done entries, and another does the actual checking), 
he used to switch to gibberish when reading an item. If the other guy 
didn't notice, he gave hell for it. It was all about Respect for 
regulations, Focus, and due Diligence. Not all young pilots understood 
that *every single word* in air regulations, is the result of someone 
already dead.

Checklists are an underutilised resource in software development. There 
ought to be checklists "on paper" for pre-release checks for the staff, 
for example. Also, since computers are good at mundane and repetitive 
tasks, simple shell scripts that go through systems checking things 
would be economical.

Contract Programming can be viewed as checklists on the micro level. 
When you call a function, it goes through a list of things to check 
before actually doing its job.





More information about the Digitalmars-d mailing list