156
this post was submitted on 16 Dec 2024
156 points (94.3% liked)
Programming
17651 readers
410 users here now
Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!
Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.
Hope you enjoy the instance!
Rules
Rules
- Follow the programming.dev instance rules
- Keep content related to programming in some way
- If you're posting long videos try to add in some form of tldr for those who don't want to watch videos
Wormhole
Follow the wormhole through a path of communities [email protected]
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
how to obtain this 'last person that knows cobol' title with whatever language goes extinct next?
Vba
I'm a vba wizard, do not tempt me into waiting until it's at the state of cobol
you could just learn cobol. it's not going anywhere, unfortunately
As someone who has worked with it, it's not too bad. Lots of $$ if you know someone.
The biggest issue (that she goes into), is the lack of context. Why is the thing doing what it is doing is the hardest part
Like could I learn it enough to obtain a real job tho? That pays real money I mean?
You could most likely find some damn spicy contracts. The real question is, is it worth it?
You're going to retrofit some old code to fix an upcoming date bug, or try to make some changes wrapped around security vulnerabilities. But these systems we're relying on, they're in banks, air traffic control, and in hospitals, we're not just depending on these boxes but critically depending on these boxes. There's almost nobody sitting around to give you a second set of eyes on the code, probably almost nobody capable of doing proper QA on the systems you're working on.
Every attempt at dissuading me only makes the fun of the challenge more enticing.
None of this matters as I have no work experience--only hobby crafting.
My point is that there will always be people willing to try and the more you tell us "you don't want to" the more us not so privileged with work-experience continue dreaming with deeper allure
Oh, I'm not trying to talk you out of it, I'm just making sure that you see all sides of the scenario.
I looked at some of the Y2K patches, I don't strictly know cobol either , but it's not that hard to read.
You'd think that code lying around would be refined as they had limits on space and everything was so mature. It's still pretty trashy :)
good cobol programmers are probably the highest paid programmers there are. mostly because there are so few of them and the systems are so critical.
but like... it's not going to be fun. cobol as a language is extremely verbose, and you're not going to actually develop anything. it's just fixing compatibility problems and y2k issues all day.
getting paid to code anything is a dream I'll have til I get to the graveyard.
I think the privileged are cursed to never understand this somehow
the market is screaming for talented developers. get in there!
Sure are a lot of layoffs in the tech industry as a whole if you aren't trolling
if you're looking at web stuff, sure. that market is saturated. i've worked in mining, manufacturing and vehicle industries and they're always looking for people.
So very select and rare markets are screaming for developers...
Looks at OP with shocked pikachu face
i am currently working for a company that employs over 200 000 people. this is not a rare market.
I am a professional software engineer. My favorite ecosystem is the Java one which may explain some things.
Why is verbosity such a bad thing? Especially in the context of maintaining something someone else wrote? I would much rather maintain old Java than say, old Perl. I want big long names. So I have a better idea of what they were for! I can pretty much read any line of Java from anywhere and have a very good idea what it's actually doing.
Sure, it's more of a pain to type but as a kid one of the best investments I made in myself was to take a typing class. I did this way before I discovered my passion for programming. I can type fast. And I can make my editors type boilerplate for me.
Edit: Give me the time to learn it (I'm confident I can learn it fast) and the ability to work remotely and I would jump at the chance. I can do the fun programming (in Java) in my spare time.
oh the names aren't long. cobol has keyword alternatives for all operators and all numbers up to 20. since the language was designed for non-programmers, code in the wild follows no paradigm and mixes these alternatives freely. names are usually kept as short as possible.
there's also a lot of boilerplate required for each file wrt the actual structure of the sections, assembly style. sure most of this can be automated with tooling but there's no tooling available. the cobol people have mainly worked in their own sphere and not been included in the tooling explosion of the last 15 years.
here's an example of some well-written cobol. most of it is nowhere close to this consistent, or source-controlled for that matter.
keyword count is a quick but bad metric of language complexity. thanks to all the alternative syntaxes cobol allows, it has around 300 keywords.
What would scare me the most is the bad tooling. I do rely on my tools to search for references, etc. I wonder if it's even possible to write a good analyzer for COBOL. Verbose operators and literals wouldn't scare me at all.
Still would jump at the chance. It would have to be remote and I would strongly prefer being the only engineer touching the code.
you're not going to get a position remote if your client is a bank or some other entity that does cobol. that shit is running on an airgapped machine running a vm of a machine from the 90s running a vm of a machine from the 70s. if you're really unlucky the source will be on punch cards because they didn't invest in a machine with storage and asked the VM developers for the same workflow as before
I'd bet you will probably work for experience or exposure and very little money on the first job or two you take, since you don't have any hands on experience. But after that it's kind of a name your own price gig.
I know you're joking, but it's one of the only kinds of jobs I can picture motivational enough to pursue
My money is on PHP.
Like, 70% or more of the web runs on PHP. That's also not going anywhere anytime soon.
Right. At least 70%. I've heard it estimated as high as 97%.
And it's losing popularity with new development, (and with new developers) while WordPress, Drupal and WikiMedia are everywhere.
Perfect recipe to be the next Cobol.
Oh I see what you're saying.
Dang, maybe I should learn PHP...
TCL?
Perl
all of these are still used in modern applications. i suggest Forth.
I bet there's still some FORTRAN in use at NASA/JPL.
Alternatively, I'm pretty sure key parts of Excel were written in x86 assembly. Dunno if that's still true.
Fortran is everywhere. it got a new release less than ten years ago.
When I was going to university in the early 90s I was taking computer programming for business administration, COBOL & FORTRAN, could not drop it quick enough. Such an old boring language (never stuck with programming, maybe they're all like that).
Bunch of my class mates did pretty well with the whole Y2K issue though.
Numpy uses Fortran
I doubt it. It's still used in a whole lot of medical and banking applications where there's a lot of text manipulation since it's really good at that (HL7 and other EDI stuff for instance).
Yeah. There's always at least one mission critical Prel script that no one can read.
ADA or Jovial, I’m guessing.
Probably no longer possible now that we have generative AI, a coder can now be archived alongside the codebase itself.
I know devs writing in it making over 200k per year. Ai isn't that useful unless you can correct for it's mistakes, which requires some experience with the language.
Maybe in another 10 years.
The reason banking still uses Cobol is the same reason they would never trust AI
GenAI coding assistants are only as good as the data they are trained on. Less-used proglangs make up a tiny fraction of the available data, or may even be completely absent. There is a reason coding assistants give convincing results with Python and JS/TS, but underperform even on relatively up-and-coming langs like Rust.