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).