Hacker News new | past | comments | ask | show | jobs | submit login
F-35's biggest problems: software and bad relationships (foreignpolicy.com)
93 points by mishmax on Sept 19, 2012 | hide | past | favorite | 87 comments



Software issues are common in jet fighter aviation. Here are two little known, but potentially deadly issues:

* 1986 F-16 Inversion when flying over the equator - Flying the F-16 in simulation over the equator, the computer got confused and instantly flipped the plane over, killing the pilot [in simulation]. And since it can fly forever upside down, it would do so until it ran out of fuel. Note: some claim this is a myth and to my knowledge, it has never been verified, but I tend to believe it could have happened. Source - http://catless.ncl.ac.uk/Risks/3.44.html

* 2007 F-22 Complete systems failure over International Date Line - At the international date line, all systems dumped and when I say all systems, I mean all systems, their navigation, part of their communications, their fuel systems. They were—they could have been in real trouble. They were with their fuel tankers. The tankers – they tried to reset their systems, couldn’t get them reset. The tankers brought them back to Hawaii by visual, line of sight flight. Source - http://www.defenseindustrydaily.com/f22-squadron-shot-down-b...


There have been a very similar but actually happening lock-up of all systems of F-16 and same with soviet Su-24 when flying below zero altitude. Designers haven't looked at the map to find out there are plenty of places with ground much below sea level, and it happened for Israeli F-16 near Dead Sea, and for soviet Su-24 near Caspian Sea, when they tried low-level flight.


What kind of codepath causes systems to die when crossing the date line? Shouldn't all times be in UTC, and certainly any change of timezone is a display-only issue? What would be the point of using local timezones for any "systems" type stuff?


My guess would be that the problem isn't time, but rather the code dealing with the position of the plane in longitude as it crosses over. Perhaps it spat out an unexpected negative, or even something undefined.


I would think more than half the code for these types of systems is exception handling.


My lecturer for 'Software Testing' at uni used to bring up that first issue. He was a total ball-breaker with assignments and exams, but you knew it was for a good reason.


The first one, if it's real, confuses me: how does the plane turning upside down kill the pilot?


Fighter planes are very different than any other craft "driven" by people. They are so fast and so strong that if you give the stick a good yank while flying one, the forces involved will kill you (unless of course good fly-by-wire software knows your limits and intervenes).

Its not at all far fetched to assume if the plane suddenly rolled at its maximum rate that it would pull the pilot's spine apart.


Which points to the real problem with the F35 and all next generation fighter planes.

It's not software, relationships, rivalries, cost, or maintenance. It's obsolescence.

By the time there's a full wing of F-35s in regular service, there will be drones capable of routinely shooting them down. The advantage of not needing to coddle a pilot and having all possible G-forces available will make even cheap drones distributed by corrupt Chinese or Russian backchannels superior to the best fighter jets in the world within ten years.

And a whole wing of such drones will soon come cheaper than a single F35.

Obama should do the same to the F-35 as he did to the F-22 and cancel it before it wastes more money.


Such drones have existed for some time now. They are colloquially known as "surface to air missiles".


The logistics of aerial domination are pretty much the same whether you're talking drones or piloted craft. If you are the attacker you use ECM and missile/bomb bombardment to take out the radar/SAM stations. Meanwhile, you try to destroy as much of the enemy's airplanes on the ground as possible. If you have superiority in the air you take advantage of it, destroying every enemy thing that flies whether it is piloted by a crew or not.

The biggest advantage that drones have is a tactical one. And perhaps a manufacturing/logistical one if they can be produced in greater numbers, though at present that is not the case. Tactics only apply if there is a logistical balance sufficient to allow for a roughly even battlefield.


The biggest advantage of drones is you get to reuse the pilot. The second biggest advantage is you get to use a team instead of one pilot.


A key advantage is that drone pilots can learn something from having their planes blown to pieces.


