DOGE Plans to Rebuild SSA Codebase in Months, Risking Benefits and System Collapse
-
Yet it's the thing every junior dev wants to do as they gain more experience.
Right after they write yet another content management system.
-
COBOL is the career advise you hear people give for people who want to make money but don't want to deal with the VC clownshow. COBOL btw is only 13 years older than C and both language's current standard dates to 2023.
It's at its core a bog-standard procedural language, with some special builtins making it particularly suited to do mainframe stuff. Learning COBOL is no worse a career investment than learning ABAP, or any other language of the bureaucracy. Sure you'll be a career bureaucrat but that's up sufficiently many people's alley, no "move fast and break things", it's "move slowly and keep things running".
Well, the other thing about COBOL is that most people would regard it as a living death to have to deal with it as a day job.
And I've had interactions with offshore COBOL shops. The ones I worked with were not at all good. You'll never get 99th-percentile coders to work in that language, unless their only motivation is money.
-
This post did not contain any content.
"ROFL"
Signed, everyone who has been involved in migrating a codebase before.
-
The way Java is practically written, most of the overhead (read: inefficient slowdown) happens on load time, rather than in the middle of execution. The amount of speedup in hardware since the early 2000s has also definitely made programmers less worried about smaller inefficiencies.
Languages like Python or JavaScript have a lot more overhead while they're running, and are less well-suited to running a server that needs to respond quickly, but certainly can do the job well enough, if a bit worse compared to something like Java/C++/Rust. I suspect this is basically what they meant by Java being well-suited.
Java can be fast at runtime, but optimization is most effective on frequently-run, repetitive sections of code.
The slow Java interpreter spin-up time was a big annoyance for use of Java in serverless cloud functions. Now the big cloud providers have ways to minimize that spin-up delay.
-
Node.js is a fantastic tool for web servers. Its event loop allows it to rival much lower-level languages in performance while remaining easy to write and maintain. JavaScript has been the most popular programming language for nearly a decade.
Just no man.
Yes, JavaScript has been the most popular language but it is exclusively because of the front-end. Many companies do not want to pay for separate back-end devs and ask their front-end devs to do it instead. These people (ab)use JS because they're most comfortable with it and are under crunch; so we end up with the abomination that is back-end JS.
It is NOT rivaling much lower-level languages; it can't even rival C#.
First off, it is interpreted. You are never going to be faster than competently written C, C++, Go, nor Rust. Secondly, the resources it takes to exist makes in a non-option for embedded machines - which Social-Security facilities are all but guaranteed to use.
Not to mention the horrendous (and insecure) package infrastructure, and under-powered core libraries - it would be the fullest extent disaster.
The saddest part? The larpers at DOG(shit)E are all but guaranteed to pick the worst tools for the job, over-engineer, and have extremely poor management. Meaning whatever they ship WILL collaspe the system day 1; and all of the people refusing to pay attention will be like "hOw CouLd THis HaPPen"
-
I am a programmer but I'm not sure why people think Java is suited for anything, especially a system so sensitive to bugs. It's so hard to write high quality readable code in Java. Everything is way more clunky, and verbose than it needs to be.
Some major improvements were made with versions 17+ but still, it feels like walking through mud.
It's a language from the 1990s for the 1990s.
Btw the performance is actually pretty good in Java, the old reputation for slowness is entirely undeserved today.
Anecdotally, Python is about three times as concise as Java. You have to write lots of boilerplate to do anything much more complex than Hello World in Java. And one of the oldest and most reproducible results in software engineering is that the defect rate is proportional to the number of lines of executable code. The more concise the language, the cheaper it is to maintain. This has been measured in hundreds of environments, with dozens of languages, over decades.
Python is slow, though, so there are some situations where it's not a good choice. But those cases are probably less numerous than you might assume. There have been a few occasions where I was told Python would be too slow, I've then built a proof-of-concept, and it was more than fast enough. People suck at knowing where bottlenecks are in complex systems.
And now that the Python project has finally bitten the bullet and taken measures to allow removal of the GIL, things might improve considerably, though Python's dynamic nature and some features of its type inference mean that some things it does will never be ultra-speedy.
-
We all know it's going to be nodejs, backed up by mongodb. This is because LOC on the commits can be maximized for minimal effort, and it will need to be rewritten every 2-3 years.
In my shop, some of the managers were OK with teams using server-side node, with Mongo.
Those managers are now gone, and one of my jobs was to lifecycle that shit out. Just being near npm was enough to shorten my life by several years.
Mongo's actually a really nice choice for some use cases. It just wasn't good for what we were trying to use it for. Its replacement was Postgres, one DB for OLTP-like processing and another for OLAP. Works like a champ, and the improved analytics mean we've been able to tune the hell out of that sucker.
-
"ROFL"
Signed, everyone who has been involved in migrating a codebase before.
Yep, months is a joke, doubly so when talking about tens of millions of lines of code and also COBOL specifically.
This is going to be a hilarious disaster but not so hilarious when people who need the benefits need them and won't be able to get them.
-
He can't be this delusional, right? It is almost like he is just trying to inflict damage?
I think his and Trump's roles are to be saboteurs.
-
"ROFL"
Signed, everyone who has been involved in migrating a codebase before.
Okay but have you ever tried just throwing genAI at the problem and not caring about the consequences?
-
This post did not contain any content.
In theory, it wouldn't be a necessarily bad idea to port the COBOL code to something more modern, but I cannot trust Muskrat and a few vibe coder youngsters with this task.
-
"ROFL"
Signed, everyone who has been involved in migrating a codebase before.
They have an experienced team of teenagers don't worry.
-
Yeah, Java can run maybe half as fast as equivalently complex C, while being far more maintainable. But to see that kind of performance, you'll want to use POJOs (plain old Java objects), not that enterprise bullshit. And there are many other optimization techniques that your average Java coder wouldn't see in their average coding job.
All that to say it doesn’t matter what language they use anyway, because rewriting from scratch with a short timeline is an insane thing to do that never works.
Schdule-driven development by people with no domain knowledge, with poorly understood requirements and life-and-limb-critical outcomes, led by an unpredictable moron. What could go wrong?
I wouldn't assume that Java is only half as fast as C for every workload. It's probably a lot closer than you think in a lot of real world scenarios.
-
Do you have reason to think that? Organizations that use mainframes keep them up-to-date in my experience.
-
I've worked on teams converting legacy code for most of my life. The planning for something like this would take longer than six months.
If this proceeds in Trump's corrupt government, Elon will get the contact, will claim it is too broken to salvage, and will privatize it. The only way this goes anywhere is if Trump and musk stand to gain money, and they stand to gain a lot.
-
In theory, it wouldn't be a necessarily bad idea to port the COBOL code to something more modern, but I cannot trust Muskrat and a few vibe coder youngsters with this task.
in theory yeah it's not a bad idea but it's also 60 million lines of a cobol
-
"ROFL"
Signed, everyone who has been involved in migrating a codebase before.
That is the mother load of all code bases. Probably still some COBOL if not mostly cobol.
-
Okay but have you ever tried just throwing genAI at the problem and not caring about the consequences?
With Grok looking more and more like the only one working for Musk with enough (digital) balls to stand up to his boss, that might be better than the alternative of "Big Balls" and the rest of the Digital Oblivous Goons of Elon
-
I wish Java was declared deprecated back in 2017 when Kotlin was adopted for Android and supported by Spring. It was the only sensible way forward for JVM. Sure with containerization there's some debate for the necessity of JVM at all but its GC and runtime optimizations are nice.
Java has still an enormous adoption, though. It'd be very self harming making it deprecated. And I don't think containerization solves majority of cases, perhaps it does it better in backend. So both GC and Java are here with us like forever
️
-
I've worked on these "cost saving" government rewrites before. The problem is getting decades of domain logic and behavior down to where people can be productive. It takes a lot of care and nuance to do this well.
Since these nazi pea brains can't even secure a db properly I have my doubts they'll do this successfully.
Not just domain logic. The implementation logic is often weird too. Cobol systems have crash/restart behaviour and other obscure semantics that often end up being used in anger; it's like using exceptions for control flow, but exceedingly obscure and unfortunately (from what I've seen of production cobol) a "common trick" in lots of real-world deployments.