Skip to content

Comment on Qantas Airbus A380 engine failure in 2010 (2023)

Comments

  > The detailed software allowed them to enter various parameters including the weather, runway condition, and any systems failures, and then calculate whether it was possible to land. But when everything had been entered, the program spit out an unhelpful answer: “no result.”

 > When calculating the landing distance, the software applied a generic “operational coefficient” to account conservatively for variations in pilot techniques that could result in less efficient deceleration. The problem, as investigators would later discover, was that the software applied the coefficient again whenever another system failure was added. With so many system failures on the aircraft, the coefficient was applied a total of 9 times, resulting in a calculated landing distance considerably greater than the length of the available runway. However, Check Captain Evans was able to fix the problem by manually entering their actual landing weight, overriding the program’s assumption of a maximum landing weight. By specifying a landing weight in excess of the maximum, the system logic changed to apply the operational coefficient only once — for unrelated and obscure reasons — and lo and behold, when he ran the numbers this time, the computer said they could just barely land on any of the 4,000-meter runways at Singapore Changi Airport, with only 100 meters to spare.
This reeks so much of if-then-else programming as opposed to making a well-typed conceptual model computable.

The A380 was designed >20 years ago, in the heavily regulated and safety-obsessed commercial aviation industry.

Any reason for assuming that your preferred solution would have been an available and comfortable option for the Airbus' lead engineers back then?

One reason is that this is mostly a brain firmware phenomenon. My personal observation is that some people are able to nail a domain with good conceptual integrity, but there are also many (clever) people that quickly reach to a mechanical implementation, often even unable to think on a conceptual level about the problem domain. Languages with proper sum types are really helpful here, but Haskell was 20 years ago already 16 years old.

Nonetheless, the language is not the real impediment, it is the way of approaching a problem. Also, the software we are talking about was a standalone application installed on laptops, they were not part of the airplane's board computer.

reads like a glitch from Pokemon Red/Blue (Gen1). Even the simplest tests would have catched this issue.

well airbus does hire in morocco

inb4 you are racis Im moroccan

I personally know a guy who faked his entire university record (dad is a local politician) and is now working at engine systems at airbus in france

he does have a winning smile though

europe is not ready to deal with third world achievement dynamics

The "son of a politician takes a high level engineering position" story happens everywhere. If airbus has a strict hiring process I don't see any issue here. It's the same as people saying programmers from India are bad - I have worked with some incredibly skilled Indian programmers, literally top tier people(educated and living in India too, not immigrants educated elsewhere). You have all kinds everywhere, it's just what standard you want to set.

Morocco is notorious for its nepotism though. The run on Ceutta can't be unseen from the problem that for many young Moroccans pursuing an education is almost useless, as the opportunities are exclusively for the political elite. A whole generation does not see any future for themselves in their own country, which is very sad from my pov.

In India, afaik, a well-educated Indian has fairer chances. I don't know how much the current unemployment situation is playing out though.

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.