Hacker News new | past | comments | ask | show | jobs | submit login
The maddening mess of airport codes [video] (youtube.com)
285 points by CharlesW on Dec 14, 2022 | hide | past | favorite | 153 comments



You think airport codes are bad, try airline codes. The IATA standard is still only two (2) letters, leading to insanity like recycling codes after one airline dies, meaning the meaning of the code is time-dependent, and, even worse, "controlled duplicates" where two airlines are intentionally assigned the same code at the same time, since they fly in different parts of the world and pinky-promise to never overlap.

https://aviation.stackexchange.com/questions/35907/do-two-ai...

Three-character ICAO airline codes are much better and used almost exclusively in actual flight ops, but for passengers it's still two-character codes all the way.


Or better try telephone region codes, which are ambiguous when a phone number is written as a consecutive string of digits, without +/()/-/space.


Every now and then I’ll get a spam call and the caller ID has spaces in the wrong place. My iPhone tells me the call is from +33 1 … which is in Paris, instead of area code 331, which is Chicago. I don’t know if the phone system is relying on the caller to properly format their number, but it seems like a mad way to handle things.


You say this as if it’s a universal thing, like IATA codes, but I assume it’s a quirk of some particular country? My region code definitely does not have this.

Sounds pretty nuts to me btw, how does that work when you turn it into standard E.164 format like “+123456789”?


Britain has different length area codes. 020 is London, 0121 is Birmingham, 01234 is Bedford, 015396 is Sedburgh, population 2700.

The local part of the number is 8, 7, 6 or 5 digits accordingly.

I never found this to be a problem. If you're dialing locally from a land line, you usually know the local code. For national or international dialing it doesn't matter.

Occasionally people put the space in the wrong place, like 0207 77777777 for a London number.


> Occasionally people put the space in the wrong place, like 0207 77777777 for a London number

To expand on this, the codes have changed a lot over time. London used to have separate codes for inner and outer London, which at their last iteration were 0171 and 0181. These were replaced in 2000 with (020)7 and (020)8 respectively. At this point it still made sense, if inaccurately, to group the first four numbers. There was also some perceived prestige with having an inner London number.

In 2005 (020)3 was included due to a shortage of numbers and (020)4 for the same reason in 2019. With the portability of numbers and the extra ranges it no longer makes sense to group the first four - and the number of people who want to infer location from a landline number is probably much lower these days anyway.


Actually, London used to have one area code, "01".

Then at some point it was split into inner & outer, and there was endless one-up-manship about whether you had an inner or outer London code. (obviously, inner London was posher)


I believe you -- in the large village where I grew up there was some daft division between having a 5-digit area code for a nearby town rather than the (nearer) large city's 4-digit code, and (along roughly the same lines) having <Town, Countyshire> as your official address rather than <Large city>.

But it seems odd for London, when there are plenty of posh areas in outer London, and run-down areas of inner London. Maybe it was more for businesses to appear 'central'?


Wikipedia has a surprisingly detailed article about it:

https://en.wikipedia.org/wiki/UK_telephone_code_misconceptio...


This feature of a numbering system is referred to as “open-plan numbering“. In a place with “closed-plan” numbering, all telephone numbers have the same length and format.


It kind of makes sense. You can then have a mix of large and small area codes. A small number of large cities and a larger number of small towns. The problem of course appears when an area starts to grow...


Many countries (if not all of them) use localized numbering format - short numbers to hit the local destinations (intra-city calls), numbers with city prefixes to get to the numbers in a different city within the same country, specific prefixes (i.e. 00) for international calls, etc. The most convenient way of processing this mess is to rewrite the numbers (called/calling) on the ingress, into e164, and then processing the call using the routing table/rules of the pbx. On the egress the numbers may be rewritten again using the local numbering rules. This is how I built the international telephony system in one of my previous companies at least.

Some countries are easier in their numbering system (Singapore being an obvious example) and some are not (China doesn’t disclose number ranges allocated for different regions/cities, which makes the renumbering step more difficult)


There's many places where you can skip the area code or similar when dialling, but I think the original poster was thinking of systems where the actual numbering has variable-length components.


Variable length is solved by inter-digit timeout - pbx is waiting for a couple of seconds, then decides that the caller has finished entering the number and processes the collected digits according to the existing rules. Simple as that.


Always been disappointed that nowhere went with arbitrary length numbers for phone numbers, with the excess/end forwarded on to wherever the prefix is. I suppose that's not possible with the amount of time needed to actually do the switching, and would tie up a lot of switches before a call ever connects.

Or, assuming every number ends with many 0s that are omitted when dialling. Mainly to make extending the numbers easier, though you would lose 10% of the available ones.


