Slashdot Mirror


Computer Program Prevents 116-Year-Old Woman From Getting Pension (theguardian.com)

Bruce66423 quotes a report from The Guardian: Born at the turn of the past century, Maria Felix is old enough to remember the Mexican Revolution -- but too old to get the bank card needed to collect her monthly 1,200 pesos ($63) welfare payment. Felix turns 117 in July, according to her birth certificate, which local authorities recognize as authentic. She went three months without state support for poor elderly Mexicans after she was turned away from a branch of Citibanamex in the city of Guadalajara for being too old, said Miguel Castro, development secretary for the state of Jalisco. Welfare beneficiaries now need individual bank accounts because of new transparency rules, Castro said. "They told me the limit was 110 years," Felix said with a smile in the plant-filled courtyard of her small house in Guadalajara. In an emailed statement, Citibanamex, a unit of Citigroup Inc, said Felix's age exceeded the "calibration limits" of its system and it was working to get her the bank card as soon as possible. It said it was adjusting its systems to avoid a repeat of the situation.

216 comments

  1. Poor design by Anonymous Coward · · Score: 5, Funny

    The limit clearly should have been 256 from the beginning.

    1. Re:Poor design by K.+S.+Kyosuke · · Score: 3, Insightful

      Wouldn't that require an 8.005624549-bit integer type?

      --
      Ezekiel 23:20
    2. Re: Poor design by Anonymous Coward · · Score: 0

      Or an offset of 1

    3. Re:Poor design by Anonymous Coward · · Score: 0

      you'll need more than that to compute the difference of the current year and the birth year,
      so i don't see an issue.

    4. Re: Poor design by K.+S.+Kyosuke · · Score: 3, Funny

      Ah, the elusive off-by-one correctness. ;)

      --
      Ezekiel 23:20
    5. Re:Poor design by Big+Hairy+Ian · · Score: 1

      Clearly they didn't do a Boundary Value Analysis and didn't cover their Equivalence Partition Classes correctly

      --

      Build a Man a Fire, and He'll Be Warm for a Day. Set a Man on Fire, and He'll Be Warm for the Rest of His Life.

    6. Re: Poor design by ckatko · · Score: 1

      Most people applying for bank accounts aren't zero years old. Seems reasonable.

    7. Re: Poor design by slashrio · · Score: 1

      You only need one...

      --
      "Trump!!", the new Godwin.
    8. Re: Poor design by wonkey_monkey · · Score: 0

      Most of them aren't 117, either.

      --
      systemd is Roko's Basilisk.
    9. Re:Poor design by SharpFang · · Score: 3, Funny

      No, children below age of 1 are not eligible for elderly welfare benefits.

      --
      45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
    10. Re:Poor design by barbariccow · · Score: 1

      Wouldn't that require an 8.005624549-bit integer type?

      No. log2(116) + 1 (because first bit is 0/1, every other is 2^n where n>1 = 7.85798099513. Then, you floor the value because the 7 is the highest-order bit needed, and the remainder is made up as a subset (i.e. 1 doesn't require another bit to represent, can be represented in combination of lower bits). So 7 bits. So even using 8-bit bytes, signed or unsigned, her age would be fine..

    11. Re:Poor design by barbariccow · · Score: 1

      (i.e. 1 doesn't require another bit

      Should have read "less than 1 doesn't require another bit" but slashey ate my <

    12. Re:Poor design by cheesybagel · · Score: 1

      180. That's as long as Adam was supposed to have lived according to the Bible. If you believe that sort of thing. I think the modern recorded limit is like 122.

    13. Re: Poor design by Anonymous Coward · · Score: 0

      Maybe try reading the thread before replying? Crazy idea I know, but it just might work.

    14. Re:Poor design by ChunderDownunder · · Score: 1

      Mathuselah was 969. But surely people didn't live seven times longer. Were earth years shorter? What would cause earth's orbit to slow, I wonder.

    15. Re: Poor design by TuringTest · · Score: 1

      But some are.

      --
      Singularity: a belief in the "God" idea with the "demiurge" relation inverted.
    16. Re: Poor design by OrangeTide · · Score: 0, Troll

      so for the first 12 months of a child's life they don't exist, that may be the most liberal position on abortion I've seen.

      --
      “Common sense is not so common.” — Voltaire
    17. Re: Poor design by OrangeTide · · Score: 3, Interesting

      My hometown's bank had a promotional thing to open a savings account for your new baby. So a lot of infants had bank accounts.

      --
      “Common sense is not so common.” — Voltaire
    18. Re: Poor design by ShanghaiBill · · Score: 1

      There are a lot more people below the age of one with bank accounts than over 117. All of my kids had ESAs the month they were born.

    19. Re:Poor design by Anonymous Coward · · Score: 0

      You can't store 256 in 7 bits.

    20. Re: Poor design by Anonymous Coward · · Score: 0

      But you can store 128, and make another thoughtless program that will fail for the next oldest person

    21. Re:Poor design by Anonymous Coward · · Score: 0

      Maybe it was a translation error and it was supposed to be age in months not years?

      dividing 969 by 12 yields 80.75, which is a perfectly reasonable lifespan for a human.

    22. Re:Poor design by Anonymous Coward · · Score: 0

      Prior to the Great Flood, the earth enjoyed more shielding from harmful uv radiation from the sun. The large asteroid strike that triggered the global deluge shattered the water canopy enveloping the earth and subjected all of earths inhabitants to larger doses of radiation, resulting in shorter life spans.

    23. Re:Poor design by whitlocktj · · Score: 0

      True, true....

    24. Re:Poor design by CrimsonAvenger · · Score: 1

      Most likely 969 months, not years. So 74 or so....

      --

      "I do not agree with what you say, but I will defend to the death your right to say it"
    25. Re:Poor design by fahrbot-bot · · Score: 1

      Not thinking it through, watch them set the limit to 118.

      --
      It must have been something you assimilated. . . .
    26. Re:Poor design by Anonymous Coward · · Score: 1

      This is going to be one my saddests posts ever, mainly because it's reminding me what a boring job I used to have, upon which I wasted such an unjustifiably-large fraction of my incredibly finite lifetime. When people are thinking about the dust in my grave, they'll think, "He did what for how long?"

      I maintained (and somewhat developed, but it was mostly maintenance) a medical billing accounting package back in the '80s-'00s. We'd customize it for each of the practices that we sold (actually: licensed) it to. The heart clinic had their special needs, the ob/gyn place had theirs, the orthopedic folks had their oddities, and of course everyone had various claims interfaces to various insurance companies and processing houses. I am so glad I'm finally starting to forget all the details.

      (Exciting, huh?) I'm going to put the punchline before the joke, because thinking about my old job just makes me sad and doesn't deserve any laughs.

      Turns out the pediatricians weren't ever using their Medicare stuff. I didn't understand why I hadn't gotten a certain bug report from them. Well, until someone gave me the "duh" explanation: pediatricians don't ever submit Medicare claims.

      Hope you enjoyed this story. Don't spend your life on accounting software maintenance. That's the real lesson. Don't worry about young people using or not-using old people's services. The only service that really matters is the coroner's, and actually that one doesn't matter much either.

    27. Re: Poor design by mysidia · · Score: 1

      There are a lot more people below the age of one with bank accounts than over 117.

      People below the Age of 1 don't get Bankcards or control of their own bank accounts, however.
      ESAs require a named "Responsible individual" who is at least 18 years of age, And a custodian..... The account does not really belong to the person; the account belongs to the ESA trust that is "For the benefit of X" person.
      Because if no bankcard, and because they're administered by a custodian, these accounts wouldn't run into age-field related problems anyways.

      Anyways.... There's no reason banks should need a stored variable that contains someone's age with any number of bits; it should just contain the date of birth for security and minimum age verification reasons.

    28. Re: Poor design by fibonacci8 · · Score: 1

      The first 12 months of a child's life they're probably not over 18 years old or emancipated, making them ineligible for their own welfare benefits. Reach harder.

      --
      Inheritance is the sincerest form of nepotism.
    29. Re:Poor design by mysidia · · Score: 1

      You can't store 256 in 7 bits.

      Yes you can. Raw data values have no inherent interpretation, which is why there are different ways of coding binary values such as BCD and the Graycode. You can take the most significant bit and say that this particular bit, If set to True shall be interpreted as 4 times the original value, instead of 2 times the original value. Or you can say this field contains quantities between
        128 and 256

    30. Re: Poor design by oldmac31310 · · Score: 1

      It's 'anyway'.

      --
      http://www.acetonestudio.com
    31. Re:Poor design by Anonymous Coward · · Score: 0

      Kyusoke was saying that to store ages in the range [0,256] inclusive, then slightly over 8 bits is needed, namely log2(257) = 8.005624549.

      It was in response to the parent's joke that the age limit should be 256 (not 255).

    32. Re: Poor design by Anonymous Coward · · Score: 0

      I had my first bank account with bank card; opened independently of my parents at the age of 10. (Note: Canada)
      I needed a chequing account so that I could pay dues owed on my paper-route.
      So, bank account was opened.

      Basically, if you're old enough to understand the forms you're signing, they'll give you an account.

    33. Re: Poor design by OrangeTide · · Score: 1

      It was a joke. A exaggerated consequence for a software bug. Also known as parody.
      People are too damn sensitive or I ran into a cluster of Asperger's sufferers.

      PS - if 100% of my jokes hit, I would be a professional comedian instead of a professional programmer.

      --
      “Common sense is not so common.” — Voltaire
    34. Re:Poor design by Anonymous Coward · · Score: 0

      Yeah. It was probably written as "969 moons".

      That guy had the coldest ass in Antiquity.

    35. Re:Poor design by Anonymous Coward · · Score: 0

      But if you process all the numbers you end up with some really bad range errors.

    36. Re: Poor design by arglebargle_xiv · · Score: 1

      People below the Age of 1 don't get Bankcards or control of their own bank accounts, however. ESAs require a named "Responsible individual" who is at least 18 years of age

      And that was her problem, she's only (1)17. Once her (1)18th birthday comes around, she can get an ESA, and legally have a drink to celebrate it.

    37. Re: Poor design by Anonymous Coward · · Score: 0

      Try comprehending the problem.

      The reason this lady couldn't get the benefits is because she couldn't get her own bank account. So while a baby won't be getting benefits, their parents may still want to open a bank account for them.

    38. Re: Poor design by Anonymous Coward · · Score: 0

      Actually, it is "anyways".

    39. Re: Poor design by beastofburdon · · Score: 1

      You only have to go back a few hundred years for that to be the norm. The majority of children didn't live to a year, so it was actually not uncommon for a child to not be named until it was a year old or so. Also, if it had a deformity, straight to the trash can.

  2. Computer Program? by 110010001000 · · Score: 4, Funny

    Surely you meant "AI" or "deep neural net", not just a "computer program"? It is 2017.

    1. Re:Computer Program? by Anonymous Coward · · Score: 0

      It is 2017.

      Thanks! All morning I was thinking it was 2018.

    2. Re:Computer Program? by ckatko · · Score: 1

      Nope, John Oliver still has a job in 2017.

    3. Re:Computer Program? by Anonymous Coward · · Score: 0

      HAHAHH!!! That's awesome! And Mico$oft sucks just like airline food!! WOOHOO!

      (foad)

    4. Re:Computer Program? by Big+Hairy+Ian · · Score: 1

      Surely you meant "AI" or "deep neural net", not just a "computer program"? It is 2017.

      I can't let you do that Dave!

      --

      Build a Man a Fire, and He'll Be Warm for a Day. Set a Man on Fire, and He'll Be Warm for the Rest of His Life.

    5. Re:Computer Program? by Chris+Mattern · · Score: 1

      it may be 2017, but I'll bet $10 that the machine denying her application is programmed in COBOL.

    6. Re:Computer Program? by Anonymous Coward · · Score: 0

      Nope, EL COBOLO

    7. Re:Computer Program? by Anonymous Coward · · Score: 0

      No, his job ended when we went from the current year to 2016.

  3. What's her account number? by Anonymous Coward · · Score: 0

    We should crowd source her $5k and set the poor woman up for life.

    1. Re:What's her account number? by unixisc · · Score: 1

      If she's lived up to 116, what makes you think she won't make it 2 more years? Particularly if she still remembers the Mexican war?

  4. As so often: by Anonymous Coward · · Score: 0

    A system dealing with the real world because it has rigid categories and no way to deal with unforeseen edge cases.

    IOW, assuming for the sake of argument that there may be more edge cases than you can deal with, that is no excuse to leave them impossible to deal with, you doofus, you. This is designing for the real world 101 and you as well as citigroup failed it, with bells on. You always need an "other" category then deal with those cases by hand.

    Regardless of cost even, since you can't expect your clients to stump up for incidental costs arising from your failures. Who's the business here, eh? Or are you all just sitting around waiting to be replaced by small shell scripts?

    1. Re:As so often: by known_coward_69 · · Score: 1

      duh, welcome to computers

      we have data in our databases that says 1900 or 2049 or some other data we'll think we will never use because we need data in the column and it can't be blank

      computers are nothing more than trying to tell the biggest retart how to follow directions. very specific directions

    2. Re:As so often: by Anonymous Coward · · Score: 0

      the biggest retart

      +1 Funny. -PCP

  5. Re:So what's the issue? by Anonymous Coward · · Score: 5, Interesting

    There are two issues. First, apparently no programmer on the job was smart enough to consider people over 100 years old. Second, the bank could have just created a temporary account for her claiming she was born in 1901 with a note attached to fixed the date once the system had been patched. Sending her away rather than just fudging the birth date was a pretty foolish thing to do.

  6. Re:So what's the issue? by Anonymous Coward · · Score: 0

    Because patching it out should take an hour, not three months.

  7. Re:So what's the issue? by sheramil · · Score: 5, Insightful

    because somebody was stupid enough to decide that nobody could live longer than 110, despite evidence to the contrary, and they were stupid enough to include that limit in their software in such a way that couldn't be easily modified.

  8. Re:So what's the issue? by Anonymous Coward · · Score: 0

    The issue is that this was even an issue to begin with. Somehow they didn't plan for anyone to live longer than 110 and set a limit on that, a limit they can't easily lift at the press of a button. This is bad.

  9. Wrong! by Gravis+Zero · · Score: 3, Insightful

    The computer program isn't preventing anything, it's a bank that wrote shitty software that is preventing it. Do not blame machines for doing exactly what you told them to do!

    --
    Anons need not reply. Questions end with a question mark.
    1. Re:Wrong! by Anonymous Coward · · Score: 0

      The computer program isn't preventing anything, it's a bank that wrote shitty software that is preventing it. Do not blame machines for doing exactly what you told them to do!

      I doubt it was written by the bank. How about "it's a bank that bought shitty software..."?

    2. Re:Wrong! by ckatko · · Score: 1

      Except of a law or guideline (also written by people) was preventing her from getting money, you'd still say "Law prevents woman from getting her money."

    3. Re: Wrong! by Anonymous Coward · · Score: 0

      In my experience, banks write their own software

    4. Re: Wrong! by Major+Blud · · Score: 1

      In my experience, banks write their own software

      In my experience, they don't.

      --
      If you post as Anonymous Coward, don't expect a reply.
    5. Re: Wrong! by Goose+In+Orbit · · Score: 1

      The reality, therefore, is both.

      In my case - a bespoke system replaced by a (rather heavily tweaked) off-the-shelf suite (which was prettier, but slower - despite 10 times the hardware requirements...)

    6. Re:Wrong! by Chris+Mattern · · Score: 1

      Actually, it probably was written by the bank. Banks have IT departments, and they often write their own custom software.

    7. Re: Wrong! by omnichad · · Score: 1

      Depends on the size of the bank.

    8. Re:Wrong! by gurps_npc · · Score: 1

      Actually it's worse than that. It's the bank manager (or CEO) that refuses to input false information with a note having the truth and a memo to their employees to fix it or be fired.

      Computers are not perfect. The difference between a good manager and a MORON is the moron says "sorry, the computer won't let us do that", while the manager ignores the rules and takes personal responsibility to see that the customer gets serviced.

      --
      excitingthingstodo.blogspot.com
    9. Re:Wrong! by Tranzistors · · Score: 1

      Actually, it probably was written by the bank. Banks have IT departments, and they often write their own custom software.

      Disclaimer: I work for a company that writes software for banks.

      At least our clients all have IT staff that at least is able to modify database directly. They can't change the code we write, but if they need to make configuration or input data that we did not anticipate, whey have access to the database and can do the magic themselves. In this case overriding age input should be trivial, but perhaps bank was reluctant to change things without testing for side effects first.

    10. Re:Wrong! by Anonymous Coward · · Score: 0

      Laws are utterly powerless. The one enforcing it is the one preventing her from getting her money.

  10. Re:So what's the issue? by Tranzistors · · Score: 4, Insightful

    There is no way to take every edge case into account when designing systems. She is clearly an edge case. Why is this even here?

    Because when you think “this will work for 99% of cases” the corollary is “the rest of 1% can go fudge themselves”. Sometimes that is fine, but if a person can't get their pension, that is certainly not ok. Consider this a cautionary tale for programmers.

  11. Re:So what's the issue? by Higaran · · Score: 2

    How about someone in the bank just puts here age in like 10 years younger than she is, what's the big deal if their system thinks he is 106 instead of 116?

  12. Re:So what's the issue? by Anonymous Coward · · Score: 0

    Since when is it ok to leave people for months without support / food?
      "She went three months without state support for poor elderly Mexicans"

    I want to see you without salary for three month because banking system don't like your birthdate, ... :-/
    And before you play the "she should go to work" card, you read that she is over 100, ?

  13. No different than Trump on the bathroom scale by Anonymous Coward · · Score: 0

    The readout is OMG

    1. Re:No different than Trump on the bathroom scale by omnichad · · Score: 1

      0mg is lighter than I would have expected.

  14. Re:So what's the issue? by Anonymous Coward · · Score: 1

    Even in the summary, it states that they (Citibanamex) are working on correcting the issue and getting her account put in place.

    There is no way to take every edge case into account when designing systems. She is clearly an edge case. Why is this even here?

    Oh come on, the programmers didn't do their job.
    It is that implausible that someone is over 110 years old?
    When writing billing software for hospitals, I had to take into account that there could be twins and triplets with different birth dates from the same birth.
    [Hint: it happens around midnight]

  15. Productivity over a lifetime by fche · · Score: 1

    So crunching some numbers. Hard math ahead, watch out: So one spends 2 decades in school. Works for 5 decades. Is on pension for 5 more decades. So one's productive for less than half of one's whole life, and during that time one must support oneself and another unproductive person (young or old).

    1. Re:Productivity over a lifetime by Anonymous Coward · · Score: 0

      In older times, as bodys broke down, knowledge would be work. Knowing things is what an older person does. How do we know the Mexican war really was what the history books say with out a first hand account? (You cant, stuff always gets lost to history).

      More then likely work arounds have been used for the last 6 years. We finally hit what ever point happens when she cant be worked around.

    2. Re:Productivity over a lifetime by Anonymous Coward · · Score: 0

      I doubt she went to school for 2 decades if she was born in 1899. More like 5 - 10 years, tops. For a woman during that time period, probably closer to 5.

      And people from then were used to working until they literally couldn't. Retirement meant your body or mind (or both) were so destroyed you were going to die soon and others would give you charity (no pension back then).

      So you can add some decades of working to your estimate.

    3. Re:Productivity over a lifetime by Anonymous Coward · · Score: 0

      And your point is? So you work for 5 decades. In those 5 decades you create enough surplus 'wealth' (either personally saved or through the goods you make for society) that you can live off the surplus for the non-working part of your life. And especially now, much of the productivity which allows us all to eat every day without working the fields from sunrise to sundown is from technology and machines no matter who technically 'owns' the machines. Compared to preindustrial civilization we in the industrialized countries are all mostly supported by machine labor, not our own.

    4. Re:Productivity over a lifetime by MrLogic17 · · Score: 1

      Survivor bias strikes again.
      Just because she did this, doesn't mean that's normal or expected.

  16. Calibration limits? Really?! by Anonymous Coward · · Score: 1

    So, that's what you call a number that you pull out of your ass - 'calibration limit'.

  17. Re:So what's the issue? by Anonymous Coward · · Score: 1

    There is no way to take every edge case into account when designing systems. She is clearly an edge case. Why is this even here?

    Because when you think “this will work for 99% of cases” the corollary is “the rest of 1% can go fudge themselves”. Sometimes that is fine, but if a person can't get their pension, that is certainly not ok. Consider this a cautionary tale for programmers.

    Yes, why set a limit at 110? Make it 200, we have no recent documented cases of people being that old...

  18. Re:So what's the issue? by Anonymous Coward · · Score: 2, Insightful

    Someone is new!

    This mentality frustrates me to no end. While it may be possible that a single line of code change, or hell even just a minor tweak to a DB field property can be made, this is a freaking Financial application!!!

    No change can be made in an hour and actually deployed. There is testing and procedures that must be adhered to in order to maintain a level of quality and stability. If you say, yeah but this is isolated, then why have quality procedures in place to begin with? Sure if this was some free do nothing app, or say, didn't involve peoples MONEY, then yeah feel free to play around in production.

    I used to be of the mindset, go go go! Then I got wiser and through experience learned that there is a time to go fast and a time to follow protocol. You too will one day learn this lesson as we all have/will.

    Now, with all that said. This should have never been an issue to begin with! It is obvious poor decision making and or lack of experience is to blame for this.

  19. Forget the computer program... by geekmux · · Score: 1

    ...I just want to know the magic being her old age.

    Perhaps it's a brand of Tequila she drinks every day that keeps her in such high spirits.

    1. Re:Forget the computer program... by bongey · · Score: 1

      She isn't 116 is the reason, just do a google image search for "oldest living person". She easily looks 10-20 years younger. Her birth certificate was most likely issued much later than her actual birth date. That is also why the genius world records organization requires more than just a local birth certificate. https://www.google.com/search?...

  20. Re: So what's the issue? by Anonymous Coward · · Score: 1, Insightful

    Programmers as a whole are not very smart. This should not be a surprise. People working with computers that much always exhibit some deficiency.

  21. Humble request by hidflect · · Score: 5, Funny

    In accordance with our records, you should be dead now. Please do the needful...

    1. Re:Humble request by SCVonSteroids · · Score: 1

      I thought it was "kindly do needful" ?
      I swear I had to look it up a couple times and it still catches me off guard.

      --
      I tend to rant.
  22. Re:So what's the issue? by Anonymous Coward · · Score: 1, Informative

    It depends on how you define 'recent' and 'documented'. There are several cases of people in the old testament living well over 500 years old. With medical advances I could see this number easily going to 1000. Why not make the limit 65535 and call it a day?

  23. The bigger question by MasseKid · · Score: 1

    The bigger question is why the limit was 116 and not a round binary number, like say 128.

    1. Re:The bigger question by cheesybagel · · Score: 1

      Actually the limit was 110 supposedly. It's probably stored as a base 10 decimal number. Maybe in BCD format. This being a stodgy financial database.

    2. Re:The bigger question by ArchieBunker · · Score: 1

      Banks are big users of AS/400. I'm thinking it has something to do with EBCDIC. Flight numbers are still 6 characters long because of some IBM limitation from the early 1960s.

      --
      Only the State obtains its revenue by coercion. - Murray Rothbard
    3. Re:The bigger question by Aighearach · · Score: 1

      In COBOL 110 is generally more-round than 128.

    4. Re:The bigger question by mark-t · · Score: 1

      Yes, but if you can store 110 in COBOL, then you can ordinarily also store 999.

    5. Re:The bigger question by Anonymous Coward · · Score: 0

      There's probably a good chance that they're still using 2-digit years or year computations in there. Or maybe even they used to use 2-digit years and there's still rules dating back to the era of 2-digit years. "Calibration limits" sounds like using a cheap hack to handle 100-year rollover.

  24. Mexico (Read the summary at least) by Anonymous Coward · · Score: 2, Informative

    This is in Mexico, it has nothing to do with America. (Though I wouldn't put it past any programmers here to miss the same edge case.)

    1. Re:Mexico (Read the summary at least) by Goose+In+Orbit · · Score: 1

      Though I wouldn't put it past any programmers here to miss the same edge case.

      Wouldn't put it past the wall builders to accidentally enclose Mexico, rather than just separate it from the US...

    2. Re:Mexico (Read the summary at least) by Anonymous Coward · · Score: 0

      This is in Mexico, it has nothing to do with America.

      That wall is going to get seriously more expensive if Mexico isn't even on the same continent as the U.S.

  25. Citi by Anonymous Coward · · Score: 0

    That why I dont bank at Citi. Hated it when Costco switched to them for their credit cards.

  26. Re:So what's the issue? by Anonymous Coward · · Score: 0

    Something operating within previously established limits isn't an edge case. This is a design failure plain and simple, like if you had a height field that tops out at 6'10" or an elevation field that can't do negative MSL values. They picked an arbitrary limit and it caused their system to fail. If she had been 150 years old and had been missing for the last 30 years (and presumed dead), then sure, nobody could have anticipated this. But if your "age of human being" field can't even handle the known finite range of ages in the current human population, you failed.

  27. Re:So what's the issue? by DarkOx · · Score: 2

    Because validation rules like this are actually pretty important when it comes to detecting and preventing fraud. The failure here was not that the software could not deal with here being more than 110.

    That is sufficiently an edge case that as frequently as it comes up a call form a bank manager to HQ where they can say something like well enter the date a 1/1/1900 than and we will have an engineer update the record to the correct value ASAP should work.

    --
    Repeal the 17th Amendment TODAY! Also Please Read http://www.gnu.org/philosophy/right-to-read.html
  28. Re: So what's the issue? by Anonymous Coward · · Score: 1, Funny

    For example, your glaring social inadequacies radiate through the anonymous projection on Slashdot.

  29. Object Lessons 101 by Anonymous Coward · · Score: 0

    This is a great example of why it would be insanity to turn our lives over to algorithms and how that, as a proof of concept, is already evident. Silicon Valley, collectively, are fools with way too much time and money on and in their hands.

  30. Just fix the problem by flink · · Score: 1

    Go into the fucking vault and get the lady her pension money in cash. The bank can eat the loss, the problem is their fault, and at her age, she's earned it.

    1. Re:Just fix the problem by Anonymous Coward · · Score: 0

      Or just input her age as 100 and be done with it. Bureaucracy.

    2. Re:Just fix the problem by mysidia · · Score: 1

      Yeah.... give her the cash assistance she was due PLUS 25% default interest for the bank's past failure in their obligation to settle up their debt promptly.

  31. Re:So what's the issue? by Oxygen99 · · Score: 1

    It's also worth bearing in mind that on a national scale, 1% is a shitload of people.

    --
    I had a dream, bright and carefree, but now there's doubt and gravity
  32. You're right. by Qbertino · · Score: 0

    In Trump's America your pension has been cancelled.

    --
    We suffer more in our imagination than in reality. - Seneca
  33. Re:So what's the issue? by slashrio · · Score: 1

    Yes... but... changing the birth date would amount to fraud and because terrurusm...

    --
    "Trump!!", the new Godwin.
  34. Re:So what's the issue? by slashrio · · Score: 1

    Edge case? They fucked up the same way as Gates did with his 640 kB goof, whether he said it or not.

    --
    "Trump!!", the new Godwin.
  35. Re:So what's the issue? by Big+Hairy+Ian · · Score: 2

    First, apparently no programmer on the job was smart enough to consider people over 100 years old.

    Erm RTFS maximum age was set at 110 years. And how do we know this arbitrary limit wasn't defined in in the damned BR's

    --

    Build a Man a Fire, and He'll Be Warm for a Day. Set a Man on Fire, and He'll Be Warm for the Rest of His Life.

  36. Re:So what's the issue? by Big+Hairy+Ian · · Score: 1

    Because when you think “this will work for 99% of cases” the corollary is “the rest of 1% can go fudge themselves”. Sometimes that is fine, but if a person can't get their pension, that is certainly not ok. Consider this a cautionary tale for programmers.

    Why blame the programmers? For all we know this was in the business requirements

    --

    Build a Man a Fire, and He'll Be Warm for a Day. Set a Man on Fire, and He'll Be Warm for the Rest of His Life.

  37. Re:So what's the issue? by DavidRawling · · Score: 2

    There's almost certainly no way to change that datum as a teller or manager (your birthdate can never change!!), and quite possibly the developers aren't allowed to adjust data in production - even with scripts and to fix broken data. It's probably "all too hard" so there's no point trying (also, anti-fraud, don't trust anyone, etc etc)

  38. why by Anonymous Coward · · Score: 0

    there should not have been a limit theres no point in it. and 110 is not a computer limitation there realy are not limits like that any more so i guess why the 110 limit to begin with.

    1. Re:Why by OrangeTide · · Score: 1

      Because the bean counters won't let us have an infinite amount of memory to run them on like a proper Turing machine.

      --
      “Common sense is not so common.” — Voltaire
    2. Re:Why by mysidia · · Score: 1

      Infinite memory is Not required to avoid making the assumptions. You can allocate from heap space just fine.
      Unbounded memory requirement does Not mean infinite memory requirement. It just means you have to add more memory as demands on the application cause the application's memory demand to dynamically expand.

    3. Re:Why by Anonymous Coward · · Score: 0

      Come on, you don't need an "infinite amount" of memory. Just make it 2x as big as your little head thinks "reasonable".

      If the ipv4 designers had made the addresses 64bit, we wouldn't have run out of them in civilization's lifetime. The same with unix's fucking 32bit time epoch. But those though bad were kind of engineering decisions.

      But programmers love to set arbitrary limits out of sheer stupidity, like limiting first/second name to 20 bytes -- as though storing the length in 4 bytes + the actual string wouldn't be SHORTER than wasting 20 bytes in 90% of cases.

    4. Re:Why by OrangeTide · · Score: 1

      Come on, you don't need an "infinite amount" of memory. Just make it 2x as big as your little head thinks "reasonable".

      I think 65536 is a very reasonable size for a hash table.

      --
      “Common sense is not so common.” — Voltaire
  39. Re:So what's the issue? by Anonymous Coward · · Score: 0

    it called "terrorismo" you bigot.

  40. Re:So what's the issue? by jpatters · · Score: 2

    The old testament is not a valid historical document. Also, it takes quite a bit of motivated reasoning to think that we are anywhere near pushing maximum human lifespans to 1000 or even 200. Not going to happen. Everyone reading this now will be dead and gone in no less than 115 years. Get over it. To return to the topic, though, the limit should be realistic for purposes of fraud detection. You wouldn't want families going on collecting great-great-grandma's pension long after she is dead. As others have pointed out, it is a design flaw that there is no way of handling edge cases with manual oversight, though.

    --
    "Remember, there never were pineapple-almond cookies here."
  41. Re:So what's the issue? by rhazz · · Score: 1

    First, apparently no programmer on the job was smart enough to consider people over 100 years old.

    Programmers don't generally throw in arbitrary rules like that (I'm sure everyone has an anecdote though). I'd say it's more likely they were given a specific business rule that prevented people over 100 from claiming pension cheques to reduce a fraud vector. Perhaps this use case was supposed to coincide with a business process to otherwise make payments available to actual centenarians, but that got lost somewhere along the project.

  42. Re: So what's the issue? by Kiffer · · Score: 1

    Hold on... why would there be no need to change a birthdate? It is highly possible that some data entry mistake could happen and you would need to amend a mistake. For example you could have an employee or customer who is used to MMDDYY using a system that is DDMMYY and need to fix that.

  43. Programmer decision made years ago. by Anonymous Coward · · Score: 0

    I've written code that I knew would break. Mine breaks in 2038 - there's a comment in the code. The same comment mentions that I'm probably dead too.

    I bet what happened was the programmer guessed the age of the oldest person in the world after thinking about it overnight. He/she guessed wrong. There are people who make it to 128, I believe. But since most of Mexico is Catholic and they believe the bible is true, then they need to make that number 950, right?

    It really is that simple.

    Best case, the source code is still around and they have the same tools available to compile it. Worst case, the local branch manager needs to override the issue, keep track of payments and have global accounting fix it somehow.

    $64 is a round off error to a bank. I have accounts that I requested be closed that have $0.01 in them because there was interest accrued the day they were closing the account. I've been getting paper statements for these accounts for many years, usually 5 pages for each, every quarter. If a financial institution cannot follow my clearly, written, requests, then they deserve to was money and paper sending me statements for the next 50 yrs. Or until 2038, when the software breaks. ;)

  44. Re:So what's the issue? by Big+Hairy+Ian · · Score: 1

    It's a Bank

    They wouldn’t even lift a finger to save their own grandmothers from the Ravenous Bugblatter Beast of Traal without orders signed in triplicate, sent in, sent back, queried, lost, found, subjected to public inquiry, lost again, and finally buried in soft peat for three months and recycled as firelighters.

    Douglas Adams

    --

    Build a Man a Fire, and He'll Be Warm for a Day. Set a Man on Fire, and He'll Be Warm for the Rest of His Life.

  45. Computer says No! by whoever57 · · Score: 1
    --
    The real "Libtards" are the Libertarians!
  46. Re:So what's the issue? by jandrese · · Score: 1

    Or someone just used a BCD 2 digit counter for the age because they somehow are old enough for that to sound reasonable, but too young to remember Y2K.

    --

    I read the internet for the articles.
  47. 32-bit time_t limits by tmshort · · Score: 1

    She was born outside these limits:

    0xFFFFFFFF: 20:45:52 Friday, 13 December 1901 UTC.
    0x00000000: 00:00:00 Thursday, 1 January 1970 UTC
    0x7FFFFFFF: 03:14:08 Tuesday, 19 January 2038 UTC

    1. Re:32-bit time_t limits by Anonymous Coward · · Score: 0

      then they need to compile with 64bit unix epoch, upgrade the hosting platform, and avoid an even bigger problem a few decades from now.

    2. Re:32-bit time_t limits by Anonymous Coward · · Score: 0

      0xFFFFFFFF is 23:59:59, 31 December 1969 if you're talking about signed time_t on a typical modern 32-bit computer architecture. This is a bank though, so it very well might not be time_t, modern, or even 32-bit.

      20:45:52 Friday, 13 December 1901 UTC would be 0x80000000.

  48. Re:So what's the issue? by Kjella · · Score: 3, Interesting

    How about someone in the bank just puts here age in like 10 years younger than she is, what's the big deal if their system thinks he is 106 instead of 116?

    Well, the bank is usually allowed to issue IDs that many people who don't have a driver's license and don't want to carry their passport use. Intentionally falsifying records like that is not something I'd do without explicit approval from my boss in writing, because a note is unlikely to prevent such false documents from being issued. And that would probably escalate all the way to legal, who might have to check whatever agreements they have with the government, who will then probably say no. It's just not worth my own skin to be customer friendly.

    --
    Live today, because you never know what tomorrow brings
  49. Re: So what's the issue? by ebrandsberg · · Score: 1

    The problem is programming to a spec instead of programming to what is needed. This isn't likely a programming issue, but that they were told "accept ages up to 110" by someone writing the spec.

  50. Re:So what's the issue? by rhazz · · Score: 1

    Yes, why set a limit at 110?

    Fraud prevention? I've seen several stories over the years of people collecting pension cheques issued to dead relatives. The odds of people trying to collect pension cheques for a dead relative is probably orders of magnitude higher compared to the odds of someone over the age of 110 being a member of that bank and collecting an actual pension cheque.

    This page suggests there is one other person in Mexico over the age of 110 (I'm sure there's a few more unlisted), so the odds of this happening were somewhere around 2/127,000,000.

  51. Because unsigned char isn't good enough? by bettodavis · · Score: 1

    It requires going into significant (pointless) effort to actually reduce the numeric representation capabilities of the humble unsigned char for the possible age of humans.

    Seems to be a clear example of over-engineering it.

    1. Re:Because unsigned char isn't good enough? by Aighearach · · Score: 1

      RIght, unsigned char is not good enough for banking. The data type for age is probably PIC 9(3) and the limitation is based on data validation code, not data type limitations.

  52. Why by Anonymous Coward · · Score: 0

    Why do programmers insist on placing arbitrary artificial limits in software? This is a plague of the industry: building in assumptions that aren't necessary for the proper function of the code. Sooner or later it seriously affects somebody, and there is no reason for it.

  53. Adam lived to 930 by Bruce66423 · · Score: 5, Funny

    Gen 5:5

    Methuselah 969 Gen 5:25

    What DO they teach them in Sunday School these days...

    1. Re:Adam lived to 930 by Anonymous Coward · · Score: 0

      Here is the real question: Did Methuselah drown?

    2. Re:Adam lived to 930 by snookiex · · Score: 1

      That Adam and Eve were expelled from paradise because the pension system was clearly unsustainable.

      --
      Open Source Network Inventory for the masses! Kuwaiba
    3. Re:Adam lived to 930 by Streetlight · · Score: 1

      Speaking of Adam and Eve, I've often wondered how the human population developed. Cain supposedly killed his bother, and nothing was said about female humans born to Adam and Eve. Even if Adam and Eve had daughters, or Cain and Eve have daughters, did Cain and/or Adam have children with Eve's daughters? Sounds like lots of incest was going on regardless of the situation.

      --
      In a time of universal deceit, telling the truth is a revolutionary act. George Orwell
    4. Re:Adam lived to 930 by mrclevesque · · Score: 1

      "God created only two people, Adam and Eve, and told them to have lots of children—“Fill the earth!” Scripture mentions only three of Adam and Eve’s children by name (Cain, Abel, and Seth). However, Genesis 5:4 makes it clear that they had multiple sons and daughters : After he begot Seth, the days of Adam were eight hundred years; and he had sons and daughters. "

      https://answersingenesis.org/b...

      God then cursed the serpent, imposed reproductive difficulties upon Eve and "cursed the ground for [Adam's] sake" [Genesis 3:17]. From that moment, everything that Adam – and mankind since – ate had grown in the cursed ground. Cell by living cell, Adam began to very slowly change from his initial state of eternal perfection to mortal imperfection, and he finally died at the age of 930 years [Genesis 5:5]. Nevertheless, Adam and Eve's immediate offspring would have been very close to physical perfection while brother-sister marriages were the only unions possible! Further, according to the genealogies given in Scripture, pre-flood longevity was about the same as that for Adam, so families were very large compared to those of today. Brother-sister unions were not only unavoidable, but they undoubtedly became traditional and expected.

      http://www.creationmoments.com...

    5. Re:Adam lived to 930 by Anonymous Coward · · Score: 0

      Ever wonder why Passover and Ramadan jump around on the Gregorian Calendar? Hmmm.

      The authors of the Torah/Bible/Koran lived near the equator. Do you think they used a solar calendar?

      If Adam lived for 930 lunar cycles ... 930 / 13 = 71 Years Old
      If Methuselah lived for 969 lunar cycles ... 969 / 13 = 74 Years Old

      These numbers would be quite impressive for the era, and therefore noteworthy.

      Be wary of your bias when interpreting historical documents.

    6. Re:Adam lived to 930 by lsatenstein · · Score: 1

      Noah and others in the old testiment counted new-moons as years. Later, the year was from rainy season to rainy season.
      and much later, to the solar system year.

      The Jews have an expression that they say to ill people they wish well or to someone who was celebrated t'il a 120
      That number stems from the rainy system counting.

      In those days, polio, meningitis, diptheria, measles, mumps, and general lack of hygiene caused early deaths. At the turn of the century, if you lived to 70, you were doing great. Today, a 70 year old has a better chance of living to 90 than a 60 year old.
      (The 70year old's genes passed the test, so to speak, and thus age 90 is within reach) , By 2050, look to 120 years as a frequently attainable age by the kids of today.

      --
      Leslie Satenstein Montreal Quebec Canada
    7. Re:Adam lived to 930 by peawormsworth · · Score: 1

      lots of incest was going on

      That's right Lot enjoyed making children with his own daughters. There is no guesswork. It is written. Pretty much everyone in the bible is a rotten character, otherwise it wouldn't be much fun reading it and probably forgotten by now.

  54. Re: So what's the issue? by Midnight+Thunder · · Score: 1

    I wouldn't say it is a lack of intelligence, but the challenge of defining acceptable ranges for data validation, without causing too many edge cases. The opposite is no validation and questionable data values.

    --
    Jumpstart the tartan drive.
  55. Good to see signs of reading on Slashdot by Bruce66423 · · Score: 1

    There is hope...

  56. Re:So what's the issue? by thomn8r · · Score: 1

    the bank could have just created a temporary account for her claiming she was born in 1901

    Then they would have told her that 15-year-olds were not eligible.

  57. Re:So what's the issue? by Anonymous Coward · · Score: 0

    Things are never so simple.

    The most likely scenario is that the bank was having all these problems of data entry. Teller enters in 06 for the birth year. Is that 2006, or 1906? System assumes 1906, and 11 year olds show up as 111 years old. Parents complain. Someone else suggests that they could solve this problem by just assuming anything over 100 years old is a data entry error. Someone else says "no, make it 110 years. We have no customers over 102 years, and never have".

    The problem is of course that they implemented a hard limit rather than a warning. i.e. "are you SURE you want to set this users birthdate to 1902?"

  58. Re: So what's the issue? by TuringTest · · Score: 1

    Why would someone who is not a programmer set up such an arbitrary limit?

    That kind of unnatural shortcoming typically comes from a constraint in the tools used to build the software, that the lazy programmer doesn't know or care how to work around. It wouldn't make any sense to include it deliberately on the requirements.

    --
    Singularity: a belief in the "God" idea with the "demiurge" relation inverted.
  59. Not easy to fix - cheaper solution by FeelGood314 · · Score: 1

    Born before 1907? Seriously the bank should give every customer they have that reaches 110 $100,000 in cash and be done with it. Fixing the system will cost 50 times that.

    There are likely many places in the system that only have 2 digits for the year of birth. There is likely no source code for all of them and even if there is the documentation and coding styles used make fixing this almost impossible. You can't just lengthen the field as the code expect things to be at specific offsets. (there is likely pointer arithmetic from hell going on) Instead the systems likely use a rolling epoc to handle this. Currently it is set to 07 - if year of birth is greater than 07 you are assumed to have been born between 1908 and 1999. If it is less than or equal to 7 you were born between 2000 and 2007.

    1. Re:Not easy to fix - cheaper solution by SuiteSisterMary · · Score: 1

      I doubt very highly it's a 'two digit year' storage issue.

      More likely, it's perfectly correct and reasonable boundary checking; an age should never be less than 0, and never more than, what? How many people are actually older than 110? She is an extreme outlier, and proof positive that the boundary checking is working.

      --
      Vintage computer games and RPG books available. Email me if you're interested.
    2. Re:Not easy to fix - cheaper solution by mysidia · · Score: 1

      So, what happens when someone wakes up from a 130 year cryo sleep, and their age is now 160?

    3. Re:Not easy to fix - cheaper solution by Anonymous Coward · · Score: 0

      My country actually does issue a personal number based on your birth date. As the year is given with 2 digits only, you have to look at the month. If the month is 1 to 12 then it is 1900 to 1999, if the month is 21 to 32 then the year is 1800 to 1899, if the month is 41 to 52 then the year is 2000 to 2099

    4. Re:Not easy to fix - cheaper solution by Anonymous Coward · · Score: 0

      So, what happens when someone wakes up from a 130 year cryo sleep, and their age is now 160?

      If they want to reach 161, they get to work killing the alien queen living on the Sulaco.

    5. Re:Not easy to fix - cheaper solution by Anonymous Coward · · Score: 0

      Step 1: Cryogenic Freezing
      Step 2: ... ohh wai :/

  60. Who cares? by Anonymous Coward · · Score: 0

    She'll probably drop dead at any moment.

  61. Re:So what's the issue? by Anonymous Coward · · Score: 0

    I'd say the odds were much higher than that. It's not clear from the summary if this is a welfare program only for the poor, or something all for which all elderly are eligible. If the latter case then the odds were close to 100%. If the former case then the odds are whatever the proportion of elderly on welfare versus not. Either way, that's far more likely than 2:127 million.

  62. the COMPUTER is your FRIEND, citizen grandma! by Thud457 · · Score: 1

    Got a letter through the post that says I don't exist.
    Apparently the new computer thinks I won't be missed.

    --

    the preceding comment is my own and in no way reflects the opinion of the Joint Chiefs of Staff

  63. Re:So what's the issue? by Anonymous Coward · · Score: 0

    Except that the summary itself said that it accepts up to 110. But maybe no reader was smart enough or had the reading comprehension enough to see that.

  64. From the fiction section of the library by sjbe · · Score: 1, Troll

    What DO they teach them in Sunday School these days...

    Fiction. But nobody really reads or even really believes the bible anymore anyway. People just pick and choose the bits of it to follow that suit their particular sensibilities and pretend that only those bits are the "word of god". In fact most of them don't even read the bits they follow. Someone else reads those bits and that someone else tells them what they want them to mean. Must be nice to have a world view unencumbered by evidence or logic or responsibility...

    1. Re:From the fiction section of the library by orgelspieler · · Score: 1
      My favorite quote from the bible for those who pick and choose:

      Judas threw the money into the temple and left. Then he went away and hanged himself.... Jesus said, "Go thou, and do likewise."

  65. Re: So what's the issue? by Anonymous Coward · · Score: 0

    I wonder if they will charge her a $63 administration fee.

  66. Re:SHAME on her by Anonymous Coward · · Score: 0

    On a side note, that's part of the problem with the American "social security" accounts. The so called retirement
    is age 65, which SHOULD be extended to the average lifespan age of 75.

    Why? Do you think that people are generally capable of working at that age, or is there some dropoff? It might be cheaper to remove them from the employment rolls and hand them money, even absent any collections.

    Social security benefits were intended to last a few years at most after retirement. The average lifespan when it started was 65, so people didn't live but a few years past that. Heck, both of my parents are in moderately good health in their mid 80's. Granted, they saved for retirement long before they retired, but, many do not, and social security will NOT cover people for 10-20
    or more years, especially when you consider the government stole the money from peoples social security accounts
    decades ago.

    Oh wait, you thought the money was stolen from their accounts. What, are you one of those people who think the money in your bank is sitting there like some vault at Gringotts? That isn't how it works, and as much as you may want to think the money was stolen, Social Security is still paying out.

    Could use some reform, but likely not the suggestions you're inclined to make.

  67. Accidental rules by sjbe · · Score: 5, Insightful

    Programmers don't generally throw in arbitrary rules like that...

    Like hell they don't. They do it all the time unintentionally and sometimes very much intentionally. The entire Y2K problem was from tens of thousands of programmers arbitrarily taking short cuts in their programming creating arbitrary rules in regards to what seemed like corner cases at the time. Happens all the time, especially when the programmers don't fully understand the problem they are being asked to solve. The software we use to run our company is positively riddled with arbitrary restrictions which interfere with the efficient conduct of our business. The guys who programmed it are smart enough and decent folks but they don't actually use the software themselves so they don't really understand the limitations they are creating along the way.

    I'd say it's more likely they were given a specific business rule that prevented people over 100 from claiming pension cheques to reduce a fraud vector.

    Highly unlikely. Laziness and/or incompetence are far more likely origins of this problem.

    1. Re:Accidental rules by Anonymous Coward · · Score: 0

      It wasn't completely arbitrary. It came from paper forms where people will enter MM/DD/YY. Then they made these forms electronic, but kept it as MM/DD/YY. I booted up an old copy of Window 3.0 to see what happens, it thinks the current date is 04/27/;7. Not 17, it's ;7. That's because in ascii the characters go 0,1,2,3,4,5,6,7,8,9, then : then ; then , etc. It very clear they think YY = 117 and just display it as '0' + (YY/10) and '0' + (YY % 10). So ";" is the 11th decade. Which makes sense, we think 60s, 70s, 80s, 90s, :0s and ;0s. So I don't really see what the problem is.

  68. Maria is not in the list of verified oldest people by Anonymous Coward · · Score: 0

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

  69. Agile by Anonymous Coward · · Score: 0

    I can imagine the Agile product team talking about putting this in the ice box because it impacts such a small number of people and it'll solve itself soon enough.

    Minimum viable product.... meh.

  70. Re: So what's the issue? by Anonymous Coward · · Score: 0

    This obviously isn't some programmer problem.
    If it was, the limit would be something sensible like 127, or 63 or something like that.

  71. Re:So what's the issue? by Anonymous Coward · · Score: 0

    Very common. Even simple sites like a comic strip: garfield.com ask for an age and will not accept anything older than 1917. This particular example even lists years that cannot be selected..

  72. Re:So what's the issue? by Aighearach · · Score: 1

    If they were smarter they'd be making COBOL jokes, where stopping at 110 even becomes the right sort of round number if you describe the data field in an awful enough way... maybe I'll check for that on slashdot

  73. Re: So what's the issue? by whitlocktj · · Score: 1

    This

  74. Damns slow earths rotation by Anonymous Coward · · Score: 0

    An ice skate spinning slow the spin if he/she/etc. moves arms away from the center of mass. Angular momentum or something. I first heard about this 20 years ago. In order to aim communication antennas to distant space probes, it is good to know exactly where the earth is and any perturbations of the where the antenna is. A tiny change of the speed of the earths spin could make your aim off. A couple of scientists who's names I forgot, one at JPL and one at MIT?, noticed the earth's spin had been slowing over the past 100 year or something. They found out that humans raising mostly water in damns to higher elevations accounted for the slowing. A very tiny amount, with no other rerecussions. So far.

  75. See Procrustean bed by Anonymous Coward · · Score: 0

    http://www.dictionary.com/browse/procrustean-bed

    The ancient Greeks were aware of the problem. History repeats itself

  76. Re:So what's the issue? by Anonymous Coward · · Score: 0

    1/1/1900 would trigger the same problem.

  77. Re:SHAME on her by toadlife · · Score: 1

    It's not so simple...

    "The change in overall life expectancy mostly reflects lower infant mortality, not longer lifespans for adults.

    In 1939, infant mortality rates were extremely high, but once age 65 the average American could expect to live another 13.4 years, or to age 78. Today, better health care and fewer infant deaths means overall life expectancy has gone up. But life expectancy after age 65 - a more accurate way to predict how long people are really living in retirement - hasn't changed nearly as much.

    As of 2008, the average American who makes it to age 65 could expect to live 19.6 years. That's just 6 years longer than in 1939, and less than 2 years longer than in 1979 - and even that number overgeneralizes, because it ignores other factors that affect life expectancy, including gender, race, and income. A Social Security Administration study found income inequality plays a big role in life expectancy. For workers in the top half of the earnings distribution, average life expectancy is 86.5, but for those in the bottom half it's just 81 - a gap of more than 5 years that continues to grow.

    http://www.eoionline.org/blog/...

    --
    I don't always use unix-like operating systems; but when I do, I prefer FreeBSD.
  78. Re: So what's the issue? by SuiteSisterMary · · Score: 2

    Why would someone who is not a programmer set up such an arbitrary limit?

    Probably because it's not arbitrary; most people don't live to be 110, and everybody knows you're supposed to perform sanity checking. According to a quick google search (the height of scholarly rigor,) there's maybe 300 people in the world who are older than 110 years. The most wild estimate is 600.

    On the other hand, fraud is a real thing, not to mention straight up human error; somebody dies, they don't get taken out of the system, so the money keeps going out.

    --
    Vintage computer games and RPG books available. Email me if you're interested.
  79. Re:So what's the issue? by Aighearach · · Score: 1

    ...this is a freaking Financial application!!!

    No change can be made in an hour and actually deployed.

    Reminds me of a funny story. I was hanging out in a Ruby programming channel on IRC, and somebody comes in and lurks for 5 minutes and then sends me a PM asking if I'm available for contracting. I turns out he wanted to pay $25 for less than 1 hour of work writing a Perl script for use by a South African bank interchange. Why he was in a Ruby channel for that I don't know. The script just glued two network protocols together with some header boilerplate.

    It was so hilarious that I said yes. Amazingly, he paid right away. I was sure it was a scam, but it wasn't. It was almost disappointing that it wasn't a scam; I'd have probably said no. I was hoping for an even funnier story out of my 30 minutes of programming! Never got any bug reports, feature requests, or anything. I assume when he needed something else, he just grabbed the next casual off IRC.

  80. Re:So what's the issue? by SuiteSisterMary · · Score: 1

    What if you think 'Out of 7.5 billion humans, there are, at most, 600 people over the age of 110. How many of the 0.00000799927238618 percent of humans who fit this category likely happen to live in our country? How much bigger is the number of incorrect or fraudulent records where the age is above, say, 110?'

    --
    Vintage computer games and RPG books available. Email me if you're interested.
  81. Sanity checks by sjbe · · Score: 1

    Probably because it's not arbitrary; most people don't live to be 110, and everybody knows you're supposed to perform sanity checking. According to a quick google search (the height of scholarly rigor,) there's maybe 300 people in the world who are older than 110 years. The most wild estimate is 600.

    Ok so then why was that sanity check not performed? It seems obvious that the system should be able to handle ages that people have actually reached even if only on occasion. 130 would have covered it at least for the time being and the programmers could have figured that out with about 60 seconds research on google.

    On the other hand, fraud is a real thing, not to mention straight up human error; somebody dies, they don't get taken out of the system, so the money keeps going out.

    Not a valid excuse to deny someone service who has done nothing wrong. Plenty of other and better ways to deal with the fraud problem.

    1. Re:Sanity checks by SuiteSisterMary · · Score: 1

      A quick google search shows that there are, by the most wild estimate, 600 people on the planet, at most, who are over the age of 110. More like 150 to 300.

      Raising the age to 130 just means there's an extra 20 years of potential pension fraud or incorrect payments.

      --
      Vintage computer games and RPG books available. Email me if you're interested.
    2. Re:Sanity checks by chihowa · · Score: 1

      Yes, it's rare. But it does happen and the system should be able to handle it. Do you regularly use arbitrary hard coded values that cause your programs to fail in the event of rare, but not impossible or unforeseen inputs?

      --
      If you want a vision of the future, imagine a youtube comments section scrolling - forever.
    3. Re:Sanity checks by SuiteSisterMary · · Score: 1

      Depends on the business case for one or the other. In this case, the bank may well have decided 'the less than, literally, 600-in-7.5-billion chance of having somebody exceed this age range is less important to us than stopping incorrect payments going out to people with ages that are far FAR beyond 'wildly improbable.''

      In other cases, it would be far better to have multiple incorrect accounts than to miss one valid but wildly outlier account.

      --
      Vintage computer games and RPG books available. Email me if you're interested.
  82. Re:SHAME on her by Anonymous Coward · · Score: 0

    The average lifespan when it started was 65, so people didn't live but a few years past that.

    That thing doesn't work like that. The average lifespan was lower in the past because the infant mortality was MUCH higher than it's now, not because old people decided to call it quits after they reached 65 or so.

    All my great-grandparents lived in their 90s, and they lived hard lives through wars and famines in an under-developed country. For instance, only 4 of my great-grandmother's 10 children survived past 5.

    If you read some sob-story about medieval times and how the average lifespan was 35, do not assume there were no very old people then, or that they were some kind or rarity.

  83. Re:So what's the issue? by Anonymous Coward · · Score: 0

    If you want to use the Old Testament as reference, you get for life spans after the Flood:

    Genesis 6:3 (KJV):
            And the Lord said, My spirit shall not always strive with man, for that he also is flesh: yet his days shall be an hundred and twenty years.

    So 7 bits should be definitely enough. If the Lord is capricious, 8 bits. Methuselah is dead. Medical advances are not going to best the Lord's will, and if they do, they are the work of the Worldly Prince and burn the witch! After which she does not need a pension anyway.

  84. Re:So what's the issue? by Anonymous Coward · · Score: 0

    Somewhat doubt that a programmer wrote the spec, fucker just implemented it :p

  85. No excuse by sjbe · · Score: 1

    A quick google search shows that there are, by the most wild estimate, 600 people on the planet, at most, who are over the age of 110. More like 150 to 300.

    Yes we know that people who are very old are rare. Rare does not equal nonexistent. At least in the US denying someone service on account of age is a civil rights violation. The fact that it is a rare problem does not excuse them from failing to deal with the problem properly.

    Raising the age to 130 just means there's an extra 20 years of potential pension fraud or incorrect payments.

    That is not and should never be the problem of the customer. The bank can suck it up and deal with the problem in other ways. Go visit the customer if they are that worried about it. Old people often need help anyway.

  86. Re: So what's the issue? by Anonymous Coward · · Score: 0

    How did you handle the octuplet problem?

  87. Guardian? by JimSadler · · Score: 1

    Surely there is some down and dirty fast solution to get her money into her hands. A court appointed guardian or social worker could receive, convert to cash and put her money in hand. And the bank should easily be able to upgrade that software in a matter of hours, not days.

  88. Re:So what's the issue? by Anonymous Coward · · Score: 0

    > Yes, why set a limit at 110? Make it 200, we have no recent documented cases of people being that old...

    I would bet money that this is related to a Y2K hack.

  89. Re: So what's the issue? by Anonymous Coward · · Score: 0

    The person writing the spec/requirements may have identified every data item, its type, and valid range in a table. If so 'age', like all other data items, would naturally have a 'min' and a 'max' value to fill in. While 110 was not a good choice, setting a rational upper limit likely makes sense to catch errors - such as inadvertently typing a character twice and ending up with the age for a 66 year old being entered as 666 or, if birthdates are used (more likely), entering 951 as the year in the birthdate instead of 1951 and ending up with someone 1066 years old instead of 66 years old.

  90. Re:So what's the issue? by Anonymous Coward · · Score: 0

    CORRECT!
        Except that her interactions are with customer service & other public facing staff. These are not decision makers. And in such a big-business-machine, that kind of staff are very distant from the technical solution & the administrative part where someone actually has to make a decision.

    These kind of stories always make the news because internet travels faster than the solution. So we gasp with injustice!

    Nevertheless, it was solved, and a programmer did it... after receiving orders from admin staff, etc. Not the customer service clerk at the bank teller.

  91. Other side by bigdavex · · Score: 1

    I wonder how many times the code correctly shut off payments to people who were really dead. 110 is the wrong upper limit, but I don't know that the idea of an upper limit is bad. If the limit were 140, would we feel sufficiently confident to disallow payment?

    --
    -Dave
  92. Re:So what's the issue? by Anonymous Coward · · Score: 0

    (GP here) I learned the lesson long ago. We use branches to permit patches being made with only the necessary changes. So yes, we can be sure there is no other side effect with far greater certainty than full systems testing can provide.

    You can probably finds reasons why an hour is too short, but it's going to be a lot closer to the right amount of time to fix it than the three months it actually took is.

  93. Re:So what's the issue? by Tranzistors · · Score: 1

    And yet it did happen. Since such computer code lives decades and life expectancy is increasing overall, it's almost bound to happen.

  94. Re:So what's the issue? by Tranzistors · · Score: 1

    I agree about manual update of the database, but in this case it seems that software patch was needed. It did surprise me a bit that bank didn't have admin to do it. One other solution for situations where input is improbable yet possible possible: application can ask the operator to check or re-enter the dubious input.

  95. so no imput checks? by Anonymous Coward · · Score: 0

    Should there be input checks?
    What is a reasonable max age?
    I see data with future dates and Roman Imperium dates when there are no bounds checks.
    What problems would you rather have?

  96. Re: So what's the issue? by Anonymous Coward · · Score: 0

    Why would someone who is not a programmer set up such an arbitrary limit?

    The limit was > 1900 for a birthdate. 2017-116 = 1901

  97. I'm curious, how old are you? by SpiceWare · · Score: 1

    The entire Y2K problem was from tens of thousands of programmers arbitrarily taking short cuts in their programming

    I suspect you're relatively young as there were valid reasons to only store 2 digits for the year.

    The problem started because on both mainframe computers and later personal computers, storage was expensive, from as low as $10 per kilobyte, to in many cases as much as or even more than US$100 per kilobyte. It was therefore very important for programmers to reduce usage. Since programs could simply prefix "19" to the year of a date, most programs internally used, or stored on disc or tape, data files where the date format was six digits, in the form MMDDYY, MM as two digits for the month, DD as two digits for the day, and YY as two digits for the year. As space on disc and tape was also expensive, this also saved money by reducing the size of stored data files and data bases.

    And early then that you had to deal with punchcards, which could only store 80 characters per card. Punch cards were still in use when I went to college at Del Mar in Corpus Christi in 1984. While my incoming class was the first to no longer use them as part of our curriculum, the older students still used them. Everybody also used them during the registration process - pick up the card with your name on it at the entrance, walk around to the tables set up for each department and get a punch card for the class you wanted (if they were out of cards the class was full), then turn in the stack of cards to complete your registration.

    1. Re:I'm curious, how old are you? by IMightB · · Score: 1

      Yeah, the parent is young and the reasoning on this is very naive... at the time there were many many reason to store dates that way. also computing was so new that no one anticipated it being an issue... until it was....

    2. Re:I'm curious, how old are you? by operagost · · Score: 1

      Many in computing didn't anticipate their programs being in use decades in the future.

      --

      Gamingmuseum.com: Give your 3D accelerator a rest.
    3. Re:I'm curious, how old are you? by david_thornley · · Score: 1

      I think it would have more of an impact on punch cards. I've dealt with systems that use punch cards or the equivalent for data storage. They're limited to 80 characters (fewer if the cards are sequenced), and going from one card per record to two is a major pain. Nobody would waste two columns on a punch card for data that would remain constant.

      Commercial computer use dates back to the 1950s, and not many places had computers until later. Application software was usually custom written for each organization. Software was typically thought of as a short-term thing. Even in the 1980s I went through a cost-benefit analysis training course in which the software was considered not to provide benefit after five years. This was short-sighted thinking then, but there wasn't much expectation that the stuff you were writing would be used in some distant future date like 2000.

      My first exposure was in 1981. A friend of mine was maintaining the software for child support payments. After the first few months of 1981, the software would figure the baby would be born in 82. Add 18 to get 00, and it's 81, so obviously no more child support was due. Presumably banks with 30-year mortgages faced this earlier, but I never worked for a financial institution until 2005.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
  98. Re:So what's the issue? by operagost · · Score: 1

    So you're telling me that they should have owned the issue that they caused, and worked around it instead of putting the burden and blame on the customer? Why, that's like an airline unexpectedly needing 4 seats to get its employees to another airport on time, and thus putting them on a turboprop or in a company car instead of calling the cops to beat up the passenger who won't give up his seat!

    --

    Gamingmuseum.com: Give your 3D accelerator a rest.
  99. Re:So what's the issue? by santiago · · Score: 1

    Additionally, if your system deals with dates or human names, whatever limitations you think are reasonable are, in fact, wrong.

  100. Obligatory Futurama by Anonymous Coward · · Score: 0

    Farnsworth: Hello, Mavis. Surprised to see me back again so soon?
    Wanda: Mavis is dead.
    Farnsworth: I expect you'll want to see my Angry, Crotchety Grandpa Discount Card.
    Wanda: Sir, this card is expired.
    Farnsworth: But it's good for a lifetime.
    Wanda: Well, yours expired.

  101. Re: So what's the issue? by Streetlight · · Score: 1

    A few years ago I remember learning that in the US there were about 20,000 people who were 100 years old or older who were very healthy and living on their own. Just recently the estimate had grown, IIRC, to 50 to 60 thousand. I also read that 30% of babies born today will live to be 100 years old. I'm guessing there are a surprising number of folks that are 110 years old in the US. Whether they are healthy living on their own or not is another thing.

    Remember George Burns's statement, "If you live to be one hundred, you've got it made. Very few people die past that age."

    --
    In a time of universal deceit, telling the truth is a revolutionary act. George Orwell
  102. Re:So what's the issue? by david_thornley · · Score: 1

    I'd guess that they'd never had a customer over 110 before, and that nobody bothered to write that into any test (unless it was to ensure rejection of anyone over 110).

    --
    "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
  103. Re:So what's the issue? by david_thornley · · Score: 1

    Fewer than one in ten million people is over 110. 1% in a country like Mexico is a lot of people. Less than one ten-millionth isn't.

    --
    "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
  104. Re: So what's the issue? by Kabukiwookie · · Score: 1

    You obviously haven't met some of the business analysts I've had to work with in the past...

    --
    The mountains of madness have many little plateaus of sanity - Terry Pratchett.
  105. bail out limit by deodiaus2 · · Score: 1

    Someone should set a bail out limit of $1M per bank. I'm sure that they'd find a way around that.

  106. Re:So what's the issue? by n329619 · · Score: 1

    Meh, that would have been too easy and competent.

  107. Re:So what's the issue? by n329619 · · Score: 1

    It is worth escalate all the way to legal? That's assuming that is your only choice. In reality, it's not that black and white. They had alternatives, they didn't use it and now they get poor publicity.

    They could just process the documents and sent back to the lady that due to technical difficulties, there will be a delay in the process of the new card instead of straightly declining it. Not to mention in legal case, declining service without stating (the transparency rules) could bring out a lawsuit and may also involve age discrimination (different countries have different laws for this).

    Just like the case with United forcefully removing passengers. They had other choices, they didn't use it.

  108. Old enough by sjbe · · Score: 1

    I suspect you're relatively young as there were valid reasons to only store 2 digits for the year.

    I'm old enough to have programmed with punch cards and I predate the PC by a lot. Old enough for you? Very early on there were sensible reasons to only store two digits for a year but programmers continued the practice well beyond the point when it was no longer necessary. If I'm being incredibly generous there really was no excuse for the practice after the mid 1980s at the latest. But vast numbers of programs were written after that point which used two digit years. Most of the code that was fixed in Y2K remediation was not 20+ year old code and it certainly wasn't on punch cards.

    1. Re:Old enough by SpiceWare · · Score: 1

      To be fair you did say "The entire Y2K problem", which suggested you didn't know there were valid reasons.

      In the 80s and early 90s I worked on existing software that used 2 digit years. While we were aware of the issue we weren't going to address it until we had to because it wasn't possible to update just one program at a time, it was all or nothing - miss just one program you'd end up with corrupt data. As it turned out, the company that built the computers we used, a Wang VS, ended up going under and we replaced it with a new system and software solution that was already Y2K compliant. As such, we'd have wasted our time if we'd updated the old software, and that's not good business practice.

  109. Actual facts about Y2K by sjbe · · Score: 1

    Yeah, the parent is young and the reasoning on this is very naive... at the time there were many many reason to store dates that way. also computing was so new that no one anticipated it being an issue... until it was....

    The parent (me) is neither young nor naive. I wrote my first code before most of the people who will read this were born. Most of the code that was fixed in Y2K remediation was code written well after the point when using 2 digit years was necessary or appropriate. The Y2K problem was known about for decades before the year 2000. I remember people talking about it as early as the late 80s and many were aware of it long before that. It had nothing to do with "computing being new" and everything to do with lazy and/or incompetent programming, especially for anything written after approximately 1985. By then computers had plenty of memory and hard drive space to no longer need abbreviated dates to save space and it certainly didn't save money.

  110. Re:So what's the issue? by Agripa · · Score: 1

    Sending her away rather than just fudging the birth date was a pretty foolish thing to do.

    Why was it foolish? Were there some consequences to the bank or anybody else?