Back to Squawk list
  • 53

Falsehoods Programmers Believe About Aviation

Submitted
At FlightAware, our software needs to gracefully handle all sorts of weird and wonderful situations. While we as engineers might hope for aviation data to be clean and well-standardized, the real world is messy. There are a lot of assumptions one could make when designing data types and schemas for aviation data that turn out to be inaccurate. In the spirit of Patrick McKenzie’s classic piece on names, here are some false assumptions one might make about aviation. While many of these are simply… (flightaware.engineering) More...

Sort type: [Top] [Newest]


DavidEmery
David Emery 28
Well, having been on a team writing Air Traffic Control software, that's not my experience. We spent A LOT of time understanding the system, including these kinds of situations (much of which are about data.) And then we spent a lot of time in verification (DO-178b). Most of the things on the list are things I already knew/remembered from 30 years ago.

BUT if FAA thinks it can produce a new/replacement air traffic control system quickly using script-kiddie programmers generating code using ChatGPT, these are the kinds of mistakes that we can expect. The 2 hard parts in software are (1) Understanding the system/domain and (2) identifying and resolving or mitigating bad data, hardware failures, etc - all the things that could go wrong.
DavidEmery
David Emery 17
There's a clear "move fast and break things" mentality in the software development community. That's because so much of the development/delivery and pretty much all of the education and training, is for web applications or cell phone apps, things where the consequences of problems are insignificant. And of course, I blame Bill Gates, who "taught us" that "all software is buggy and there's nothing you can do about it."

The real problem is that there's so little LEGAL consequence for delivering bugs, including (but not limited to) cyber vulnerabilities. We use poor tools and techniques, and then we spend lots of money trying to fix or prevent the exploitation of problems THAT SHOULDN'T BE THERE IN THE FIRST PLACE. I've been arguing for legal liability for software errors and licensing of software engineers for almost 40 years.
LeftlySC
Stephen Leftly 9
Yep 80% of the code is to cover 20% of the situations…..

The problem is when you start you don’t even know what those 20% are!

Developing any complex system is hard. I system that has to be almost , if not totally, error free is really really hard work.

Generating code is easy, generating the right code is not !

Way back in 2016 Musk was saying Tesla will have full autonomous self driving next year and yet here we are almost 10 years later and it still isn’t here. I bet back in 2016 the code worked for +95% of the time and the last 10 years has been spent getting to 99.99%!
masmith57j
Matt Smith 4
I've been scripting (CPM !, DOS, f... Windows, Mac, Perl, bash, tcsh, FORTRAN, C and a little VB) for 40+ years. The most important part of any script/code/algorithm/program/"app" (UGH) is what I and my Unix counterpart used to call "Try very hard to fail" - anticipate and validate everything (hopefully) that would break the script and fail immediately. always the interesting part.

BTW, 2 items to add to the article
Backhoes never rip up fiber optic cable bundles
the Sum never "burps" and pulls a Carrington event

ok, more than 2: Amongst the things to add to the article (apologies to Michael Palin)
Aircraft never disappear and reappear as the ionization in the upper atmosphere changes. (think radio blackouts when CME's hit the upper atmosphere - see www.spaceweather.com for details.)
kibbage
I think you meant "the sun never 'burps'"
carpetshoe
carpetshoe 10
Great article showing how difficult it is to describe our chaotic world in neat, consistent ways. I think it would find a few more interested views from people on a subreddit like DataScience
ThinkingGuy
George Lane 8
There's been a whole series of "Falsehoods programmers believe about..." articles like this over the years: names, adddresses, phone numbers, time zones, even email addresses.
The real world is indeed complicated, often in ways we only realize when we try to describe it to a computer.
masmith57j
Matt Smith 2
years always start with 19???
kibbage
I was there for that. Wrote my first program in 1969.
NeilPostlethwaiteItsAllBroken
Nice article FlightAware. It’s all in the Metadata 😊

Like Banking, Logistics, Clothing, Food …. reality is messy, and will befuddle hard rule based environments. No FlightAware.AI please. Keep it real.
JonAdams
Jon Adams 5
Nobody will ever set their flight identification to weird things like NULL

Or, NaN. IYKYK
SkyAware123
SkyAware123 5
I know this isn't always easy but it got a lot easier w ADSB. I've worked on old systems for NATO that would merge raw radar inputs from multiple radars and THAT was challenging.
Add the various link protocols, limited bandwidth, outages and you can see how much fun we had.
thunderbird36
thunder bird 5
I’m a humble passenger and have never written code. Your article was spot on. As a user of apps, I get so frustrated by their rigidity. One suggestion is to a lot of user acceptance testing. Code writers understand the client’s wants. Users find all the flaws and often have no way to tell someone about them. So bad websites persist. And don’t get me started about finding a person to talk to. Chatbots are useless for me because I don’t know the keywords they were programmed to recognize
martinmkm1879
Mike Martin 4
Are you sure this article isn't about medical software? Change the specifics around and you'd have a perfect description of our world. Good job describing the problem with the generic programmer mentality.
JCDogwood
JCDogwood 4
Reminds me a lot of the Therac 25. Talk about having to write software for the unexpected. Not familiar with it? Read up on it, fascinating!
emjay111
Marcus Jones 1
I work in that industry. The Therac 25 story is always brought up on the training courses.
dwight666
D Chambers 4
Old joke amongst us programmers: Boss comes in and says OK, you guys start coding. I’ll go see what management wants. I hear that we’re already late, and over budget!
sparkie624
sparkie624 4
Good List... But the last one I question: "Transponders never break"... Yeah Right... I work in Maintenance and for more than 1 Airline. We carry 2 Transponders and you can use either... However, I have seen Both Transponders fail. Where it is rare, it is not impossible. I was working the Flight Line and Transponder #2 was deferred... Captain took off and before he could get his gear up, the other unit failed and he did an air return... We would like to think that you can never have a dual failure on a critical system... Working for another airline, we had an aircraft that was cleared for takeoff... He aborted Take Off because he lost ALL of his AC and DC Busses and the A/C went dark for about 1 second... He checked everything and went to try it again.... Same thing happened and he returned to the gate. We never found a conclusive fix, but we replace ALL of the bus contactors and shipped the old ones off for analysis... That never has happened again! Don't say it can't happen...IT CAN and IT HAS!
joelwiley
joel wiley 3
Murphy was an optimist - even if it can't go wrong, it will - sometime.
aerobrent
Brent Jones 3
Great list of Falsehoods!

In other domains (State MVD/DMV for example), I've seen the resultant extension of faslehoods such as these applied as:
Fits my model -- Friend.
Doesn't fit my model -- Foe.

Common denominator -- "my model."
sparkie624
sparkie624 9
Thanks Flightaware... Been with you for well over a decade and Flightaware is the best.
SamNegrete
Sam Negrete 8
@Saprkie624, Thank you for your contribution and support. People like you make FlightAware possible!
sparkie624
sparkie624 6
I have been here in Flightaware now for quite a bit over 20 years, however there was a user reset and I am only showing active since 2013... Things were a lot different back then and ADSB wasn't even a dream. I have also been an ADSB Feeder for almost 10 years now! I have enjoyed the time of Flight Aware and most everyone here are really good people who love aviation!
mohenley
Mark Henley 3
The "user reset" and a lot of the other changes we've been seeing started when Collins bought the place....
sparkie624
sparkie624 2
I did not put those 2 together, but you make a very good point! I did not realize it had been that long since Collins took over!
ryanperrin
Ryan Perrin 2
FlightAware was acquired by Collins in November of 2021.
WhiteKnight77
WhiteKnight77 2
While I have not been here as long as Sparkie624 (2010 join date), I enjoy reading about his work in the field as a mechanic/maintainer just as I was (CH-46E crew Chief) for some time. He has some really good insights as to what is going on for sure.
flanneryb
flanneryb 2
I think that what David Emery said is actually pretty accurate. I have been involved with drone development and counter drone development for around 16 years. I tried to get manufacturers to incorporate FAA development guidelines for RTOS systems for a long portion of that time. Many of the domestic manufacturers are worse then you would think. During reverse engineering and analysis I would find unhandled exceptions, no return values, .etc. We need to be better with communications by using multipath communication capabilities like SCATR, it uses multiple mode paths and is very difficult to jam or even identify.
monkiesandtools
Joe M 1
CGP Grey did a great video about two years ago, with some of the more obscure codes practices (including how the FAA's three letter system prefers Airports to not start with N,A, Q, K, W, Z, Y).
https://www.youtube.com/watch?v=jfOUVYQnuhw

Login

Don't have an account? Register now (free) for customized features, flight alerts, and more!