Hacker News new | past | comments | ask | show | jobs | submit login
Airline keeps mistaking 101-year-old woman for 1-year-old baby (bbc.com)
117 points by fortran77 16 days ago | hide | past | favorite | 103 comments



Dates in passports' machine-readable zones only have two-digit years. Another victim: https://theguardian.com/uk-news/2020/feb/12/home-office-tell....


The Polish PESEL system, which encodes your birth date in your national identification number, found a nice way around this. We just add 20 to your birth month if you were born in the 21st century or 80 if you were born in the 19th. This exploits the fact that a month is always in the range 1-12, and so using a two-digit number for it wastes a large part of the possible space of dates.

We still have the 41-52 and 61-72 ranges unused for the 22rd and 23rd centuries, and then we can re-use 80 (since it's extremely unlikely for anybody from the 19th century to survive that long). Now that's some long-term planning.

However, it's often said that no plan survives contact with reality, and that's also unfortunately true for this system. All that future proofing, and now it turns out that some assumptions thought inviolable, namely that people are either strictly male or strictly female and never change their gender, aren't so inviolable after all. We use a single bit to encode gender (it's the evenness or oddness of a particular digit in the number), and we also assume that PESEL numbers never change, to the point of using them as primary keys in some databases. The latter is causing trouble right now, and the former is inevitably going to.


Skatteverket (Sweden) puts a plus symbol when you turn 100. "Between the birth date and the birth number is a hyphen (-), which is replaced by a plus sign (+) in the year the person becomes 100 years old."[1]

Whoever processes the Swedish Identity Number, even if they use YYYYMMDD-SSSC _or_ YYMMDD-SSSC, wouldn't break processing with YYYYMMDD+SSSC or YYMMDD+SSSC - as the '+' is a standardised "give away" as to the age of the person (making the 4-digit YYYY less desirable for processing).

[1] - https://www.skatteverket.se/servicelankar/otherlanguages/ine...


I feel like (anecdotally) I have been asked more regularly for the full 12 digit number in most systems in the past at least some number of years instead of the 10 digit number. I wonder if more systems are being designed from the start to require millennium and century? I have not been keeping track or anything. I just feel like I am more often required now to input YYYY rather than YY.


I wonder if that's because there's an assumption that validation has to occur via the Luhn Algorithm (or Modulus 10)[1] on the input-side?

Edit: I'd just let BankID handle the validation and store the two-digit year.[2]

[1] - https://en.wikipedia.org/wiki/Personal_identity_number_(Swed...

[2] - https://www.bankid.com/en/


Not even the date of birth is necessarily stable. The exact date is of course, but in some cases it was registered wrongly; this happens sometimes with immigration.

National identification numbers should be opaque; just a number unique in its own domain, but encoding nothing¹.

1: An exception is to have a certain ranges of those numbers designated for testing, so you can test stuff without ever accidentally using a real one.


It doesn't really matter if it's stable if the value used in the national id number is just seeded with the best option at the time it is assigned, though, and in that case it can still be convenient to use a value that for most people will be easy to remember. E.g. it's easier for me to remember the 5 digits on top of my birth date than to remember the full 11 digits of my Norwegian id number. That a small proportion of people have leading 6 digits that aren't a perfect match for their birth dates may be a minor nuisance for them but no more *as long as people don't assume the leading digits can be relied on.


