Readit News logoReadit News
Posted by u/Genius_um a year ago
Ask HN: Should I learn COBOL at 14yo in 2025?
I've worked in many programming languages, but are older languages like COBOL or Fortran worth looking into? COBOL certainly has a job opportunity later on since the average age of developers is over 60, they will probably hire any young person who has learned a minimum of COBOL which is already quite rare
hyperman1 · a year ago
I won't say yes or no, but here is my experience:

Once you know a few programming languages, learning an extra is really easy. And COBOL is among the more easy.

It is good to start with a reasonably designed mainstream language like Python, Java, C#, Go,... and learn to think like a programmer. Then pick a few weirdos like lisp, prolog, haskell, and learn what languages can provide if stretched. COBOL, Basic, PHP,... are today less well designed language that will teach you bad habits. As a first language, you'll have to unlearn things to grow.

Cobol programmers tend to be less paid and work slowly with gnarly code bases. By definition, you work for businesses that are bureaucratic and slow in changing anything. Your colleagues will be near pension age. Do you want this company culture?

You will have work forca long time, of course.

Users already know you'll answer that lots of their questions are impossible. It's easy to say no to them when they e.g. request a strange UI change.

Being a (human) translator between cobol and the rest of the company is a nice path to architect. It's rare to find a programmer talking to both sides of the IT world.

Cobol itself isn't the biggest problem. Even the mainframe isn't. But everything else will be bespoke to the company, underdocumented, hard to learn. That may include the text editor you use.

hosuew · a year ago
> reasonably designed mainstream language like Python

I think python is an excellent "first" programming language, but I'd resist calling it "reasonably designed"; especially when holding it up as more reasonably designed than the likes of lisp or haskell.

As a programmer who was forced out of the education pipeline due to the courses being taught exclusively in C++, and forcing OOP to the point that my natural propensity toward immutable functional programming was consistently reprimanded as "programming wrong", that my first programming language became Bash as it was what I could use to automate my Linux box.

I later picked up Python, to do mathematics, that eventually led me back into the profession of programming.

> weirdos like lisp [...] haskell

Years later I discovered Clojure and Haskell which validated my original love of immutability and functional programming making those languages feel like the most "reasonably designed" and sensible languages. Like being wrapped in a warm blanket.

Genius_um · a year ago
Thank you for your response. Actually, I don't really intend to pursue a professional career in COBOL; it was more of an excuse to learn a new, rather old language that interested me, just like many other programming languages I’d like to explore. However, it was still interesting to know what would await me if one day, on a whim, I developed a deep passion for this particular language. COBOL is still a part of computing history, and it’s only fair to draw knowledge from it.
hyperman1 · a year ago
What could anybody have against learning something new. Follow your hearth and go build something! I've heard of someone implementing tetris in labview, which is completely against its purpose and was loved by everyone who saw it.
kolinko · a year ago
Cobol by itself is quite simple, it’s the whole code and architecture that is convoluted.

I agree with the others - do whatever you think is fun and inferesting at this age. Too many things will change before you get to the job market.

Having said that, reading up about Cobol can be fun and interesting, and unique.

I can also recommend this book about working with legacy systems. It makes for an interesting read:

https://a.co/d/4r4Svx8

(And also other classical books like Pragmatic Programmer etc)

Genius_um · a year ago
Thanks for the advice and resource.
dagw · a year ago
The largest bank in Sweden offers a free 16 week COBOL training course and basically a guarantees job if you pass. That's how desperate they are to hire new COBOL developers.

But it's worth noting that what most of the places hiring COBOL developers actually need isn't someone that knows COBOL, but someone that knows how to develop for mainframe systems (using COBOL). If you just learn the COBOL language in a vacuum, you'll have a much harder time getting hired.

ochrist · a year ago
Something similar is happening in Denmark as well, as several large fintech companies rely on mainframe technology and COBOL.

E.g. BEC has a programme described here: https://candidate.hr-manager.net/ApplicationInit.aspx?cid=10...

jdmoreira · a year ago
Tell me more. Can you link to this program / course?
TrueGeek · a year ago
You must speak and write Fluent Swedish for the course, but here is the page:

https://sebgroup.com/career/who-are-you/graduates-and-studen...

pickle-wizard · a year ago
I worked at IBM for 7 years and I worked with mainframe and AS/400 systems while I was there.

If you want to learn Mainframe and COBOL for fun I say do it. I did enjoy working with those technologies and you probably will too.

However if you want to do it because you think you'll make lots of money, unfortunately that is not the case. Yes I know you hear all the time about how COBOL programmers make bank. That is not quite true. They are not looking for people that know COBOL or Mainframe. They are looking for people that know their big ball of mud. If you know their big ball of mud they'll pay you a lot. However if you just know COBOL and they have to train you on their big ball of mud. Well they would rather send that work offshore to pay the lower wages. Any work done onshore is paid at low rates.

I haven't touched those systems since I left IBM 15 years ago. In fact I don't even have it on my resume anymore. Cloud technologies pay so much more and the jobs are easier to get.

Genius_um · a year ago
Thank you for your response. After reading all these replies, I clearly understood that COBOL is not as accessible as it might seem from a (very) distant professional perspective. I was just curious to learn more. However, these posts mention quite a lot that it is still a good language to learn.
ralphc · a year ago
Last night I saw an interview with the US Treasury Secretary and one of of the "DOGE bros", Sam Corcos. He is tasked with modernizing the IRS's computer systems. Some of the highlights included him saying that this modernization has already taken place at most banks, and that they're hopeful to do this in the government with roadblocks gone.

I bring this up to you, as a 14 year old, to think about your future career. You have 8 years before you're out looking for work, then 45 years, give or take, in the industry. What is the likelihood that these COBOL systems will still be in place vs. finally being replaced? Yes, people have called the death of COBOL for years, and they were wrong, but one day they're going to be right.

user32489318 · a year ago
From the economics perspective you might be right. But, keep in mind that you will be working with 60-70 yo, who have been working and maintaining the same code base for the past 30 years. With age, neuro elasticity decreases, comprehending new concepts becomes though. Unwillingness to learn is the killer of any improvement. A grumpy old man might be a funny meme, but, waging a war with your colleagues on every change in the code is a solid drain on your mental health. You’re young, any mistake you might make is a learning opportunity. Learn COBOL if you want, it’s always a plus, but stay in touch with anything else. Work takes a solid part of your life, having good connection with your colleagues, doing stuff you’re challenged by, .. all this is equally important to the job security
user32489318 · a year ago
not to put cobol engineers in a bad light, but, the most bright engineers I have had chance to work with always seek ‘more’, they grow. Consider who would be willing to stay and work on the same project, doing the same for extended periods of time. I’m not calling it lazy or unintelligent, but, these may be work-challenge averse and an opportunity to offload a lot of work on your shoulders. If this mentality matches with your way of working, you will be fine.
noobermin · a year ago
Since you're young, learn what you want based on what interests you. My best advice right now is not to focus on languages but on projects. Think about a particular project you're interested in creating and try to make it. The language required for said project will become apparent after a little googling.

That said, if you just have the interest in cobol, just go for any and just have fun. Don't worry at this point about how useful it will be.

aabhay · a year ago
Generally, no, as a principle. You don’t want to learn things in chronological order, you want to learn them in intrinsic ness order, to the extent it is feasible. If you really want to learn computing, start from scratch. Go from logic gates to building logic boards to cpu architecture, assembly, and then programming. That will allow you to pick up arbitrary skills in a compounding way.