It is technically possible to use a pound key (#) as an end of input indicator. It is almost impossible to change the users habits though, not mentioning the need to reprogram thousands of telephony switches. Another (better) option here is packet sending of DTMF string - digits are collected on a smart user's device (i.e. iphone) and the complete number is sent as a digit string, not one by one. Problem here is that there are still lots of dumb phones that don’t do that. Analog lines (copper fxo/fxs interfaces) are also present even nowadays. So as usual, legacy and backwards compatibility are holding back progress.


Or just the date. The dumb game of dd/mm/yy versus mm/dd/yy when you live in a dd/mm/yy country is infuriating.


I started using yyyy-mm-dd for everything, since that is the most text-friendly sortable date. I haven't come across yyyy-dd-mm, but I'm sure someone uses it.



It's mostly "why must Americans be like this?" while leaving in virtually any other country in the world (countries with a MDY date format are a handful).


Write the month as a three letter code and your ambiguity is solved.


I'm not sure about the lack of ambiguity.... Christmas day is on 25-Dec-2022 or is it 25-Dic-2022 (German), or is it 25-Dez-2022 (Spanish) ?

At least ISO-8601 works for everyone who uses the Gregorian calendar, which is certainly not everyone, but it's a reasonable coverage.


I could, but it isn’t my format the confuses me, it’s what other people do and what vendors set computers to etc.


There must be some language pair that has some collision with that.


In greek "June" and "July" start with the same three letters


I wonder if any languages have a different starting letter for each of the 12 months. Bonus if the days of the week are also different.


I am looking forward to a dystopian future where a region will be assigned a 911 or 112 area code if they pinky promise to never have an emergency.


With the plus, isn't every number and prefix/suffix unique across countries?

I have no idea if that holds true not knowing if a country code is attached.


The goal of those codes is to improve the communication, mostly between the airplane and air traffic controllers.

The one large issue with the IATA aircompany codes is that there aren't enough to every one in activity, even if you extend them with not allowed tokens (like numbers). Those codes were never meant to identify any entity in an atemporal matter.


> leading to insanity like recycling codes after one airline dies, meaning the meaning of the code is time-dependent

Why is this insanity? Almost everything in real life is time dependent. I think this is just insanity to devs who want to fit the world to their data model rather than the other way around which is how it should be.


Reusing the same unique identifier another user or business had almost always causes problems.

If special access was given to one entity, often that special access remains after the new entity takes over.

Often times the new entity gets access to private data of the old entity.

It makes record keeping difficult to know who was what entity at any given time.

If you haven’t seen the problems caused by doing this, consider yourself lucky for working for institutions that aren’t so careless.


If you are from the US, I have bad news for you about SSNs. :D


No, but I would assume that SSNs are not re-used.

Is this not the case?


Well, I was certainly told that was the what happened once. Quickly trying to verify that now, I am finding the opposite on their site.

So, maybe I have good news about SSN values! :D


Funnily enough, CGP Grey also made a video about that[1].

[1]: https://youtu.be/jfOUVYQnuhw


That’s the same video as the post, unless I’m missing something.


Ah, my bad. I thought the post was a link to the other CGP Grey video about airports[1] because the video about airport codes does talk about airline codes (and GP implied it doesn't). I really shouldn't comment late at night...

[1]: https://youtu.be/qD6bPNZRRbQ


You're not. GP, did you mean to link to a different video?


I think they meant to link to this one: https://youtu.be/jfOUVYQnuhw


..which is the same video as the thread. Airline codes are a different beast.


This is a hilarious bit of exposition of how few people actually read/watch the links posted here. Anyways, both IATA and ICAO (as well as FAA) are explained in the video. Y'all should watch it!

It took months of original history just to get an answer to why Canadian airports start with a Y


You're trolling, right?


I thought it was remarkably well-executed


This type of thing clearly just doesn't tweak me the way that it tweaks some people. I'm not convinced you could end up with a great way of assigning airport codes today, even if we completely started fresh and we assumed no new airports are ever created. In fact, in a lot of cases the weird corner cases are often situations where you can ask "Would it have been better to stringently apply the rule, or to bend the rule for ease of use?". Does it makes sense for London to have a LON code? Hell yeah! I live in London, I far prefer being able to go "Hey, let's just assume I can go from any London airport", because I know that LGW and LHR serve different destinations, I can get to either fairly easily.

It's not maddening for anyone other than someone who wants simple consistent rules. But simple consistent rules isn't the aim, and even if it were the aim, you wouldn't achieve it without serious problems. Let's just What3Words all the airports shall we, that's consistent.


I’d argue if it was to be redone from scratch, we’d settle for hierarchical codes with country namespaces.

Probably something like us.lax, fr.cdg, ko.inc, or a combination of country + number HK02, GB231 etc.

Simple system get approved when there’s low friction in the ruling comitee, as it was the case when few countries were involved in the first place. Once more that 50 members need to agree on something restricting to 3 letters doesn’t work anymore and it becomes compromised after compromises until there is a hack to let each country deal with its own mess.


The downside to country codes is that countries can change (split, merge, or rename) even when the airports within them haven't.

And the idea that the system would fall apart into one where each country manages their own codes doesn't make sense. As stated in the video, the 3 letter codes come from the IATA. Their members are airlines, not countries. They can assign codes in whatever way works for them to communicate with each other where passengers and their bags need to end up.


Sounds good until you get to the edge cases. For instance, GVA is in two countries at the same time.


> For instance, GVA is in two countries at the same time.

Technically this isn't true. This stood out to me because I've been through GVA and its situation is unique enough I investigated it while I was there. GVA lies entirely within Swiss territory, in fact, it was rather a point to ensure that this was the case in the way territory lines were laid. It does span into two municipalities, however both are within Switzerland.

What makes it unique is the edge of the airport aligns directly against the Swiss/French border, allowing direct access into the airport without needing to technically cross the border (because international airports treat areas past passport control and onto the tarmac as no-man's land). This is especially advantageous for freight, which is why GVA is considered an EU freight hub despite Switzerland not being an EU member state. So trucks delivering freight into France and other parts of the EU can drive directly into the GVA freight terminal from France, without needing to technically "cross the border", however the actual land they are on is within the territory of Switzerland.


ICAO (the UN) set their codes this way. There are 4 letters, the first 2 are a country code.

It doesn't work any better than the 3 letter codes you see on your ticket. It's just different.


Country namespaces would violate the implied (or maybe explicit) idea that the codes never change.


When Kazakhstan renamed its capital from Astana to Nursultan it also changed airport code from TSE to NQZ.

Fun thing is that they have since renamed it back but the code is still NQZ. Why it was TSE before that is left as an excercise for the reader.


Maybe location hash? Something like what 5 words or plus codes.


Your first suggestion almost perfectly articulated UNLOCODEs, e.g. "US LAX" https://service.unece.org/trade/locode/usk.htm


> Probably something like us.lax, fr.cdg, ko.inc, or a combination of country + number HK02, GB231 etc.

This naming system has been for such a long time that I woud'nt be surprised if any minor change breaks something somewhere. Probably some old school database that can only handle three letters, uppercase and no punctuation characters. Or perhaps a modern app that depends on json generated by parsing txt output from a terminal. Or even a barcode format that can't handle any more characters.


ICAO code for Amsterdam Schipol is EHAM

E - Europe H - Holland AM - AMsterdam


E is not Europe, it's "Northern Europe" and EH is Netherlands. LHR is EGLL for example

Southern airports in Europe use the L prefix like LFPG (CDG)


This is true for any area that constantly has to come up with new names for things. In physics for example, terms like "recombination," "technicolor" or just "virtual particle" have become profoundly confusing to new students, but naming everything after people or completely new invented words free of misleading context would probably be even worse. Even the term "black hole" was probably not the smartest choice in hindsight, but some people actually pushed back because they considered it obscene back then. This made people like John Wheeler only feel incited and they started publishing papers claiming "black holes have no hair" - which even Feynman thought was a bit too much. And yet today everyone acts like this is perfectly adequate terminology in physics and only people outside the field might get confused.


I mean a lot of naming happened in the 70s - in California.


On the other hand, the behavioral sciences are burdened with the adoption of terminology that carries strong connotations for laypeople, such as "personality" and "subconscious," some of which have taken on a life of their own. And this choice of naming started well before those fields even began to embrace scientific methodology.


I had to think for a solid 30s before I realised what you were implying with the term "black hole". Honestly I think the problem might be in your mind, not the words x)


Well, at least not if you're a child or were raised in a prudish environment. But as the other commenter pointed out, this was the era of physics during woodstock.


The only part I find “maddening” is when a source intersperses the ICAO and IATA codes. Not a big deal for my local airports - KIAD/IAD and KDCA/DCA, but confusing for places where the codes don’t match (EGLL vs LHR). I’d need to look up EGLL every time, since the 3-letter is what I know from ticketing/baggage.

But, that doesn’t really happen much in anyplace that matters. Usually just in casual conversation about airports/flying.


Pretty much this.

As much as I like CGP calling it "maddening" is a bit clickbaity and ignoring a lot of history there

This is like jargon, it exists for a reason, and while some choices could definitely have been better, it is what it is

Oh but there is a better choice, the ICAO codes. But the "English please" crowd is never satisfied


The entire world of airline coding (as in "encoding") is fascinating to me: there are all kinds of ancient semi-human-readable formats like ACARS[1] and IATA Teletype[2] that are still pushing data around. Not the mention standard meal codes[3], like BLML for "bland meal" and CLML for "celebration cake meal."

[1]: https://en.wikipedia.org/wiki/ACARS

[2]: https://en.wikipedia.org/wiki/Airline_teletype_system

[3]: https://en.wikipedia.org/wiki/International_Air_Transport_As...


I've also wondered why cryptically abbrevated things like NOTAMS are still the way they are. It made sense in a teletype/telegraph world where brevity was worth time and money.

From wikipedia, this is a typical NOTAM:

  A1234/06 NOTAMR A1212/06
  Q)EGTT/QMXLC/IV/NBO/A/000/999/5129N00028W005
  A)EGLL
  B)0609050500
  C)0704300500
  E)DUE WIP TWY B SOUTH CLSD BTN 'F' AND 'R'. TWY 'R' CLSD BTN 'A' AND 'B' AND DIVERTED VIA NEW GREEN CL AND BLUE EDGE LGT. CTN ADZ
