• merc@sh.itjust.works
    link
    fedilink
    arrow-up
    1
    ·
    24 minutes ago

    https://dev.to/mdchaney/cobol-dates-may-20-1875-and-disinformation-5ggh

    1. There is no “date” data type in COBOL. Dates are stored however the programmer wants, but usually numeric character strings
    2. There’s no “default” date, even if there were such a data type
    3. Even if there were a default, 1875 would be a bizarre choice

    That (obviously) doesn’t mean Elon Musk is right. It just means that this explanation of it being some magical COBOL epoch value is wrong. What’s more likely is that the Social Security database is very old and has a lot of iffy data in it.

    My guess is that it contains everybody who has ever had a social security record, including all the duplicates, all the typos, and everything else. At some point there were probably hundreds of thousands of records that were transcribed from paper into a computer, and it was considered safer to keep the iffy data and make a plan to deal with it later, vs. remove someone from the database who should legitimately be there.

    I would also imagine that the systems that take the records out of the DB probably have filters in place that remove the (known) bad records before they’re used.

    • shawn1122@lemm.ee
      link
      fedilink
      English
      arrow-up
      3
      ·
      6 hours ago

      There are many people who were born in developing nations during times of war who do not know their exact age. They usually do have an idea of a range though.

  • Kalysta@lemm.ee
    link
    fedilink
    arrow-up
    34
    arrow-down
    2
    ·
    9 hours ago

    I keep hearing that gen Z is actually pretty shit with understanding things outside GUIs.

    And now I’m watching it actively destroy my country.

    • Natanox@discuss.tchncs.de
      link
      fedilink
      English
      arrow-up
      37
      ·
      9 hours ago

      Less of a generational problem, more of an educational one. Selfish, badly educated grifters that got pushed into high offices can be of any age. Musk also didn’t recognize SQL when he looked at it, which is arguably even more funny.

  • ChristmasIslandZone@lemmy.world
    link
    fedilink
    arrow-up
    1
    ·
    5 hours ago

    Conspiracy theory: They know this, but being able to claim to their followers, with official records to show for it, who know NOTHING about programming, is an easy, effective win for them. They can claim fraud to their gullible audience and now have records they can point to and say “LOOK! THEY’RE GIVING DEAD PEOPLE SOCIAL SECURITY MONEY!”

    • LanguageIsCool@lemmy.world
      link
      fedilink
      arrow-up
      1
      ·
      47 minutes ago

      This is why you come up with a hypothesis before running an experiment and collecting data. Otherwise you can pick a pattern in the data to propose just the right hypothesis.

  • LeFantome@programming.dev
    link
    fedilink
    arrow-up
    82
    arrow-down
    1
    ·
    13 hours ago

    The actual payment system stops payments automatically at age 115 and requires manual verification to restart. The database that is being reported is not even a report of who is getting paid.

    This is just dramatic, public evidence of the arrogance and incompetence of DOGE from down to his racist younglings.

    For a while, I thought they would at least be good at technology. This episode shows that even that is not true.

    How he chose this elite group of chuckleheads is an eyebrow raiser. Other than racism, they seem to have no credentials at all. I mean, on brand for this administration I guess.

    • Microw@lemm.ee
      link
      fedilink
      arrow-up
      6
      arrow-down
      13
      ·
      10 hours ago

      115 sounds too late imo, payments should need manual verification way earlier

      • splinter@lemm.ee
        link
        fedilink
        English
        arrow-up
        7
        ·
        6 hours ago

        There are other verification procedures in place as well. This is something like a failsafe.

        • Microw@lemm.ee
          link
          fedilink
          arrow-up
          5
          ·
          7 hours ago

          Absolutely, DOGE is obviously committing crimes doing what they are doing

      • AA5B@lemmy.world
        link
        fedilink
        arrow-up
        3
        ·
        7 hours ago

        They’re going to need lots more people going around talking to old people because you don’t want to rely on public records

      • shawn1122@lemm.ee
        link
        fedilink
        English
        arrow-up
        1
        ·
        6 hours ago

        Too bad he let go of all the employees that would be responsible for that manual verification.

  • gravitas_deficiency@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    53
    ·
    14 hours ago

    Jesus fucking christ the interns who have neither seen nor heard of COBOL have also not encountered the concept of a sentinel value used as a fallback/default.

      • AA5B@lemmy.world
        link
        fedilink
        arrow-up
        2
        ·
        7 hours ago

        Date time types have long since been based on a 64 bit number , at least in Linux. However the old 32 bit date time types are still there so older programs won’t break, and probably on emdpbedded systems.p. So it comes down to the apps: how many old apps or old embedded systems will still be around?

        • PieMePlenty@lemmy.world
          link
          fedilink
          arrow-up
          2
          ·
          6 hours ago

          How many cobol systems are still around in 2025. If it works, don’t fix it. And I have a feeling a lot of things will need fixing in 2038 lol

          • AA5B@lemmy.world
            link
            fedilink
            arrow-up
            1
            ·
            5 hours ago

            It will be interesting to see that play out. The thing is the 238 prboem spas long been solved just like the y2k problem was.

            The Linux datetime types were moved to 64 bit values long ago, so this problem is thousands of years out. The old 32 bit values was a limitation of older systems not handling larger values, but almost all hardware today is either 64 bit or has hardware support for 64 bit data. You mainly have some older embedded systems

            But the legacy 32 bit APIs are still there so it doesn’t break backward compatibility. You have huge ecosystems of software that still use these APIs and may still handle datelines as 32bit. There’s no way to find them all, much less make sure they’ve been updated.

            Just like y2k, 2038 will have been a long solved issue, that may still exist due to ancient or poorly written applications. All you can do is a huge effort of trying everything to find any remaining issues before they cause problems. I’m optimistic because y2k was a problem cased by every application handling their own dates, whereas for 2038 its cause was in an underlying data type that has long since been fixed. Surely all applications will have been rebuilt to the new API in that 20 year or so period, right? Right?

    • sasquatch7704@lemmy.world
      link
      fedilink
      arrow-up
      11
      ·
      edit-2
      11 hours ago

      What do you expect? most of the guys in “DOGE” weren’t even alive on 9/11 I’m a bit surprised that they still have something in COBOL, maintenance probably costs o fortune, good luck finding young COBOL devs

      • JackbyDev@programming.dev
        link
        fedilink
        English
        arrow-up
        6
        ·
        9 hours ago

        I’m ready to learn COBOL. I will take up the torch. If you know good places to start, let me know. Last time I looked into it it seems way more involved than running stuff like Python, Java, and C.

        • sasquatch7704@lemmy.world
          link
          fedilink
          arrow-up
          4
          ·
          8 hours ago

          I see, you want that that Lamorghini, well if you really want udemy is always a good start. Personally the difficult part for me when learning a new programing language is not resources, it’s the motivation to keep do it and I usually need a real project to work on. (10 years + dev)

          Usually you find on github “awesome-XYZ” repos (ex: awesome python, awesome c, awesome go), but for cobol, most of the projects are dead

          https://github.com/loveOSS/awesome-cobol?tab=readme-ov-file#email

      • andros_rex@lemmy.world
        link
        fedilink
        arrow-up
        2
        ·
        7 hours ago

        Is being a COBOL dev something that can get you jobs?

        I’m pretty good at FORTRAN and would love that kind of “you have invaluable skills so we can’t get rid of you for being queer” gig.

  • jsomae@lemmy.ml
    link
    fedilink
    arrow-up
    128
    arrow-down
    8
    ·
    22 hours ago

    Teenage programmers can understand legacy code. These ones didn’t. Don’t dis teen coders.

    • geogeogeo@lemmy.world
      link
      fedilink
      arrow-up
      4
      ·
      7 hours ago

      The issue isn’t inherently age it’s just time and experience, understanding different coding patterns and paradigms that have changed over the years etc. Even someone who’s been coding every day from ages 14-20 can’t have the same knowledge and experience as someone who’s been working with software since the 90s or earlier. Granted, there will always be brilliant people who even when lacking experience are more talented and skillful than maybe the majority, but that is uncommon. I’m only in my late 20s. And I remember in college there was a huge diversity of skills, from “are you sure this career path is really a good idea for you?” To “holy hell how did you do all of that in one hackathon?” But even for those really smart folks, they aren’t just going to inherently understand all the different ways to organize and structure code, all the conventions that exist, and more importantly why those methods and structures exist and the history that informed them. I’m not saying you need on the ground experience (although, I’d say many people do, as many people can’t really internalize things without direct exposure), but there’s just not enough time, literally, in the handful of years that is childhood and teenage years to absorb all that history.

      Anyway, what I’m getting at is that, yes, I agree that the problem isn’t inherently about being teenagers but I do think it’s a valid criticism that it’s kind of ridiculous to have such young folks leading this kind of project given it’s literally impossible for them to have the same amount of experience as software vets. It’s also valid that young people are capable of seeing things in very new ways, since they aren’t weighed down by al that history. But that’s why diversity is useful especially for such a monumental project as this.

    • Aceticon@lemmy.dbzer0.com
      link
      fedilink
      English
      arrow-up
      1
      ·
      8 hours ago

      I think it makes sense that people who don’t have actual experience in making projects in a specific language won’t be aware of details such as the value 0 being the default in a certain kind of field in a certain language which makes it a good flag for “data unknown”.

      This is not a problem specific of teenage programmers - it is natural for just about everybody to not really know the ins and outs of a language and best practices when programming with it, when they just learned it and haven’t actually been using it in projects for a year or two at least.

      What’s specific to teenagers (and young coders in general) is that:

      • They’re very unlikely to have programmed with COBOL for a year or two, mainly because people when they start tend to gravitate towards “cool” stuff, which COBOL hasn’t been for 4 decades.
      • They haven’t been doing software engineering for long enough to have realized the stuff I just explained above - in their near-peak Dunning-Krugger expertise in the software engineering field, they really do think that learning to program in a given language is the same as having figured out how to properly use it.
      • spireghost@lemmy.zip
        link
        fedilink
        English
        arrow-up
        1
        ·
        47 minutes ago

        I think it makes sense that people who don’t have actual experience in making projects in a specific language won’t be aware of details such as the value 0 being the default in a certain kind of field in a certain language which makes it a good flag for “data unknown”.

        The whole “COBOL’s default date is 1875” thing is just a lie. COBOL doesn’t even have a date type.

        So the problem doesn’t have anything to do with COBOL, someone just made it up

      • jsomae@lemmy.ml
        link
        fedilink
        arrow-up
        1
        ·
        1 hour ago

        my brother taught me to code when i was 6, so at 19 i had 13 years of experience already. At 6 i was mostly doing simple stuff like qbasic, vb6, but still it adds up. I’m not saying I’m a great coder, not by a long shot, just that I was experienced as a teenager. I assume a lot of these teenagers are much better than i was.

      • Malfeasant@lemm.ee
        link
        fedilink
        arrow-up
        1
        ·
        6 hours ago

        I’ve been surprised multiple times by coworkers who don’t know the significance of midnight January 1st 1970… We support an embedded Linux device, among other things…

    • spooky2092@lemmy.blahaj.zone
      link
      fedilink
      English
      arrow-up
      20
      arrow-down
      1
      ·
      edit-2
      16 hours ago

      How many teens you think can actually read and understand legacy languages like FORTRAN and COBOL? Let alone a complex codebase written in them?

      I studied COBOL a bit in college and it’s not exactly hard to read short snippets if you understand other languages, but good luck wrapping your head around anything remotely complex and actually understand what it is doing without having someone who understands the language. Hell, 15-20 years on and multiple languages later, my eyes still cross trying to read and grok COBOL. The people supporting those old code bases get paid well for a reason …

      • jsomae@lemmy.ml
        link
        fedilink
        arrow-up
        1
        ·
        edit-2
        1 hour ago

        I’m familiar with a dozen or so teenage romhackers. Assembly surely harder to get the big picture of than cobol, but they’re making incredible changes to 30-yo video games.

      • tempest@lemmy.ca
        link
        fedilink
        arrow-up
        17
        ·
        14 hours ago

        Learning to COBOL is not itself that hard.

        Understanding decades of “business” logic is.

        It isn’t WHAT it is doing, it’s WHY it is doing it that makes these systems labyrinthian.

        Also afaik they don’t get paid that well which is part of the problem.

    • JustEnoughDucks@feddit.nl
      link
      fedilink
      arrow-up
      54
      ·
      20 hours ago

      I don’t know how many teenage programmers you have interacted with recently, but they are generally just learning the basics, learning core concepts, experimenting, etc…

      There is a huge gap between making small, sometimes very cool and creative even, projects and understanding a giant legacy codebase in a language that is not taught anymore. I mean, even university grads often have trouble learning legacy code, much less in COBOL.

      You wouldn’t say your average teenage cook could make a gourmet meal for a house of 50 people 😅 not a dis, just they haven’t had the time to get to greybeard level yet

      • jsomae@lemmy.ml
        link
        fedilink
        arrow-up
        1
        ·
        1 hour ago

        I would imagine these teens didn’t learn through the conventional educational channels.

      • xor@lemmy.dbzer0.com
        link
        fedilink
        English
        arrow-up
        19
        arrow-down
        1
        ·
        19 hours ago

        this is why, if they heavily modified the code in such a short time and they couldn’t understand it: it proves there was a previous data breach and they’re just installing the pre-written patches… the smoking gun that i can’t explain to anyone

      • Thorry84@feddit.nl
        link
        fedilink
        arrow-up
        12
        ·
        21 hours ago

        In my experience in the legacy world we have the isHighDate function which not only checks the constant, but also 5 other edge cases where the value isn’t HIGH_DATE but should be treated as if it is.

    • sp3ctr4l@lemmy.zip
      link
      fedilink
      English
      arrow-up
      7
      ·
      13 hours ago

      Not only do many important government systems ultimately rely on or make heavy use of COBOL…

      So do many older private companies.

      Like banks. Account balances, transactions.

      Its actually quite a serious problem that basically nobody who needs to take seriously actually does.

      Basically no one is taught COBOL anymore, but a huge amount of code that undergirds much of what we consider ‘modernity’ is written in COBOL, and all the older folks that actually know COBOL are retiring.

      We’re gonna hit a point where the COBOL parts of a system to be altered or maintained, and … there just isn’t anyone who actually knows how to do it.

      • AA5B@lemmy.world
        link
        fedilink
        arrow-up
        3
        ·
        6 hours ago

        Yeah, I’ve been tempted to try this route, but you’re really pigeonholing yourself. Even if there’s always wrk, I can’t imagine only working with cobol the rest of my career.

        Even worse, the places still using this are very heavy in process, with many undocumented dependencies among many undocumented workflows and business processes. Modernizing COBOL is not a coding problem: it’s a mammoth project management, coordination, and paperwork project that also has a little bit of coding. And its not like you can write clean code, you need to write essentially the same tangled mess of accumulated changes over decades because there’s no way of knowing everything that might break

        • sp3ctr4l@lemmy.zip
          link
          fedilink
          English
          arrow-up
          1
          ·
          edit-2
          5 hours ago

          I hereby nominate you to be the new head of the SSA.

          You get it, exactly.

          COBOL itself is a fairly minor part of the problem, the real problem is the retiring COBOL coders are the only ones with enough institutional knowledge, broad and specific, to keep the engine from grenading and fucking wheels from coming off the car when it hits a bad enough pothole.

          But management and C Suite are apparently homo superior, fully confident that none of that really matters, they’ll just keep throwing money at it until its fixed, and failing that, laying off everyone, who care in the end, they get a golden parachute when it all burns, everyone else can FOAD.

      • Fashim@lemmy.world
        link
        fedilink
        arrow-up
        5
        ·
        8 hours ago

        My understanding is that even if you learn COBOL, you’d struggle to understand legacy systems since they have their quirks from a bygone era

        • sp3ctr4l@lemmy.zip
          link
          fedilink
          English
          arrow-up
          3
          ·
          edit-2
          8 hours ago

          That is absolutely true as well… though this may be just a personal anecdote, it seems to me that the few COBOL coders I once knew would be amongst the most likely to keep a solid documentation of their own systems.

          The problem with that though, is that their bosses are almost always too stupid to ask them for such documentation before they leave/retire, or to bother to preserve it when the exiting COBOL programmer gives it to them, because coding is magic to them, and you’re either a good magician that can do the thing, or you’re not.

          Upper management / C Suite seems to never understand why the term software engineer was/is used.

    • iAvicenna@lemmy.world
      link
      fedilink
      arrow-up
      18
      ·
      20 hours ago

      He would dismiss COBOL and try to prove that he is a super cool geek with a deep knowledge of DnD and gaming culture. So more like:

      “COBOL? Such a language doesn’t even exist unless you think Kobolds are real! Hahaha”

  • cm0002@lemmy.world
    link
    fedilink
    arrow-up
    137
    arrow-down
    1
    ·
    1 day ago

    LMAO watch the US be saved by an inability of Muskys frat bois to understand COBOL

    • Zorsith@lemmy.blahaj.zone
      link
      fedilink
      English
      arrow-up
      80
      ·
      1 day ago

      I dont even program and i could’ve told them it was probably a placeholder or default value lol “durrrrrr lot of people in this database were born at the exact same time on the same day in the same year that predates electronic databases, gotta be fraud!!1!1!11”

    • Souroak@lemmy.sdf.org
      link
      fedilink
      arrow-up
      36
      ·
      23 hours ago

      2016-2020 was the age of too stupid to break everything. Now we’re staring down the barrel of “The files are in the computer?” But the entire US government is the computer.