There should be at least a checksum (which we also do have, even though many systems sadly don't check it).


This is already built into the system though and you can refresh your PESEL in those cases and invalidate the previous one. Which, for handling rare edge cases isn't a bad solution really.


I know several people who went through this process, and it's not pretty. Besides the bureaucratic hassle, some systems, particularly in the medical sector, are just straight up not designed to handle those kinds of changes. Almost everything healthcare-related here is tied to your PESEL and spread through dozens of different databases (and possibly paper files) which are hard to impossible to modify. I've heard of vaccination info being lost, prescription fulfilling issues and the ePatient portal straight up refusing to work with strange errors. Apparently for some banks, the recommendation used to be to close your account and just go to another bank which never saw your old data, although that has now gotten better as far as I know.


Do Polish passports encode gender? I'd expect passports to encode biological sex.


Australian passports are 3 value, M,F,X (for other) as some people are born biologicaly intersex (there are a few hundred such in Australia) and in such cases either M or F are just wrong.

Australian birth certificates do a similar thing .. and Polish birth certificates and passports for those born oversees are supposed (see gov.pl site) to reproduce exactly what is on the foreign birth certificates and passports.

As the GP comment notes, supposedly invarient assumptions can bite programmers in the ass.


Assumptions is also one of the reasons for a long-lasting trend towards reducing the information on passports where it risks misleading. E.g. my first passport had hair colour and eye colour, and a colour photo. The hair colour and eye colour was removed because it was increasingly just confusing and unreliable, and the photo is now black and white. I'd expect gender/sex to eventually be emphasised or removed too, for the same reason - it's not particularly helpful as a means of ID'ing you unless you do a medical examination.


US passports are M, F, X as well. Intersex/NB/GNC individuals like myself aren't accurately represented with only M/F.


The UK is dragging its heels on this kind of thing. https://infosec.exchange/@ryanc/112334233396294602

> I moved to the UK five years ago. My birth certificate and passport list my sex as Nonbinary/X. My application for legal gender recognition was granted two years ago, but then things got weird... I had to take the government to court.

For some reason, the government is refusing to issue the documents they've granted the applications for. Per https://www.leighday.co.uk/news/news/2024-news/nonbinary-us-..., the High Court has ruled that this is discriminatory, but that the government is allowed to discriminate against non-binary people. The case is due before the Court of Appeal at some point in the future.

Up-to-date info can be found at https://enby.org.uk/ (currently a GoFundMe redirect).


No idea what passports do, but the internal documents do encode what English calls gender, which is, admittedly, very difficult to change.

Polish doesn't really have this distinction, there's one word we use for both, and more descriptive terms are needed if you actually need to be specific.


I was about to write that surely, that only applies to the OCR section printed on the physical passport, but if I read ICAO 9303 correctly, it's the other way round - the OCR section can include either a four-digit year or a two-digit year, but the chip has only six bytes for the date of birth, representing YYMMDD in digits (plus special characters for an unknown or partially known date of birth).

Edit: apparently there's an optional section in the chip (data group 11 or DG11) that allows for longer-form data than the ancient machine-readable format, including non-latin letters in the name and a birthdate including the century. I don't know how widely used that is though.


> Dates in passports' machine-readable zones only have two-digit years.

Simultaneously the most and least surprising situation.


Waves fist towards the sky: COBOL!


\o/

Deal with this all the time working with an old system written in COBOL. Current system was patched with a db column for century.

The problem that really flies under the radar though: https://en.wikipedia.org/wiki/Year_2038_problem


I did a contract in the run-up to Y2K to help with some code that used two-digit year fields. In their defence, it was originally written in Fortran II sometime in the early 60s, and I think they can be forgiven for not thinking it might still be in use nearly 40 years later!


So it's basically well-known Y2K bug.


If only there was some way to densely print computer readable data onto paper


dumb programmer who wrote that code and dumber qa who failed to test it


My name has a funny spelling. Aleksandr, with a "dr" at the end. Once when I was 9 I got a borading pass that read "Dr. Aleksan <last name>". My parents (both programmers) got quite the kick out of that.


I wouldn't be surprised if that is the representation that would be used if 'Dr Aleksan' were correct, I recall some funky stuff like that from a post here I think a while ago describing some of the quirks and ways it has to continue working for interop (but I think the post was about doing what could be done to update/modernise/fix, I'll try to find it).

And certainly I've had 'Oliverjames', so it would only have to be that it becomes 'Aleksan Dr' (and before that concatenation) to complete the picture.


This is not even the only case. The Arabic name Amr is often turned into Mr. A, which is an even bigger problem if your airline's website doesn't accept single-letter first names.

This happens due to an ancient data exchange protocol called airline TTY, which doesn't contain an "honorific" field and has no room for extension. In their eternal wisdom, American regulators completely ignored this fact and started requiring airlines to process honorifics after 9/11. The only available workaround was sticking the honorific at the end of the name. When you book a flight that doesn't have anything to do with the US, this data might or might not be included, but downstream systems don't know if it is or not. If it is not and your name ends with an honorific, the honorific gets stripped.