Likewise METARs (weather reports):

  METAR KTTN 051853Z 04011KT 1/2SM VCTS SN FZFG BKN003 OVC010 M02/M02 A3006 RMK AO2 TSB40 SLP176 P0002 T10171017=

Pilots have to know how to read and understand this stuff. Only justification I can think of is that like mathematical notation, this shorthand, once learned, is unambiguous and conveys meaning better than prose. I don't know if that's really true though.


You should try having to read several hundred of them before a long-haul duty! Good luck trying to find the runway closure notam buried among the 400 reports of a crane within curvature-of-the-earth viewing range of an airport, or the 300 reports of birds that were once seen near, or somewhere near the runway.

Too hilarious not to share: https://fixingnotams.org/wp-content/uploads/2019/11/Field-Gu...


I saw a NOTAM about increased bird activity that had a 10 day duration. Thanks NOTAM.


That's one hell of an interesting read.


So, as someone learning to fly, I can say that the METAR format is actually pretty quick to learn and the standardization does make it pretty quick to read, effectively acting as a shorthand. I'm not going to say it couldn't be improved, but it's standardized enough, and contains information that's immediately relevant to everything you're doing, so it's something you pick up quick.

The same is not really true of the NOTAMs, at least as far as I can tell. They're much less standardized, being mostly just plain text with weird awkward abbreviations and all caps that make them slower to scan. There's all kinds of mostly irrelevant metadata; and a lot of the time there are so many of them, most of them not really relevant, that it's really easy to lose track of what is important.

