Hacker News new | ask | show | jobs
by jameskilton 5496 days ago
Odd story, makes software development in Ada kind of a catch-22. The DoD has used Ada for so long because of the security and correctness constraints built right into the language and compiler. When you're talking about software that's flying a plane (passenger, war time, whatever) it HAS to be right, because if it's wrong, people die. When something HAS to be right, that by itself ensures longer development time and testing.

Now I'm not in this industry, but I know that planes these days are extremely complicated beasts and require a ton of code to run everything properly. I worry that if development is artificially sped up, that code problems that would have been caught in the testing get caught in production.

Of course the above kind of assumes a decent dev team and a good code base. What I said could be moot if what's really happening is the technical debt of some of this code is so massive that simple changes take months to make and ensure correct, which would be a problem for sure.

Either way, blaming the language probably isn't the right way to go about this.

1 comments

I have no idea about their overall code quality but there was a famous F-22 bug found a few years ago where it lost all navigation systems when crossing the international date line.

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

Date/Time code is notorious. It always seems simpler than it actually is. There are always corner cases you forgot about. None of it is rocket science. Instead, it's the stupid arbitrariness of it that gets you. (Commodity trading is often the same.)
My boss taught me that whenever the word date / time / etc creep into a spec double your estimation for completion.

He was trying to be funny to make a point... but there is definitely a nugget of truth to it. Time is hard. (I write embedded DVR software these days)

Stealing a joke from a co-worker, I think that should be called an epoch fail.