• merc@sh.itjust.works
    link
    fedilink
    arrow-up
    0
    ·
    7 hours 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.

  • ChristmasIslandZone@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    11 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!”

    • shawn1122@lemm.ee
      link
      fedilink
      English
      arrow-up
      0
      ·
      13 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
    0
    ·
    16 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.

    • Decq@lemmy.world
      link
      fedilink
      arrow-up
      0
      ·
      2 hours ago

      I get this feeling too, but then again can we blame them? With all the locked down tech these days you really have to get out of your way to learn. And in most cases it works well enough. Whereas people growing up between lets say the 1970-2000s had to muck around with their tech to get it to work. Thus learning the intricacies while using it.

    • Natanox@discuss.tchncs.de
      link
      fedilink
      English
      arrow-up
      0
      ·
      16 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.

      • nwilz@lemmy.world
        link
        fedilink
        arrow-up
        0
        ·
        15 hours ago

        You guys love the appeal to authority fallacy. You don’t need to be an expert to know you shouldn’t still be using programs written in cobol.

        • m_f@discuss.online
          link
          fedilink
          English
          arrow-up
          0
          ·
          15 hours ago

          If relying on any knowledge is bad, then why should we believe what you say? That’s an appeal to authority

          • nwilz@lemmy.world
            link
            fedilink
            arrow-up
            0
            ·
            15 hours ago

            I didn’t say any knowledge. I’m saying if you reject what someone says only because they don’t have some arbitrary experience that you require. That’s an appeal to authority

            • m_f@discuss.online
              link
              fedilink
              English
              arrow-up
              0
              ·
              15 hours ago

              Why should anyone listen to what you have to say? Can you give a reason without an appeal to authority?

        • Malfeasant@lemm.ee
          link
          fedilink
          arrow-up
          0
          ·
          13 hours ago

          Lolololol tell that to literally every major bank, I’m sure they’ll get right on it just for you.

        • Kalysta@lemm.ee
          link
          fedilink
          arrow-up
          0
          ·
          16 hours ago

          Good luck getting musk to pay to update the programs that most of the government uses.

          These programs were written in COBOL, and they have had no reason to upgrade things that are still working.

            • AA5B@lemmy.world
              link
              fedilink
              arrow-up
              0
              ·
              edit-2
              13 hours ago

              This is the part everyone is missing. Real life is messy and sloppy and incomplete. Real life has bad data. All the time, especially when you’re trying to match 100 year old records. Not handling bad data s a problem of inexperience, regardless what technology you use. Announcing it as fraud, is just being an ignorant asshole.

              That being said, if Musk is willing to put out the billions of dollars it would cost to modernize, that would be great! But it still has to handle bad data. Maybe musk could add hundreds of millions to the budget to hire enough people to manually confirm all the data from before the records were digitized. Good luck with that

              • shawn1122@lemm.ee
                link
                fedilink
                English
                arrow-up
                0
                ·
                13 hours ago

                If you want actual proof of this, look at your medical records. And I say this as a healthcare worker. All kinds of nonsense ends up in the chart for a myriad of reasons.

              • nwilz@lemmy.world
                link
                fedilink
                arrow-up
                0
                ·
                15 hours ago

                You know most people support this. Trump has a positive approval rating. You guys are in the minority

            • doomcanoe@sh.itjust.works
              link
              fedilink
              English
              arrow-up
              0
              ·
              16 hours ago

              Let me get your point straight, because COBOL is an old language, you believe calling out misinformation that shows the people tasked with “finding corruption and financial mismanagement” are completely unqualified for the job isn’t a “valid defense”?

              A valid defense of what? The post doesn’t defend COBOL, it makes no claims regarding the best way to track this data at all. It just points out that the dipshits making the claims of corruption are blatantly wrong.

              Then you go on to claim that these same dipshits are going to “probably” address legacy systems? Why would you want someone who can’t understand the legacy system to be in charge of replacing it? That’s a recipe for disaster.

              Or to put it another way. Saying the government shouldn’t use COBOL “isn’t the defense (of DOGE) you think it is”.

              • nwilz@lemmy.world
                link
                fedilink
                arrow-up
                0
                ·
                16 hours ago

                Yes, it is defending cobol. Otherwise it would say this is bad and needs to be fixed

                • doomcanoe@sh.itjust.works
                  link
                  fedilink
                  English
                  arrow-up
                  0
                  ·
                  edit-2
                  15 hours ago

                  Lol, bruh… You cant be serious.

                  Defending COBOL would require a statement to the effect of “COBOL should be kept because X”. Do you see any affirmative statement to that effect? No? Wanna take a guess as to why?

                  I know you won’t be honest about it in your response, but you know exactly why. Because this post has nothing to do with COBOL being good, bad, or in-between for the task at hand. It’s exclusively about calling out bullshit and misinformation spread by unqualified idiots.

                  Which brings me back around to the fact that your opinion that “COBOL should be replaced” is not a valid defense of idiots, who don’t understand the systems they are tasked with using, making false claims based on misunderstandings caused by their ignorance.

          • nwilz@lemmy.world
            link
            fedilink
            arrow-up
            0
            ·
            17 hours ago

            This hasn’t been done because no one can do it. It’s because the government sucks at this stuff

            • prettybunnys@sh.itjust.works
              link
              fedilink
              arrow-up
              0
              ·
              16 hours ago

              It hasn’t been done because that’s a great works project that’s on a scale you’re woefully ignorant to (this is an assumption on my part based on what I can grok of you based on your comments here).

              I assure you there is a bevy of skilled developers who would love to modernize the systems they work on but the cost and level of effort is beyond what is politically viable.

              If you changed your perspective from “it’s awful and bad and always will be” to “it’s awful and bad and we can make it better, how can I help” things will improve for everyone.

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

                Mate, from reading the comments of this no-brains, he or she doesn’t doesn’t even know how to program in a professional capacity, much less have even the slightest clue of the scope of such a project.

                That one is literally a mindless Trump/Elon fan wading into waters way, WAY, WAY beyond his depth.

            • angstylittlecatboy@reddthat.com
              link
              fedilink
              English
              arrow-up
              0
              ·
              16 hours ago

              I guarantee you that there are no governments, banks, or businesses older than 15 years that aren’t running some old ass code that’s not getting replaced any time soon.

        • glitch1985@lemmy.world
          link
          fedilink
          arrow-up
          0
          ·
          17 hours ago

          There are tons of IT systems in the government that have been running the same programming for 30+ years but if it isn’t broke it doesn’t get touched.

          Source: Use mainframe emulators often to perform routine tasks in government HR systems.

            • AA5B@lemmy.world
              link
              fedilink
              arrow-up
              0
              ·
              edit-2
              13 hours ago

              The code may be old but the hardware gets updated. I don’t know if they’re using modern tools but the language also gets updated.

              It alll comes down to budget: who wants to spend the money to modernize stuff that still works? Iss Musk willing to invest in that?

            • ano_ba_to@sopuli.xyz
              link
              fedilink
              arrow-up
              0
              ·
              16 hours ago

              Just in case you didn’t know, the code is old, but the hardware still gets updates. And when it comes to batch transactions and network speed, mainframes still do the job reliably well. Plus, they are not easy to hack, because few understand them, not to mention the decades of security updates.

  • LeFantome@programming.dev
    link
    fedilink
    arrow-up
    0
    ·
    20 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.

  • gravitas_deficiency@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    0
    ·
    21 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
        0
        ·
        14 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
          0
          ·
          13 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
            0
            ·
            12 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?

            • Randelung@lemmy.world
              link
              fedilink
              arrow-up
              0
              ·
              11 hours ago

              I expect governments to set up own time servers and reset it to 1970 before upgrading their old Win XP machines.

    • sasquatch7704@lemmy.world
      link
      fedilink
      arrow-up
      0
      ·
      edit-2
      17 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

      • andros_rex@lemmy.world
        link
        fedilink
        arrow-up
        0
        ·
        14 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.

      • JackbyDev@programming.dev
        link
        fedilink
        English
        arrow-up
        0
        ·
        16 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
          0
          ·
          15 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

  • Kusimulkku@lemm.ee
    link
    fedilink
    arrow-up
    0
    ·
    1 day ago

    They also found that there’s people over 200, so that default date thing doesn’t really explain it all.

    • ansiz@lemmy.world
      link
      fedilink
      English
      arrow-up
      0
      ·
      23 hours ago

      It’s because that explanation isn’t correct. The real deal is you just have entries without a death date, so if you ran a query this get super old ages as a result.

      Note that isn’t a database of payments or even people eligible for them, just a listing of ‘everyone’ with a SSN. There is a separate master death index. In the old days, wild west kind of stuff people would disappear so the death date would never get entered. Modern days every morgue and funeral home has to legally notify SS when someone dies, there is a specific form and major hell to pay if you don’t do it.

      • BakerBagel@midwest.social
        link
        fedilink
        arrow-up
        0
        ·
        22 hours ago

        Social Security numbers were first issued in 1937. You would have need someone to be over 110 in 1937 to have an age over 200. I think that it’s a combination of birthdays entered wrong plus no official death date.

        • ansiz@lemmy.world
          link
          fedilink
          English
          arrow-up
          0
          ·
          edit-2
          12 hours ago

          I think those are related to survivor benefits. Like an old man marrying a young woman in the 40’s. Like the civil war vets marrying woman in the 20th century. The last civil war widow was getting benefits until she died in 2020. But still the same basic issue.

          But in that case the old man isn’t getting benefits but just is needed as a reference for the person actually getting them.

        • Madison420@lemmy.world
          link
          fedilink
          arrow-up
          0
          ·
          22 hours ago

          Wouldn’t matter anyway the ss admin automatically stops pay and initiates audit for anything over 115.

    • I_Has_A_Hat@lemmy.world
      link
      fedilink
      arrow-up
      0
      ·
      23 hours ago

      Also a lot of people between 110 and 150, so I’m sure there is a larger answer.

      However, Social Security cuts off at 115, and they supposedly found like 10 million people older than that. Considering there are only ~50m people on Social Security, most people would conclude that there is an error in data rather than immediately jump to fraud. Of course, ketamine is a hell of a drug and Elon is not most people.

      • Kusimulkku@lemm.ee
        link
        fedilink
        arrow-up
        0
        ·
        23 hours ago

        It’s definitely still concerning if the database has a large number of errors. But systematic fraud would be much worse ofc.

        • funkless_eck@sh.itjust.works
          link
          fedilink
          arrow-up
          0
          ·
          23 hours ago

          the database doesn’t have to necessarily be accurate if there’s other checks - a flag for test data, a system that checks the person is real against another database before dispersing funds etc

          • JackbyDev@programming.dev
            link
            fedilink
            English
            arrow-up
            0
            ·
            16 hours ago

            It’s really funny to me that everyone thinks every database is always 100% correct. What a magical world it would be!

            • JcbAzPx@lemmy.world
              link
              fedilink
              English
              arrow-up
              0
              ·
              19 hours ago

              Fixing an archival dataset that doesn’t even pertain to people actively receiving benefits is so far down the list of priorities as to be a criminal misuse if resources.

            • Lyrl@lemm.ee
              link
              fedilink
              English
              arrow-up
              0
              ·
              edit-2
              22 hours ago

              Someone with the skills and knowledge to clean up 150-year old typographical errors in one particular table in the Social Security database system would probably provide more benefit to the taxpayers covering their salary by doing some other task.

              • Kusimulkku@lemm.ee
                link
                fedilink
                arrow-up
                0
                ·
                21 hours ago

                It might be better to move to a new database at this point rather than trying to fix the existing one. It won’t give immediate benefits but could be helpful down the line.

                • SabinStargem@lemmings.world
                  link
                  fedilink
                  English
                  arrow-up
                  0
                  ·
                  19 hours ago

                  I am hoping California ditches SSN and other identifiers from the US Treasury. That information is no longer safe, so we need a fresh database that is secure from DOGE fuckery, among many other hostile actors.

  • Fizz@lemmy.nz
    link
    fedilink
    arrow-up
    0
    ·
    1 day ago

    The response is wrong. I remember reading an article that disproved it and explained the actual reason. However I forgot the actual reason.

    • spireghost@lemmy.zip
      link
      fedilink
      English
      arrow-up
      0
      ·
      8 hours ago

      COBOL doesn’t have a date type. And there were “people” in that “list” that weren’t just 150 years old, and they varied in ages.

      The real answer is that the list that they’re saying is people getting social security, isn’t the list of people getting paid, just lists of random ages in the database, which ultimately means nothing.

  • As someone who is working on a project of recreating an enterprise application in a modern tech stack, the legacy code is hard to understand too.

    We have something similar in that a ClaimClosedDate is defaulted to 01/01/1900 and if it has that date it means it’s not closed whereas now that would be a nullable field.