So, I don't think there's much pressing reason to change the METAR format, but oh god do they need to reform the NOTAM system, both the format and better filtering for actual relevance.

Note that this is coming from a student pilot, but I've also seen more experienced pilots express similar frustration with NOTAMs.


At this point it's basically historical/a mild hazing ritual. Everyone involved in aviation knows how to read this gibberish, and the next generation damn well better do the same!

Back in the day, it made sense. Say, back in the 60s, these messages were sent over a teletype at maybe 75 baud or less, roughly 10 characters per second. Now the Telex network was billed differently, but by comparison, at the time, domestic long distance rates could be over $1 per minute during the day, so it was on the order of 600 characters/$1. All the abbreviations probably reduce the data transmission by 80-90% over a fully spelled out transmission.

For things like hourly weather reports from every major airport, the abbreviations probably saved $50/hr or more on Telex charges every hour every day at major airports receiving them. That's not to mention the lower latency from getting weather reports sooner or not needing to install more Telex machines to keep up.


> Pilots have to know how to read and understand this stuff. Only justification I can think of is that like mathematical notation, this shorthand, once learned, is unambiguous and conveys meaning better than prose. I don't know if that's really true though.

You're correct. It's straightforward for pilots. They can quickly read a NOTAM and understand everything.

Also, it's pretty standard and unambiguous worldwide.

As for the specific example you provided, today is your lucky day! That exact example has been decoded on Wikipedia here: https://en.m.wikipedia.org/wiki/METAR#North_American_METAR_c...


That would be true in an ideal world, but pilots are also only human, so at least some of them will sometimes misread or ignore all that gibberish. To quote Wikipedia:

> In July 2017, Air Canada Flight 759 nearly crashed into four other airliners as it attempted to land on a San Francisco taxiway misidentified as a runway: the adjacent runway was closed but the information was buried in the NOTAM. As a consequence, in September 2018, from the findings during its investigation, the National Transportation Safety Board (NTSB) stated NOTAMs were unintelligible and ignored, and recommended a more effective information presentation for better relevance. NTSB chairman Robert Sumwalt described NOTAMs as "a bunch of garbage that nobody pays any attention to". This led to an ICAO initiative to reform the NOTAM system.


> You're correct. It's straightforward for pilots. They can quickly read a NOTAM and understand everything.

Pretty sure most pilots would disagree. They're a mess.


Yup. Nothing like an AD AP CLSD stuck right in the middle of 53 different unlit tower NOTAMs


I prefer the encoded version of weather, TAF (Terminal Area Forecast). That makes it easier to visually scan down and see how the weather is forecast to change in the terminal area. (Is it improving? Getting worse? Is there a time when the winds change significantly [meaning a frontal passage is happening]?)

Same for a time sequence of METARs, especially when you cross-compare the METARs to the TAF (to know if the forecast is holding or was blown.)

Visually scanning the encoded text of weather is easier. (The entire NOTAM system is a mess, encoded or not.)