I wonder if anyone called Yasir (male Arabic name) has been upgraded, due to the name being interpreted as Sir Ya.


My Vietnamese friend's name is Bang, so his name can't be announced by PA in US of A airports (no data points in Europe airports though).


Why not? I understand that Bang is used for explosions when shouted but sure they can request mr Bang to the boarding gate of whatever?!


People are selective listeners, this could in rare cases cause a panic chain reaction.


> We kindly ask Mr. Sak Mai Dik to the office counter of United Airlines


That issue is well-known to airline staff as It's relatively common. Still stupid.


My forenames begin with J and R. I've sometimes had Americans interpret this as Junior. Ho Hum.


It seems like her main complaint is not that she's being expected to travel with adults or lie in the bassinet - but that the airport didn't know to provide her with a wheelchair.

I would not expect that to be tied to age! I thought anyone could tick the "I need assistance" box and get wheelchairs, golf carts, etc. Sure, they could guess that their 90+-year old passengers are likely to need them, but there are plenty of 80-year olds that need them and plenty who don't.


But suppose they did tick that box. If someone ticks "need assistance" for a 1 year old, you would bring a stroller and not a wheelchair, no? A casual googling indicates that the smallest generally available wheelchairs are for ages 2 and up.


Might differ between countries/providers, but for the airline I'm working at, checking the box leads the customer to a separate page where they can detail what kind of assistance is needed. Might be that the cabin crew misunderstands the order when they see that the passenger is registered as a 1 year old though


> “I would like them to fix the computer as my poor daughter had to carry all our luggage and apparel almost a mile from one gate to the other,”

Took a while to hit me : the daughter is most-likely nearing 80 herself !


She's 101 and still travelling by plane? By the time my grandma reached 90 it was a Herculean struggle just to get her in and out of a taxi.

Filing this one under "problems I'd love to have".


Different people face age related decline at different rates. My two grandmothers are in their 70s and 90s respectively. It's the one in her 70s who is increasingly limited in her capabilities.

The one in her 90s on the other hand is broadly fine. The things she is not sufficient with are mostly things that women 70-40 years ago in my country were not expected to handle so she never learned to, rather than age related decline.


I knew a guy once who was still skiing in Colorado past age 100...

You can Google skiing past 100 and find multiple examples of people who make it this long.


i can certainly relate, my grandma died 32 y.o. to tuberculosis


Yeah it is amazing to not only be mobile but coherent. I've seen people much younger (70s) not able to get around or even understand you or having trouble communicating. Some people here go into an old age home in their 50s.

My own grandmother was dead by age 64 of a stroke, her husband (my grandfather) died age 52 of emphysema. My other grandparents were in an old age home by their 60s died at ages 85 and 92. My mom is 80 and pretty mobile buys groceries but has bad hearing but won't get hearing aids. My Dad died at age 78 of IPF a lung disease after a 20 year battle.

Since my Dad died I'm amazed at elderly who walking around no glasses, no mobility issues. Then again some elderly I knew looked good but had many problems they just didn't complain of their ills, then one day their died in their sleep (a few did like that).


Dying in your sleep of random suddenly fatal issues is considered a natural end though.


Eh, my grandma is somewhere in her 90s and recently went to Spain (by airplane, a flight of some 4 hours). She does say the 14 hour flight to Japan sounds like too much though.


They're probably still using USAS. Written in 1969. In COBOL.

Someone at Sabre claimed the booking software had been rewritten in Java. I worked at a place that had over 350 people working in airline booking and saw that product in action. It was a Uniscope terminal emulator running in Java.

USAS is Unisys software for airline booking, and from someone in upper management in Unisys from a party a few years all Unisys does now is train people in COBOL to keep the 1969 booking code working. Unisys system probably still have Uniscope terminal code and drivers, just like most linux system still do VT100, 101, 200, etc terminal emulation. I recognized the Uniscope terminal emulator because I used to install them, and wrote some basic db front ends in a Unisys coding system called 'Scop' - an XML-like way of building quick multi-db input screens. It has a particularly characteristic look which is what the Sabre java client running in the browser looked exactly like.


