There's a snarky thread going around attempting to dunk on DOGE employees who revealed that some social security recipients have 150 year old birth dates. The claim is that this is just the default start date for COBOL (like the UNIX epoch), but it's not even true, and even if it was, it's still a major problem if we have social security recipients with no birth date in the system.
I think you have to read this one generously. The claim isn't about how COBOL works, except incidentally. It's more along the following lines:
COBOL doesn't have a default date/time type
As such implementation decisions are left to the implementor
The implementors* of the SS system chose 1875 as the epoch date for reasons
*I made a lot of money in 1999. The original implementors of SS probably used something else ("it'll be rewritten before this is a problem" was essentially the whole raison de etre of Y2K). The 1875 thing, if it's a thing, was probably the result of Y2K work. But I have no direct knowledge of these matters.
> The implementors* of the SS system chose 1875 as the epoch date for reasons
The problem is we have no solid evidence that is actually true. The claim appears to originate in an anonymous DailyKos comment which contains so many factual errors (e.g. claiming this is due to COBOL), it is unclear why any of it should be believed. For all we really know, the SSA code doesn’t treat 1875 specially at all. And even if it actually does, are these social media claims that it does based on inside knowledge of how it works, or just a lucky guess?
That’s not to say DOGE’s claims about 150 year old social security recipients are right - for all I know, they could be wrong - but, if they are wrong, it could be for some reason which is completely unrelated to “1875 as an epoch”
> Because I couldn't name any programming language people in use today that has no built-in date type.
But this isn’t true. COBOL 85 has builtin functions for representing dates as an integer from 1601 epoch. IBM mainframe COBOL supports two operation modes, ANSI-compatible mode in which those functions use the 1601 epoch, and IBM-compatible mode which use a 1582 epoch instead - https://www.ibm.com/docs/en/cobol-zos/6.4?topic=options-intd...
A lot of COBOL software didn’t use the COBOL 85 date functions because it is so old it long predates COBOL 85, and also because old habits die hard and some COBOL programmers avoided using them.
COBOL 85 doesn’t have a date type per se, dates are either integers (count of days since epoch) or strings (YYYYMMDD). But, C’s ‘time_t’ isn’t really a separate type (in the sense that many other languages have them) it is just an alias for an integer type. So COBOL is closer to C on this than you might think
I did a lot of COBOL Y2K work in 1998-2000 and I have never once heard of any 1875 epoch related to COBOL until the last few days. We either modified code to use windowing functions or we just full converted to 4 digit years depending on severity. For instance, windowing code for front end, 4 digit years for DB, VSAM and flat files.
"The implementors* of the SS system chose 1875 as the epoch date for reasons"
So, they invented their own date system instead of just using the standard CENTURY-DATE or an ISO-8601 date from their DB. Highly doubt...
1875 being the result of Y2K work makes no sense to me.
Also the social media claim was that "this is how COBOL works", not "this is how the SS system works". It does not seem that the person who made the original social media claim has any insider knowledge of the SS COBOL system.
The problem is that DOGE public statements like those of Trump are a fountain of lies so there is little point in digging into them because the alternative is the equivilent of looking for some edible corn in a bucket of human waste.
Logical theories include connected records include an age, its chaff unconnected to any money being moved retained for legal reasons, and them just making it up.
Since they won't substantiate this you can choose your own adventure whilst waiting for the boring truth which is probably on balance that all receipients have a known age but they were unable to look it up correctly and something somewhere returns default when not available i in that code path.
> it's still a major problem if we have social security recipients with no birth date in the system.
It's not a problem, since there are other ways of determining eligibility. If a person doesn't have proof of a birth date, what are you supposed to do? Make one up?
And the claim is that it's fraud, which requires evidence, not some anomaly which can be several things. Musk and DOGE deserve the "dunk" since they're spreading unsubstantiated BS.
If a person doesn't have proof of birthdate, you could make up a realistic one. Pick 1935. Pick 1942. Pick anything but longer than the oldest human to ever live ago. And you know what? Since centenarians are rare enough, maybe do annual checkups on those folks to see if they're still alive before cutting checks.
Absolutely not. You don't enter false values pretending to be accurate, you put in a null value or other marker. You want it to make no sense so it's not mistaken for real data.
Exactly wrong making up fake data would poison actual data. The pupose of these systems isn't to look correct to people on twitter. We have zero reason to believe we are cutting checks unreasonably inaccurately.
There are of course going to be recently decreased not yet accounted for and a tiny number of fraudsters collecting grannies check.
Individual annual audits 200 USD per person would cost 136B over the next 10 years. Far more than fraud it would deter. Fraud which is already minimal.
Indivual audits of client accounts for obvious issues and fraud is already a thing because the experts that are responsible for such aren't complete morons.
Why would you deliberately input realistic but known incorrect data, versus using a special “we don’t know” value? How on earth could that possibly be better?
I’m guessing that when Social Security started being paid out in 1937 that many US citizens were born around 1875 and also did not have a birth certificate. So when the system was computerized in the ‘70’s there was no way to correctly input data so they simply continued that method.
It's sad that there are so many people that don't realize what they're saying is absolutely illogical. I agree with you, the technical details are irrelevant if there are people getting payments with those attributes it's a problem.
Nope, you're totally wrong. it's entirely a technical issue if it's an old system that handles exceptional circumstances in odd ways. The facts of the case(s) are not known.
You don't know what the recipient's details are, you're just saying it's a problem without knowing any of the facts around the individuals circumstances.
You're simply thinking in the most shallow way possible.
How are your "unknown facts" that you've NOT substantiated at all, more relevant than my "unknown facts" that are based on logical conclusions?
If that field is the qualifying field that it was presented as, Then any record with that data means you shouldn't be getting payments. And it was communicated that there are individuals getting payments with that dirty field.
Aren't you just doing the same thing, just in reverse? Ie you don't know any facts about individual cases, yet assume there is no problem. (If that's not your position, in what sense is gp "totally wrong"?)
The number of super old accounts is many millions. There is no way that this particular number is indicative of a fraud problem.
Now you could motte-and-bailey the sentence "the technical details are irrelevant if there are people getting payments with those attributes it's a problem" by saying oh if any accounts in this group are getting payments, even if it's just a handful of them, that's a problem. But if we're talking about the number of these accounts being representative of the amount of fraud, there's no way that's true.
The person I was replying to was implying that they were fraud.
But uh, you don't think Musk was implying that? He decided to make an announcement that there were lots of super old accounts without any implication beyond their mere existence in a completely inactive state?
And I'm not going to ignore blatant implications to accept "oh he didn't say it".
Is it plausible that, given the claim is that people currently >150 years old are receiving money, in the previous 40 years of audits, etc., no-one has noticed that people >110 (vanishingly rare in the US) were getting money? That it took the arrival of Elon and his Special Boys with their cursory glance to immediately spot this problem that must have been missed by every other developer, tested, auditor, etc. for AT LEAST 40 years? Or that there has been some vast conspiracy - on both sides of the US political aisle - to keep paying out this money to clearly ineligible people without a single person ever whistleblowing?
My money is on the vastly simpler "Elon and his Special Boys[0] have misunderstood" hypothesis.
[0] who have not demonstrated a great acumen for being correct at any point, let's be honest.
Have you interacted with the federal government? Or any government at all? Do you know how much money they waste? Do you think a 7 trillion dollar budget isn't going to be filled with multiple hundreds of billions of dollars of false payments, waste, fraud, and 42-year old loopholes that have never been closed? Our national debt is growing at trillions a year. That's not sustainable. The inflation is happening now. It gets a lot worse without this.
Trump and Musk are not truly worried about debt. Their current top goal is to commit to trillions in future debt to cut taxes for the top 0.1% of earners. The current Treasury estimate is these tax cuts will cost $4.5 trillion and accumulate to the wealthiest in the country.
Of course there is waste. Nothing runs with 100% efficiency.
You claim a huge scale of fraud, "multiple hundreds of billions of dollars" which we can bound as
200/7000 - 900/7000
Or something roughly in the range of 3-12%.
So, not exactly invisible. Probably pretty findable.
Where is the evidence of these "multiple hundreds of billions of dollars"? If you are going to go about it from individual fraudulent SS recipient upwards, you will be looking for fraud forever. A liftetime of SS is, what, $100,000? So, like 0.00005% of the amount of fraud you claim?
If this is how DOGE is going about it, IT WOULD BE THE LEAST FUCKING EFFICIENT GOVERNMENT PROGRAM EVER.
This is not how you find fraud. This is not how you audit. This is a smash and grab job, orchestrated by the most wealthy human and most powerful elected official on the planet.