RSS
 

Posts Tagged ‘ESA’

In Defense of Ada (No Really!)

30 Jun

On this week’s TWiT, episode 149, the cast had some fun at the expense of Ada.  Now having worked with Ada a good deal over the years, I’ve done my fair share of this.  In fact, I’ve worked with several people which I would describe as Ada zelots, and I certainly enjoy getting a rise out of them by playing devil’s advocate when they go on an anti-C rant.  However, some of what they said was just factually wrong, so I guess I’ll have to se the record straight.

First, they said no one is using Ada, not even the DoD anymore.  Well, this just shows that none of them have ever worked in aerospace.  Most current commercial aircraft, from including Boeing 777 and Airbus 380, have Ada code running in them somewhere.  Also, the air traffic control system that keeps those planes from crashing into each other in a great many countries is written in Ada.  Satellites, the majority of the things NASA and the ESA fly and put into space, nuclear planst, rail and subway control systems, some European financial systems, and the who’s who of NATO weapon systems.  This page sums it up well.  Pretty much, if it would really suck if it screwed up, there’s a chance Ada is at least a small player in the industry.  It’s true that Ada went no where in the commercial applications business.  Then again, this is the crowd that is still constantly issuing security fixes for buffer overrun exploits.  Commercial application developers were late to see the utility of safety over a slight loss of speed.  They are now heading in the direction of managed code under VMs like Java and Microsoft CIL.

Next, they said it failed because it was slow and too complex for anyone to implement.  It amused me because this exchange came right after Jerry Pournelle got done praising Bill Gates for being smart enough to know that Moore’s Law would bail Microsoft out no matter how bloated they allowed Windows to become.  Anyway, during the Reagan defense boom, there were any number of Ada vendors who had no problem creating a validated compiler.  As this is a niche market, consolidation has occurred since, but there are still 5 or 6 major players in the field.  To the question of speed, you take a surprisingly small hit for the run-time checking you get in return.  Certainly, it is less than the hit you take moving to managed code.

Okay, now that I’ve managed to sound like one of those Ada zelots, let me say that I’m generally language agnostic.  Good programmers can write good code in any language, and bad programmers will manage to screw up the works despite attempts by the languages and development processes to stop them.  However, as someone who has the unique prespective of having implmented mission critical, real-time embedded systems in both Ada and C++, I would certainly recommend the former over the latter for that particular application.

 

Seems that NASA has actually lost the edge in robotic space exploration

26 May

Every time NASA accomplishes something like the Phoenix landing, some neuron in my head fires off the memory of this slashdot post:

After the long journey out, it seems that little Beagle II, the lander of the Mars express mission has successfully separated. If all goes well, the lander should touch down on Christmas Day. Seems that NASA has actually lost the edge in robotic space exploration.

Please don’t take this as a dig at the ESA; they do good work, although, given the size of their collective economy, they could step it up and invest a little more. It’s more a reminder to the “we suck, we’re a failing empire, we cause all the problems and contribute nothing” crowd.