Just a kid with a computer here. I am familiar and have reached a reasonable level of fluency with javascript and python, with typescript being a somewhat satisfying switch I made.
It’s been 4 years, I haven’t touched another language. I wanna study something future proof and genuinely helpful. The reason I never went beyond js and py was because I already had everything I needed, I could make anything I wanted. I really want to dip my toes in the strong programming waters.
Can you suggest a language?
COBOL is probably the last language I expected to recieve as a suggestion, other than esolangs. I’m told COBOL doesn’t have fundamental functions like recursion and there’s really no support or libraries for it. I don’t see this being really practical in the real world.
With that being said, there are quite a few jobs for it. It’s certainly an interesting suggestion but I’m afraid I can’t really get into this without familiarizing myself with more strongly typed languages.
I dunno if this’ll really be of the same level of demand for the next decade or two but it’s certainly opened my eyes about it. I had no idea a language like that would be useful till date.
Edit: I’ve found out that there are frameworks and libraries for COBOL. Damn.
Sorry this reply is late! Just wanna add a bit more context now I’ve read your reply!
Most people’s understanding of what COBOL can and can’t do seems to be based on the 1985 COBOL release. And to be fair, when looking at a old legacy COBOL application, it will most likely be a COBOL 85 application.
However, COBOL has had newer releases since 1985. As of 2002, COBOL actually does have recursion. COBOL gets updated roughly every decade to include new programming concepts.
Though in practice, most companies which have COBOL applications will use some kind of dialect which may cover the features that COBOL is missing which is needed for their specific purposes. These dialects get updated much more often than the standard COBOL release. Companies will often pay the maintainers of these dialects to add features they want implemented as well.
Working with COBOL isn’t so much about writing new COBOL applications, rather it’s about modernizing existing ones. For example, reusing the existing business logic contained within COBOL programs written decades ago. Though that said I believe it is estimated that there are 5 billion new lines of COBOL still being written every year!
But certainly, knowing COBOL isn’t often a prerequisite for entry-level COBOL positions since most companies will assume that younger programmers will not have learned it, and will invest the time into training their new employees in COBOL as well as the specific dialect they use, if they use one. For me, I got my graduate position working with COBOL with no prior COBOL experience.
Nonetheless, I’m glad I managed to pique your interest, and good luck in your future learning endeavours no matter what languages you decide to pursue! If I was going to recommend a different language to learn, I’d suggest Java and C# like many other people have here in this thread. I work with C# extensively alongside COBOL. Both Java and C# are ones you’ll very likely encounter if pursuing a career in programming.