Raw TAF and Raw METAR for BOS below:

  KBOS 141129Z 1412/1518 31018G28KT P6SM SKC
    FM141400 31020G30KT P6SM SKC
    FM150200 34014G26KT P6SM SCT070
    FM151100 01009KT P6SM BKN050
    FM151500 04011G18KT P6SM BKN020

  KBOS 141254Z 29020G31KT 10SM FEW050 M05/M13 A3000 RMK AO2 PK WND 29031/1245 SLP157 T10501133
  KBOS 141154Z 31018G28KT 10SM FEW050 M05/M14 A3000 RMK AO2 PK WND 31030/1125 SLP158 60000 T10501139 10006 21050 53003
  KBOS 141054Z 32017G26KT 10SM FEW060 M05/M15 A2999 RMK AO2 PK WND 30028/1020 SLP155 T10501150
Here's Indy's METARs, showing generally good weather with broken clouds, developing into light rain-mist-solid overcast, then heavy rain-mist-overcast, then light rain-mist-broken clouds. (Read from bottom-up.) I'd quickly read that as improving and generally following the TAF (below it), meaning the forecast is probably a good one.

  KIND 141308Z 11013KT 2SM -RA BR BKN006 OVC011 06/04 A2989 RMK AO2 P0002 T00560044 $
  KIND 141254Z 11013KT 1 3/4SM RA BR OVC006 06/04 A2988 RMK AO2 SLP121 P0007 T00560044 $
  KIND 141233Z 11013KT 2SM +RA BR OVC007 05/04 A2989 RMK AO2 P0002 T00500039 $
  KIND 141154Z 11013KT 9SM -RA OVC007 05/04 A2988 RMK AO2 SLP124 P0003 60021 70021 T00500039 10056 20044 55011 $
  KIND 141054Z 09013G22KT 7SM -RA BKN009 BKN055 OVC095 05/03 A2987 RMK AO2 SLP120 P0003 T00500033 $
  KIND 141051Z 10013G22KT 7SM -RA BKN009 BKN021 OVC090 04/03 A2988 RMK AO2 P0003 $

  KIND 141311Z 1413/1518 11013G22KT 2SM -SHRA BR OVC006
    FM141500 13011G21KT P6SM BKN007 OVC015
    FM142200 12011G21KT 5SM -SHRA BR SCT003 OVC009
    FM150300 11013G21KT 2SM SHRA BR OVC006
    FM150700 20012G27KT P6SM OVC009
    FM150900 25010KT P6SM BKN016.


This all seems quite reminiscent of when the US National Weather Service used to issue super-cryptic forecast background summaries, and then slowly non-meterologists started building systems to decode them.


> They can quickly read a NOTAM and understand everything.

lol no. I was a pilot. I think you'd be shocked by how much pilots don't understand in METARs and NOTAMs.


NOTAMs and METARs are fun, but also the string of characters on a passenger boarding pass, like this one

    M1EWING/SHAUN         E1AAAAA SYDBNEQF 0524 106Y023A0073 359>2180
And for the record, like Python code, the spaces are significant, because the fields have a fixed order and width. (Although there are a couple of places where a field is specified by a number denoting its sized, followed by the contents)


Back in 2004 when I was involved in airtraffic control operations, teletype was still there as backup for the PC based solution. Don't know the status 18 years later By the way the software used was based on win3.1 with a secondary partition with Linux and relevant software which was the secondary option as their audience was not accustomed to Linux UI at the time - that is their words


> Pilots have to know how to read and understand this stuff.

Not just regular pilots, but also (here in the EU) operators of drones under A2 classification.

And let me tell you, it sucks, particularly if you're from anywhere else but the US and never heard of units like feet, miles and inches and what they mean outside of "this exists, is only used in the US and that's it" once in school. The only thing in a standard unit there is the temperature, and that I guess is only the case because "0C" is way more obvious as the freezing point of water.

I get it, this dates back to hundreds of years of nautical practice, but everybody else has long since shifted to metric...


> anywhere else but the US and never heard of units like feet, miles

The miles typically used in the USA are not the nautic miles used in aviation.

But what's worse, some air speed indicators show different units than knots (nm/h), depending on the origin of the aircraft mph or km/h.


It's because being standardized is more important than being easy to read.

Now that we can make clients that expand those codes for you, people are working towards a more standardized, more verbose language with a much larger lookup table and computer-friendly separators.


You answered your own question. Being able to read those things is part a pilot's training and daily job. Complaining about this from the outside is like me critizing Python or something else I have not the slightest clue about.