American Airlines's policy, like most airlines, is that children above the age of 2 require their own seat.

So there's a very narrow age range where she'll need to suffer this particular problem, if she makes it to 102 she'll be out of those particular woods.


Wheelchair, not plane seat. She's already got the plane seat just fine.


The article doesn't state it explicitly, but I think there's an implied correlation.

Before the age of 2 you don't get a seat, and it's implied that your guardians are 100% responsible for your mobility.

Whereas a child old enough to require a seat might also need to request a wheelchair, and would be provided with one.


Before the age of 2 you don't need to book a seat. You can book one on every airline I flew with when my son was <2 at least. A child under two needs to be on the lap of a parent during takeoff and landing but can otherwise use a seat. I flew with my son first time when he was about 3 months old, and we had a seat for him because it made it a lot easier.

In this case, she did book a seat.


She booked an adult seat, but was (according to their broken system) 1 years old while doing so. That's different than booking an extra seat for an accompanied infant.


> The article doesn't state it explicitly

"Patricia’s seat was booked as an adult ticket."


Every single European airliner has exactly same policy, 2 and above separate seat and full price.


Then she doesn't need to pay for a seat reservation she can go as a lap infant.


Yes, though she'll need to be accompanied by her parents.


They probably are still in her heart though so that’s okay.


I wonder how many people will overflow to -127 years old before we fix the 8 bit signed ints (and if life expectancy ever gets that high).


Seems within the realm of possibility that it will happen at least once. Several people having come within ~15 years of that already. Of course the odds of reaching 128 fall off drastically with each year nearer, I’m sure.


To take full advantage, her daughter could book a ticket for her as a lap infant and fly her for free.


In South Africa our national I.D. (Identity Document) numbers, which you are given at birth or given when becoming a resident, starts with YYMMDD.

When I was working on a hotel management system a while back and implemented logic of automatically determining date of birth from an I.D. number I had to think about this exact kind of problem.

Not sure if it was privacy laws, or that children always need to be checked in under their parent's details, but the hotel chain had a rule where they would never capture anything except the first name of guests under the age of 16, meaning that only if a South African guest was 116 years or older would it incorrectly assume the wrong age, which would be exceedingly rare and according to [1], not possible for at least 5 more years.

Airlines however need to capture details of passengers of any age, so our solution could not be used there.

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


Nobody remembers Y2K anymore?


Year 2038 occupies my brainspace much more than Y2K.


I remember thinking, in 2000, "well hopefully we've learned our lesson so 2038 isn't a big deal".

Then the public consensus switched to "Y2K was entirely made up and nothing bad happened" so I'm somewhat less optimistic.


amazing given the run around and preparation/mitigation work we did in that preceding year!

Any work done well, is just work that obviously didn't need money spent on it in the first place.


Mmm, likewise.

Right now I'm half-expecting that unfixed 2038 bugs will accidentally save us from AI apocalypse. Or possibly cause it.


Shoot, I'm just realizing that we're as far from 2038 as we are from 2010.

In 2010 the the iPad was released and the movie Avatar had come out. So we're closer to 2038 than the release of the iPhone (2007).


You, sir, have just invented the Imperial Unit for time measurement.

"How old are you?"

"3 iPhones and half an M1 Macbook"


"Four score and seven iPhones ago our investors brought forth on this bay, a new company, conceived in Los Altos, and dedicated to the proposition that all home computers are created as decorative art pieces in a rainbow of colours."


nah, she'll be right mate :-D

and if not, I plan on be very close to retirement by then anyway.


Me too :) It does open up opportunities for consulting in all the programming languages in use today (or 10-20 years ago), so we can expect to be in high demand right before retiring :)


Pretty sure ChatGPT or whatever replaces it will be doing the job instead of us.


I'm just hoping it won't do that before I plan to retire.


Looks like the airlines failed to fix it.


They fixed it by having a rolling "epoch" it just so happens that some people's ages don't fit that assumption.


Fixing a non-critical bug that affects <0.001% of bookings in airlines’ ancient systems, which are likely stringly typed in specific formats in many places? Good luck. They can’t even show my family members’ names right.


If the company not getting your family members' names right operates under a GDPR-affected jurisdiction, they can be theoretically forced to fix this issue.

See also the highly relevant story "EBCDIC is incompatible with GDPR": https://shkspr.mobi/blog/2021/10/ebcdic-is-incompatible-with...


This reminds me of a story I read where someone named "Null" had lot of issues with computerized systems. Can't find thr exact story but this was a few years ago.


I heard a story like that where someone had a vanity license plate “NONE” and kept getting cited for not having a plate.


It was “null”: https://www.wired.com/story/null-license-plate-landed-one-ha...

> facing $12,049 of traffic fines wrongly sent his way. He’s still not sure if he’ll be able to renew his auto registration this year without paying someone else's tickets. And thanks to the Kafkaesque loop he’s caught in, it’s not clear if the citations will ever stop coming.


An object lesson in getting funny with automated systems that have the power to inflict consequences.


To be fair, the consequences are very much inadequate. This should have been a letter saying “we allowed you to register that plate by mistake, change it asap”.

If anything, this is a lesson to not build systems that can issue tickets to the wrong person - and allow the system’s decisions to be easily overridden at the very least.


That's the takeaway for people in charge of the software development, sure. But really, is it even actually a lesson? To my knowledge, there was no accountability, no backlash, no one got fired or reprimanded, no manager was denied a promotion. What lesson was learned by the stewards of the system, really?

Meanwhile, a lesson was very much learned by Mr. Tartaro who, as a DEFCON speaker, should have absolutely known better. He was playing with fire, and now he's suffering the consequences. I don't want to come across as defending the system in use, although it seems to be as much of a social issue as a technical one with people interpreting the text field as being invalid, but this was clearly a dumbass thing to do.


Then again, if a DEFCON speaker didn't expect this level of a clusterfuck of an outcome, then who would have?


> Can't find thr exact story

Probably because a web search for null has too many false positives, or maybe the stories aren't indexed. :)


There are people named Null that cause issues, for sure.

There's an xkcd for that: https://xkcd.com/327/



I've seen that image plenty of times, though I've never seen anyone who's able to comment on whether it actually tricks the system

I feel like it wouldn't work because when reading a numric license plate going 100km/h there are bound to be some errors. I find it hard to believe the programmers who built the system didn't account for that by dropping non-number characters or regexing the OCR result to verify it's in an acceptable format


She can even get the bassinet! Best seat in the house i swear.


> says she is looking forward to her next flight in the autumn. By then she will be 102 - and perhaps by then the airline computers will have caught on to her real age.

I doubt it. More like she will be treated as a 2 year old and assigned her own seat.


Seat assignment is mostly independent of age. A child 2 or above must have a seat, but a child under two will have one if you pay. If she has been flying for free by exploiting being treated as under two, that'd have made for a much more entertaining article, though.


Many datetime types can't deal with dates before 1900. There must have been quite many born in the XIX century still alive in the 1980s, even the 1990s.


Yeah, but back then customer service agents actually had competence and authority to bypass computers where they (inevitably) messed up.

These days, it's all drones who get heavily punished if they drive off-script, and that's assuming they can go off script.


[dupe]

Some more discussion: https://news.ycombinator.com/item?id=40185903



Y2k strikes again!


vaguely related: if you are flying around January 19, 2038 you have far more faith in your fellow coders than I ever did


A feature, not a bug: the 101 years old lady and the 1 year old baby need the same blended food !


She's got some chompers on her.


The Y2Hundred problem


Now that's a problem to have.


I was not able to use the online checkin of TUI on Saturday, got a JS syntax error which broke the form processing. Service person on the phone told me they have no IT support on weekends, so the problem persists until Monday at least.

Airline managers are a threat to our safety nowadays, the whole industry needs a reset.


I'm confused why the slight inconvenience of having to check in when you arrive at the airport is a "threat to our safety nowadays" and "the whole industry needs a reset".


Maybe the bigger issue is that they admitted to having no IT support on weekends, and consider that the specific problem is just a canary.




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

Search: