I'm wondering if this is a case of idiotic government regulations meeting contractor requirements:
The government stupidly decides to only put 2 digits on the passport. They sign a contract with a company to write OCR software for reading passports. The contractor points out "hey! There's only 2 digits here!", but the customer doesn't have an answer because that's some other department and it's already done. So the contractor just implements the software as specified, assuming that being older than 100 is impossible, because the customer couldn't come up with a solution for this problem.
> I'm wondering if this is a case of idiotic government regulations
The MRZ is an ICAO standard so you’ll need to blame the UN for this.
> The government stupidly decides to only put 2 digits on the passport.
This passport was issued by a foreign government though.
> because the customer couldn't come up with a solution for this problem.
The app schedules an appointment with a human, presumably that human will be able to differentiate between a 1-year-old and a 101-year-old. Perhaps the problem never existed?
The home office phone rep fixed this in 30(!) minutes.
>The MRZ is an ICAO standard so you’ll need to blame the UN for this.
>This passport was issued by a foreign government though.
From my 20 seconds of Google research, plus your comment, it looks like the MRZ is something that various governments agreed on at some point, so the government that issued it isn't completely to blame, it's all of them that stupidly thought that either 1) no one over the age of 100 would ever have a passport or 2) there would never be a 21st century (as seemed to be the assumption through much of the 20th century with things like this; everyone always assumed the first two digits of years were always "19" and that anything starting with "18" or less was ancient history, and anything with "20" or greater was science fiction and would never happen in our lifetimes).
So my first comment is still correct, I just can't blame the UK government entirely for it, but since they're one of the main members of the UN (being on the Security Council), they do earn more blame than, say, Zimbabwe.
Anyway, the app was presumably made for a government contract, and silliness like this is common with those. There's a long list of contractual requirements for things made for the government, and the vendor has to meet all those requirements, so that's what they do. The vendor only has to satisfy the demands of the customer, and some 101-year-old person is not their customer, nor is whatever agent who had to deal with the mess, the government is (specifically whomever awarded the contract).
Generally speaking, with software, it works best when the customer is also the user. Users who don't like some software will try to avoid buying it, or will find another vendor if they're mad. When the customer is someone totally different from the user, you see real problems in usability, because the customer doesn't use it and doesn't care. So software made for government contracts tends to be horrible.
> and anything with "20" or greater was science fiction and would never happen in our lifetimes
Or rather, "this stuff won't be used in 2000 or later, until then we will have fixed it"... well, many banks, airlines and other megacorps still run on Cobol code which is decades old today.
The government stupidly decides to only put 2 digits on the passport. They sign a contract with a company to write OCR software for reading passports. The contractor points out "hey! There's only 2 digits here!", but the customer doesn't have an answer because that's some other department and it's already done. So the contractor just implements the software as specified, assuming that being older than 100 is impossible, because the customer couldn't come up with a solution for this problem.