Absolutely hellish indeed. I had to write a parser for some kind of custom IATA PAXLST [0] (passenger list) that was coming from an ancient automated email system and I was dumbstruck by the weirdness of it all while reading the documentation.

    UNB+UNOA:4+SWAIR+NZCS+080708:0545+000000011'
    UNG+PAXLST+SWAIR+ NZCS+080708:0545+11+UN+D:05B'
    UNH+SWCA749+PAXLST:D:05B:UN:IATA'
    BGM+745'
    NAD+MS+++WILLIAMS:JANE '
    COM+41 22 797 2025:TE+41 22 788 4689:FX'
    TDT+20+SW679'
    LOC+125+GVA'
    DTM+189:020322'
    LOC+87+BOS'
    DTM+232:020322’
    DTM+189:020322'
    LOC+92+ATL'
    DTM+232:020322'
    DTM+189:020323'
    LOC+130+SFO’
    DTM+232:020323'
    NAD+DDU+++WINDSOR:ELIZABETH:R'
    ATT+2++F'
    DTM+329:720623'
    LOC+178+NCE'
    LOC+22+ATL'
    LOC+179+MEX'
    LOC+174+FRA’
    NAT+2+CHE'
    RFF+AVF:RXDWWH’
    DOC+P+564SBB41'
    DTM+36+051215'
    LOC+91+FRA'
    DOC+V+VV258DD7'
    DTM+182+021212'
    DTM+36+0421201'
    LOC+91+:::MARSEILLES’
    CNT+42:1'
    UNT+33+SWCA749'
    UNE+1+11'
    UNZ+1+000000011'
[0] https://www.iata.org/contentassets/18a5fdb2dc144d619a8c10dc1...


If you visit an airline on WikiData, they have the FAA, IATA, and ICAO codes pretty well mapped out, but I hadn't ever come across an ACARS entry before. Might be worth mapping out. Example:

https://www.wikidata.org/wiki/Q8731


I have done work integrating real time systems with flight data in all of these encodings and telex for a large intl travel company that does contracts at an airport you have flown at. A lot of legacy systems are using very early web protocols like SOAP or old encodings e.g. Telex messages.


Cryptic codes and abbreviations are surprisingly prevalent in more places than you'd expect. Anyone working with EDI documents in medical or retailers has first hand knowledge.


Certainly. Air transportation just holds particular interest for me, given that the codes and abbreviations reflect historical physical constraints: so-and-so many columns, so-and-so many inches of printable space on a ticket, etc.

(This is also why I find US banking standards interesting[1].)

[1]: https://blog.yossarian.net/2019/12/25/A-shallow-dive-into-th...


Most linters follow the 80 character limit because of the IBM punch card and Unicode and ASCII are also both full of these historical quirks. Many of us deal with these every day. I assume it's the same for people working in the aviation or medical industry


the thing that bugs me the most about all this is all caps

Numerous studies have shown by now that SHOUTING CASE is the slowest to read. Humans read words by their shapes not by individual letters. Capital letters lose the distinctive shapes that their lowercase counterparts often have and thereby also become more ambiguous and error prone


In a sea of lowercase prose, all caps stands out from the rest.


Except that this isn’t really true. Some writing systems lack the ascenders and descenders of the Latin alphabet and reading still happens. Lowercase letters themselves are a late addition to the Latin alphabet. Most readability studies fail the replication test yet they get repeated as if they were scientific facts.


I've always wondered about the IATA meal code CAKE, and what it might have involved.


It sounds like you should take a flight on SAS and find out!


It's a lie.


Add to that (what I understand to be) extortionate data rates for ACARS/ARINC messages, that rival data sent to the Hubble / JWST (if you remember that story from a couple years ago).


UMNR, INFT, CBBG, AVIH, ARNK. Just some off the top of my head.


#3 has RFML - Refugee Meal.

I wonder what that is.


Given that the only references I can find online appear to be copies of the Wikipedia entry, I’m a bit suspicious.

Two entries were added by an anonymous contributor: CAKE and RFML.

https://en.wikipedia.org/w/index.php?title=International_Air...


A lot of airlines have done refugee flights at one point or another, so I guess they needed a way to tell the ground crew to load whatever special foods were needed.


What 'special foods' would be needed for refugees?


If they're famine refugees, something like Plumpy'nut[1] maybe. If they're religious refugees, something catering to their religious restrictions. MREs if the refugee operation is being assisted by a military or disaster aid organization. And so forth.

[1]: https://en.wikipedia.org/wiki/Plumpy%27nut


Talking of MREs, some airlines do not allow them as carry on luggage, see https://www.tsa.gov/travel/security-screening/whatcanibring/....


MREs contain a heating packet filled with magnesium pellets and a couple other things, which are used to heat the food when water is added. I'd imagine they don't want those in the cabin, given the gas that is emitted during the heating process.


There's also TBML which is for Tech Bro Meals (soylent, mainly)


Sounds like a backronym


RFML seems from United Airlines, and seems to mean: easy to digest. No egg, no dairy, probably no meat? Its for people from places where food isn't processed or where they had not eaten much for a longer time, so a change in diet content and quantity may be problematic for the passenger.


If you have a citation for that, you should add it to the article.


It’s a euphemism for Soylent Green.


Bread and water


Big Mac Meal.


humble pie


Maddening mess? Come on, this is silly nitpicking. Airport codes are as clean an logical as it gets with century-old international standards. In fact, most of "maddening mess" in the video can be essentially ignored, which author basically admits by stating closer to the end that these are used by different organizations for different purposes. It is just that story is being told backwards and in a snarky voice for dramatic effect, otherwise it would become clear that IATA codes are pretty much the most natural and logical thing in the world, which would rob author of a passable video topic. There is no real pressure to use ICAO codes instead of IATA codes, and the switch would be quite complicated because of all the legacy in GDS systems, not to mention organizational effort.

From the top of my head, I can come up with only one reasonably annoying thing about IATA airport codes, which is much less than most other legacy standards. While EWR can be used both as a city code and as an airport code, according to every airline in the world airport EWR belonged to the city NYC until this October (because it's "New York metropolitan area", despite being in a different state). This is no longer true, but there still are a couple of other peculiar cases like that in other countries. This is important, because airlines have different rules for fares, exchange rules and stuff for airports in the same city and different cities (like there will be different fares for round-trips and non-round-trips, and the definition of round-trip obviously depends on different airports being in the same city or not).


You might (not) enjoy CGP Grey's video about runway numbering https://www.youtube.com/watch?v=qD6bPNZRRbQ then, instead.


Runway numbering in one HN comment: it's the magnetic heading of the runway, minus the last digit. If more than one with the same heading, add L or R (for left/right) accordingly.

If more than one even with L/R markings, add 1 to the heading (or maybe take 1, not sure).


>It is just that story is being told backwards and in a snarky voice for dramatic effect, otherwise it would become clear that IATA codes are pretty much the most natural and logical thing in the world, which would rob author of a passable video topic.

I think most travelers, including myself until I started working on this project, have never heard of IATA and only know the ICAO codes -- which do seem like a real mess. It's weird to find out then when you look into them that a much better system exists, but it's not the one branded on the outside of all the airports!


First off, you are obviously confusing IATA and ICAO airport codes: ICAO are the 4-letter ones. Second, I do not know why anybody would consider IATA codes a mess. These are just some arbitrary IDs that appeared one by one since some pre-historic times, are insanely informationally dense (just 3 letters, and I cannot remember from the top of my head the exact number, but there are definitely more than 3000 of IATA airport codes) and are very hard to re-assign or organize because of how global and distributed the system is. If anything you should be happy and astonished they resemble city-names in any way at all. Personally, I always found this pretty incredible, that hundreds of small cities with long (and often similar) names manage to have pronounceable and kinda "intuitive" 3-letter codes assigned. They could've been just numbers for that matter (it's not like you have to know them if you don't work in travel — any ticket has city names printed on it nowadays).


This reminds me of a great stand-up bit about the process of coming up with the 2 letter abbreviations for the 50 states[1].

[1] - https://www.youtube.com/watch?v=dLECCmKnrys


How Dotty of you


There's also https://airportcod.es/ which shows more detail behind each airport's code.


What a delightful little website! Thanks for sharing!


Adorable! I wish I had found this _before_ starting that project!


It's incomplete, missing several airports. Shame


Wasn’t nearly as bad as I expected. If you think of the codes as meaningless IDs, there are no problems. The system is unambiguous which is the most important thing. MEL refers to one specific airport and you can know that for sure.

All the problems in the video come from trying to use the letters to guess the areas they refer to. They might be related but they might also not. And that’s fine. Your booking site will let you type the full area name anyway.


Relative to the infinite recursion of metric paper, it is abject chaos.

https://www.youtube.com/watch?v=pUF5esTscZI


The problem with metric paper is that A4 sucks for printing text—it’s too wide for a reasonable line length at 10 or 11pt, whence e.g. the sprawling margins of the standard LaTeX classes with the a4paper option; and A5 is definitely on the small side. (A single wide margin beside a long text column, like in the Berkeley physics course, Spivak’s Calculus, or Tufte’s books, is one possible way of taking advantage of wide paper, but it’s not used that often.) A period-2 infinite sequence with alternating 3:2 and 4:3 sheets, which in one form or another has been used for books since forever, would have been better, but apparently the committee(?) did not like it for some reason.


Non-metric Letter is even wider and shorter, so it's worse by your description.

I remember Firefox defaulting to Letter format when printing.


Interestingly, on OpenBSD /usr/share/misc/airport lists IATA codes, but only adds airports where an OpenBSD developer has landed and confirmed it actually exists. Quoting the manpage:

> There are also railway stations with IATA codes. These may not be listed, except if someone landed there by plane and survived to update the file.


Great video, thanks.

So airport codes are no better than "standard" book numbers - ISBNs are not unique, contrary to what one may thing, and, yes, the mantra is "one book, two numbers" because there is "old" ISBN and the more recent "ISBN-13" with more digits.

I started cataloging my home library using the barcodes on the books and pulling the meta-data from Amazon via ISBNs, but ever so often, the cover image pulled was for a completely different book, although the barcode contains a check sum and the Amazon data was not incorrect. The reason? ISBN re-use! (rolling eyes)

This reminded me of the dude in one former company who proposed to reuse UUIDs...


Also interesting how old this system is and how everything is assigned once and never updated. Saint Petersburg airport is LED because the city was called Leningrad at the time the codes were assigned. Aeroflot, the largest Russian airline, has code SU, most probably because Soviet Union, and because it was the only Soviet airline.


One I always liked was Finnair's AY, as its original name was Aero oY. OY being Finnish for Limited Company, like AG in German, or AB in Swedish.

As both Finish and Swedish are official languages in Finland that allows for the cleverly named lock company ABLOY. This stands for AB Låsfabriken Lukkotehdas OY, i.e. "Corp. Lock Factory Lock Factory Corp." in Swedish then Finnish.


Nice to see this video here, I know CGP Grey is (or, atleast was) an avid HN lurker. If you're seeing this Grey, I'm a big fan, thanks for the videos and podcasts over the years :)


If you travel and liked wordle - you should try http://airportle.com

So much harder. Maddening.


That site doesn’t support https btw, you need to delete the `s` in the scheme to get it to load.


It seems to work with HTTPS perfectly fine, with the HTTP version simply a 301 anyway.


edited


Aviation has all sorts of s/wonderful/terrible naming and encoding going on that's very historically dependent. What's the code for rain? RA of course, makes sense, English is the language of aviation after all. So mist is... wtf, mist is BR? Because brume is mist in French and the French took the lead in aviation for a bit early on because of a US patent battle.

Or transponder codes. It's four digits, but not really, they only go up to 7. Why? Because the system is descendant from WWII IFF systems and 4 octals was good enough for the system design back then.


But that's like anything. Why is the symbol for hydrogen "H"? Well that's obvious. But then iron is "Fe", gold "Au" and lead "Pb", because those were named after the Latin for those elements: ferrum, aurum, and plumbum, that happen to differ wildly from English.


The most confusing ones that people might run into regularly are for sodium (Na) and potassium (K) since the medical conditions for having too much / too little of them are named after the Latin names - (hyper/hypo)natremia and (hyper/hypo)kalemia.


Certainly, but we've been doing things with elements for a while now. Aviation is relatively new. It's interesting how quickly naming and process cruft accumulates.


I didn't realize that Canada's claiming of the Y space was deliberate in that way. I'd assumed we'd been late to the party and only the Ys were left.


To everyone saying "well it doesn't sound that bad", let me just point out:

For a standard that supposedly started out as "we need a short code to refer to an airport", there is now a IATA code (QYG) that represents the concept of any railway station in Germany.


Strange title for an otherwise interesting video. Why expect anything else than an organic growth with interesting quirks? It's more fon to appreciate it than deride it


But deriding those things one basically knows nothing about makes you look so smart and funny. And it drives clicks and views. In reality, it is just uneducating, shallow and lazy.


The title of the video is mostly to get views. The author mentions in a recent podcast episode he had a video in 2020 with a descriptive title that petered out around 700k views, then changed the title to clickbait "This abandoned shed may yet help end the world" earlier this year and got an additional 4 million views.


I enjoyed the complaining about q codes :) as a ham radio operator who does a lot of Morse code, I can tell you that they are far far from dead. QRL, QRZ, QSL and more are heard or sent over the air tens of thousands of times a day.

Also the radio call signs of hams primarily start with either k, n, w, a in the USA. Airplanes have radios, so that’s why they treat those letters in a similar way along with fm/am radio stations


And the winner of all look like to be the Sembach Kaserne in Germany of course!

Formerly 'Sembach Air Base' and 'SEmbach AnneX', and it's a military air base, so normally it would not need an IATA code... In fact this nice code seem to have disappear from the official list... to bad :-(


Ah yeah, those nice codes! Back the day a place I worked at used four letter codes for warehouses, and they had a lot of those. Someone realized the implications once the alphabetic list hit ANA..., you guessed it. ANU.. was skipped then. Was kind sad, we had all kinds of fun imagining how we wouod comment on all the screw up of those places in the weekly meetings...


“There are only two hard things in Computer Science: cache invalidation and naming things.”

https://martinfowler.com/bliki/TwoHardThings.html


We’re just looking at the manifestation of one of the hardest problems in software engineering - naming things.

There’s no one good answer. Instead we must design our system to be “soft” i.e. malleable - able to evolve as the world evolves.


I'm not surprised that there is a connection with telegraph codes, but printing presses? Now I'm curious.


Great! Now let’s name our data centers after airports and extend the problems into that space as well…


people who complain about this remind me of Gary Gulman's comedy set on how the state's got their abbreviations.

https://www.youtube.com/watch?v=dLECCmKnrys




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

Search: