Falsehoods Programmers Believe About Aviation

some Falsehoods Programmers Believe via flightaware.engineering by Ben Burwell 02 Jun 2025

Flights

  • Flights depart from a gate
  • Flights that depart from a gate only leave their gate once
  • Flights depart within a few hours of the time they were scheduled to
  • Flights depart within a day of the time they were scheduled to
  • Flights have schedules
  • Flights take off and land at airports
  • Airplanes (excluding helicopters) take off and land at airports
  • Flights are at most a dozen or so hours long
  • Okay, they're at most a few days long
  • Flights are identified by a flight number consisting of an airline's code plus some numbers, like UAL1234
  • Flights are identified by either an airline flight number like UAL1234, or the aircraft's registration like N12345, B6459, or FHUVL
  • A flight identifier like B6459 is unambiguously either a registration (B--6459), an airline flight number (B6 459), or something else
  • Flights don't have multiple flight numbers
  • Flights with multiple flight numbers unambiguously have one “main” flight number
  • A particular trip's flight number(s) never change
  • The flight number shown on your ticket is what the pilots and air traffic control are using
  • Flights don't use the code of some entirely unrelated airline in their flight identifier
  • No flights use the same flight number within a day
  • Surely at least no flights use the same flight number at the same time?
  • Okay fine, separate flights from the same major passenger airline that depart within a few minutes of each other would not both have the same flight number… right?

Airports

  • Airports never move
  • Terminal and gate numbers have a consistent naming scheme
  • Each runway is only used by one airport
  • Airports always have two unique identifiers: a 4-letter Civil Aviation Organization (ICAO) code and a 3-letter International Air Transport Association (IATA) code
  • Airports always have three unique identifiers: an ICAO, an IATA, and a regionally-administered location code
  • The U.S. Department of Transportation assigns one canonical code to each airport it oversees
  • No airports have multiple IATA codes
  • The ICAO code for airports in the U.S. always starts with the letter K
  • For U.S. airports whose ICAO code starts with K, the last three letters are its IATA code
  • You can tell which geographic region an airport is in from its ICAO code
  • Everything that has an IATA code is an airport
  • Everything that has an ICAO code is on Earth
  • Airports have at least one well-known identifier of some sort

Airlines

  • Waypoint names are unique
  • Flight information from Air Navigation Service Providers is accurate
  • Okay, /pretty/ accurate; they wouldn't indicate that a flight had departed unless it really had
  • If they indicate that a flight plan has been cancelled, then that flight definitely isn't going to operate — it wouldn't simply be due to someone editing the flight plan
  • At least their radar data accurately identifies each aircraft
  • Radars with overlapping coverage areas agree on the location of a target they can both see
  • If they send us a flight plan with the ICAO identifier of a known airport as the destination, then there must have been some intention of arriving there
  • If an aircraft diverts to another destination, it won't divert again

Transponders and ADS-B

  • ADS-B messages only come from aircraft
  • ADS-B messages only come from aircraft and airport service vehicles
  • ADS-B messages only come from vehicles of some kind
  • The GPS position in ADS-B messages is accurate
  • The GPS position in ADS-B messages is accurate within some known uncertainty radius
  • ADS-B messages always include the correct flight identification
  • Transponders are correctly programmed to indicate the aircraft type (helicopter, airplane, balloon, etc)
  • You can always determine a aircraft's registration number from its ADS-B messages
  • Transponders are programmed with the correct Mode S address
  • All of the transponders on a single aircraft are programmed with the same Mode S address
  • Nobody will ever set their flight identification to weird things like NULL
  • People will remember to update the transponder when the aircraft's registration changes
  • ADS-B messages are always received exactly as they were transmitted
  • No one ever transmits false ADS-B messages
  • Transponders never break and rodents never chew through cables