To expand, I think you may be (intentionally or unintentionally) referring to loitering munitions. These are munitions (not just SAMs but other bits of kit) that are launched in theatre with no specific target set on the ground, then reconfigured in-flight after relaying information back to the ground.

Traditional SAMs aren't quite the same thing and serve different purposes.


Rather than replacing manned planes, once software and AI catches up, it's more likely that a huge numbers of semi-automonous drones would get pared up with F-22s and F-35s as wingmen. It would solve the bandwidth and pilot shortage problems, and reduce the risk that a few anti-SAT missiles take out the entire drone fleet. Oh, and that helmet and the sensor fusion software is probably going to be a key stepping stone to making that happen.


We already have AWACS that are more or less designed as control planes, no need to keep the manned fighter planes around.


If I'm in denied airspace, I'd rather be in an F-35


The problem with relying on drones is threefold; Humans are excellent computers, the Mark 1 eyeball has some advantages over other optical systems, and drones rely on a passive electronic environment. Jamming GPS and other control frequencies would be the first course of action should we attempt to use drones on a serious opponent.


> Humans are excellent computers

Humans are very slow. Humans are also squishy, fragile, heavy, and can't take G-forces very well. (Really, at all.)

> the Mark 1 eyeball has some advantages over other optical systems

These are rapidly going away with machine vision research.

> and drones rely on a passive electronic environment

Only ones with a human pilot. The air-to-air drones that will be deployed at the tail end of this decade will be completely autonomous after they receive their orders.

There is ridiculous amount of progress in a-to-a drones at the moment. Very nearly everyone who used to build/design fighters is now concentrating on drones. There will not be a seventh-generation manned fighter, and the sixth-generation ones will be outclassed very rapidly.


Humans are far superior at many of the tasks that require more than just following an algorithm. And the Mark 1 may not have Steve Austin abilities, but compared to scanning terrain with a Sniper/Lantirn pod, it is unbeatable. Talk to some of the guys who fly the Predators out at Creech, and they'll gladly tell you the unclassified shortcomings.

And autonomous air to air drones still need to be able to accept instructions/commands while in route, during combat, etc. The idea that we'll simply unleash 100 drones and create a killzone isn't something that's going to fly...

The reason all the companies are building and designing drones is because that what the governments/militaries are paying for. Private industry simply can't afford to do much R&D that isn't already contracted for by the DOD etc.

Finally, drones are easy pickings for manned aircraft. For permissive environments like the 'Stans and Iraq, sure. Up against someone with a real AD network, forget about it.


I suppose they could replace the pilot in the F35 in the future? I still think the F22 would've been more than enough for now and F35 is a waste of money, though...


That's rather naive. You conveniently forget the fact that before you shoot down an F-35, first you have to spot it.

Not to mention that building a drone with capabilities similar to a manned fighter is a very hard problem and you can be quite sure that US's rivals (China, Russia) are decades away from fielding one.


The F-35's "secret sauce" is sensor fusion and human-machine interface. If their innovations actually work, they can easily be rolled into the next generation drones. In the meantime they can be used to fight dirty little wars.


> Its not at all far fetched to assume if the plane suddenly rolled at its maximum rate that it would pull the pilot's spine apart.

The pilot sits very close to the roll axis of the plane. I find it hard to believe just rolling very fast would seriously hurt the pilot unless the plane could roll insanely fast. A pilot can really hurt him/herself by doing severe pitch and yaw changes, but I don't believe the g-loads (and the g gradient) during roll would be that high.


An F-16 can turn fast enough to make the pilot black out of suffer severe injuries; one of the things the software does is restrict G-forces to acceptable levels. As potentially terrible as this bug was I've never seen any indication of where in the development life cycle it happened; it could have happened early on when it wasn't meant to be working yet (i.e.: working enough to fly, but with no handling of edge conditions worked on) or it could have happened in final testing of a release candidate.


From wikipedia:

"Unlike previous aircraft, such as the F-22, all software for the F-35 is written in C++ for faster code development."

Seems that C++ is fulfilling its intended purpose nicely: http://harmful.cat-v.org/software/c++/I_did_it_for_you_all

Or perhaps Bjarne's real goal was to end all wars ;)

Edit: Oh, and it seems somebody has not read The Mythical Man Month:

"Because of this delay and the increased complexity of the jet's third and final software block, Lockheed Martin and the Defense Department have added additional resources to fielding Block III software"


An entire squadron of F-22's (non C++) lost all systems when they crossed the International Date Line en route to Japan in 2007. The pilots almost lost control and only survived because they could visually follow fuel tankers back to Hawaii. You can't blame that on C++. All systems have bugs.

Source - http://www.defenseindustrydaily.com/f22-squadron-shot-down-b...


All systems have bugs.

I'm sure that was a great comfort to the pilots in the F-22s.


All airplanes have bugs, too.

The F-80, for example, if you flew it too fast (and the engine was powerful enough to do that in level flight) the airplane would suddenly "pitch up", fold the wings back, and crash.

There are endless examples of these kinds of "bugs" in leading edge fighter design that have nothing to do with software.


I was reading to "One Minute to Midnight" about the Cuban msisile crisis and the account of flying a U-2 was pretty scary - at high altitude they had a very narrow range of speeds at which they could fly, fly too fast and the wings come off, fly to slowly and the plane stalls.


This is called the "coffin corner". It varies for different aircrafts, but they all have it, including commercial liners.


The P-51 had an interesting problem shared with other high torque single engine fighters of its day. If you're coming in for a landing, with the engine idling, decided to abort and firewalled the throttle, the airplane would rotate about the crankshaft.

This killed a lot of pilots.


"The aircraft's stall speed at that altitude is only 10 knots (12 mph; 19 km/h) below its maximum speed"

http://en.wikipedia.org/wiki/Lockheed_U-2


Someone did persuade them to shelve Ada... and then they get into this mess ;)

They are unlucky - there is no better alternative in writing this kind of software than Ada [well, there is SPARK but it is subset of Ada with annotations].


I just learned that Ada has higher performance benchmarks than C in many cases, for whatever that is worth.

http://shootout.alioth.debian.org/u32/which-programming-lang...


The joint strike fighter (F-35) coding standard is very nice: http://www2.research.att.com/~bs/JSF-AV-rules.pdf


"C++ is dying off now," ... 12 years later ... (I know the interview is satire but I don't think that line was wholly satirical)


Coincidentally, I haven't programmed in C++ for about 12 years. I'm sure its dead for a large segment of the programming population, and its still much alive for another segment.


That interview was very interesting.... I'm kind of interested what the response to its leak was now though....



Too bad, since given the discussion topic here this would have made the perfect pun: "no company in its right mind would start a C++ project without a pilot trial" (emph. added) (rimshot)


Okay, I kind of assumed it was a joke, but I'm too young to know all the history. Thought maybe I missed something.... Thanks for the info!


> The development of the jet's Block II software is 90 to 120 days behind schedule, according to the two-star general. Because of this delay and the increased complexity of the jet's third and final software block, Lockheed Martin and the Defense Department have added additional resources...

1. If you think you're 90 to 120 days behind schedule, you really have no idea how far you're behind schedule.

2. Somebody forgot Brook's law.


dave's law - Software development always takes 50% longer than expected, even when you allow for dave's law


"The first 90 percent of the code accounts for the first 90 percent of the development time. The remaining 10 percent of the code accounts for the other 90 percent of the development time." —- Tom Cargill, Bell Labs


Check out Augustine's laws: http://en.wikipedia.org/wiki/Augustines_laws . I believe he said software was a boon as all other ways to add expense to an aircraft eventually are limited by weight.


Jesus christ! $1.5 trillion... but... healthcare, education... NASA!

And... "ready to go to war by 2015"... guys, seriously... what war will it be? Is it an old one that is still going or an entirely new one that needs to be created to pay for this plane?

Sorry. Just ranting. No replies required.


I admire your cynicism. It matches mine.

We had a similar project over here in Europe (Eurofighter). So far they have been used to annoy Argentina purely through penis-waving and drop a couple of bombs on Libya and that's all. Then they ran out of spare bits and grounded them all.


It's worse than that. They can only bomb if they have a 70s-era Tornado along to aim for them.


> Comparing the troubled F-35 program to a massive aircraft carrier that two years ago "was gonna run aground," Bogdan said that F-35 program manager Vice Adm. David Venlet and his team, with Lockheed Martin and with the help of the Office of the Secretary of Defense, "has steered that ship...away from the shoals so it won't run aground."

This is a little interesting for me: I worked for Admiral David Venlet's brother, Rear Admiral Doug Venlet, back when he was the skipper of the USS Wadsworth. He was a very cool cat. Went on to carry "the football" for GW. Politics aside, that is a very unique job in the world. Two admirals out of one family. What was dinner like at that table?


Another fun fact: David Venlet has an air-to-air kill of a Libyan Su-22 in 1981.


Generals in charge of software projects. I worked at Microsoft, I know how well non-technical overseers manage projects.

> "We're gonna find things that we didn't know about and are gonna have to deal with them, but at least this scheduleis laid out to accommodate unexpected problems."

Bullshit- they played schedule chicken and got caught. It'll happen again.


Actually it's worse than that. This is an ambitious project, to build an even more complex and cutting-edge software driven plane. Compare the inflation-adjusted cost of the B52 development cycle with that of the B2 and you will see where this is leading. Similarly between the B2 and the B52 we see a 100x increase in cost per unit, just as we see a similar increase between the F-4 Phantom and he F-22.

It doesn't take a technical person to figure it out. I have seen history professors with more sense than the generals here. In another hundred years, i suppose our entire defence budget will be enough to afford one fighter jet, which can be shared between the air force and the navy 3 days a week each, with the Marine Corps getting Sundays....


This guy is actually an engineer by training.


A general who has come up through one of the technical branches (e.g. engineering, signals, etc) is going to be as good a "CTO" as anyone.


> Bullshit- they played schedule chicken and got caught. It'll happen again.

Yeah. And it's not just software either, the Osprey had very similar issues with its planning and handling.


I think the biggest problem is that it's the pentagon's flagship program, and it suffers from bureaucratic bloat, military-industrial complex crony-ism, and typical pentagon big-project feature creep.

Should have been a skunk-works project kept under wraps until as late as possible, a la the F-16...and even that project didn't survive without a little bloat.

Like some others have said, drones are probably the equivalent rebel project that the F-16 was back in its day...


It's biggest problem is complexity. Full stop. Any engineer can tell you that. The interesting question will be what hidden problems lie in wait, only to be discovered at the worst possible time....

What people will do to spend more money in order to maintain an image of technical superiority.


By all accounts Boyd (of OODA loop fame) did a really good job of saying "no" to unnecessary features people wanted to push onto the F-16.


Funny thing about aircraft is that a well-designed aircraft can excel in many roles despite those roles not being part of the design spec. The F-16 was designed (at least in the YF-16) to be purely air to air. Turned out to be an excellent ground attack plane. F-15's motto was "Not a pound for air to ground." yet the F-15E Strike Eagles is excellent at strike and interdiction roles.


The F-16 wasn't a skunkworks program by any stretch.


well unofficially, at least so they say, in the very beginning, the lightweight fighter program was conceived in secret by 5 guys in a back room in a pentagon - John Boyd, Pierre Sprey of the Close Air Support/A-10 fame, and a couple others known as the "fighter mafia". Much of the specs, requirements, and various aerodynamic parameters were determined before the bureaucratic majors and colonels knew about the project. The prototype aircraft were designed by engineers as side projects at Lockheed and Northrup, more or less under the radar. It probably helped that all the bigwigs were haggling about the F-15 at the time, which acted as a smokescreen.

It wasn't until it became apparent that the YF-16 was the real deal and probably going to be successful that it was finally exposed to the Pentagon procurement process, where it started to put on the pounds, and lost a bit of the agility that made the prototype aircraft famous (i.e. it had delta kinetic energy moves that the F-22 and F-35 can only accomplish via thrust vectoring).


The LWF (lightweight fighter) project was a well publicized procurement program. The YF-16 wasn't designed in secret, it was part of a three way competition between Boeing, Northrup, and General Dynamics.

The fighter mafia had tremendous influence in the development of the F-16 (and F-18), but it definitely wasn't a skunkworks program developed in secret and only unveiled at a later date like the U-2/SR-71 etc.


1,5 trillion skunkworks?


I can't imagine how hard developing for this must be. Every bug could possibly kill people but the project still has to meet a deadline. Does anyone think it might be to early to integrate this much software into a fighter jet?


Software has been absolutely crucial to aviation for decades. The last generation or so of fighter planes can only be flown by a computer (they are aerodynamically unstable and require constant feedback and control). And for an idea on 'amount of software', you should give this a look. http://spectrum.ieee.org/green-tech/advanced-cars/this-car-r...


Most (all?) military fighter planes have had odd flight conditions where they would get into a fix that would kill the pilot, and it happened often enough. A large part of pilot training is avoiding those conditions.

Long before software.


"...Because of this delay and the increased complexity of the jet's third and final software block, Lockheed Martin and the Defense Department have added additional resources to fielding Block III software..."

Adding more people to a delayed software project, now where did I hear that before?

http://en.wikipedia.org/wiki/The_Mythical_Man-Month


Damn. I can only imagine what a bunch of hackers could do with $1.5 trillion.


It's easy to run a small team of talented people, it's an entirely different ball game to run a company with 20,000 people

Same with systems. A small team of hackers can work wonders on certain problems with no methodology and some TDD, but imagine 1000 of those small teams, many of them now with below average programmers, all working toward a single vision, that now need to integrate their individual projects, some of which can only be tested once our twice ever due to cost.


I agree it's difficult to run a company with 20,000 people and that's my point. Break it up into many smaller companies with more accountability per company and you'd see a lot more progress. It's very difficult to align huge companies behind a goal and very few are able to do it - I believe Apple is one that does succeed.


$1.5T isn't a solution, it's the problem. Hackers succeed because they have scant resources, and defense contractors fail because they have nearly unlimited ones.

Huge budget => massive feature creep => massive manpower => huge overhead, extremely difficult communication/sync => failure to meet deadlines.


You're right. But spread that out across thousands of small teams and I'm sure the outcome would be greater than what we're seeing here. Having some competition among teams would also help - the big defense contractors aren't so much competing against each other as milking the government.


Well, according to wikipedia [1] we could have run over 8 Apollo programs for that cost.

[1] : http://en.wikipedia.org/wiki/Apollo_program#Program_cost


Imagine what Elon Musk could do with that kind of money.

Either terraforming mars or we might make it to Alpha Centauri by the next century.


You forgot about commercialization of fusion ;) and hyperloop... and in his case we would additionally have permanent space colony, on Moon, Mars, deep space and one to be created in Venus ;)


1970's dollars are not the same as todays. Further down on the Wikipedia page:

> In 2009, NASA held a symposium on project costs which presented an estimate of the Apollo program costs in 2005 dollars as roughly $170 billion.


if we take a moment, and divide 1.5 trillion by 170 billion, we see that we could afford over 8 complete Apollo programs with 1.5 trillion dollars.


Thanks, I stand corrected.


as roughly $170 billion.

So multiply by nine then.


Produce 1.5 million different Instagram clones?


You mean 1500 Instagram clones...


Price to imitate < price to build the first time << sale price


It's a joke see, I was just correcting the math.


Its enough to supply everyone in the world (all 7bn) with six Raspberry Pi computers (at US$35 a piece).


According to Information Is Beautiful (McCandless, 2009), $465B is enough to feed and educate every child in the developing world for five years.


Try Go, just make sure to use 64bit memory ;-) http://news.ycombinator.com/item?id=3805302




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: