4 ms·
Serious question: Should I learn COBOL in 2020-0?
by maallooc 7y ago
Serious question: Should I learn COBOL in 2020-0?
- Mountain_Skies 7y agoIt might be lucrative but every account I've seen has said it's endless frustration.
- vitno 7y agoOnly if you are interested in working on legacy systems in large bureaucracies. This may or may not pay well. My understanding is that most of the well paying side of this has actually invested in migrating off COBOL over the last decade.
- clort 7y agoare they 'translating' so you need to know COBOL or are they just creating new software to the same spec?
- annoyingnoob 7y agoMy not-very-recent-at-all experience with COBOL is that COBOL is used in the most boring applications at the largest institutions. If you find your self looking for work you might have to move to a different city.
- justin66 7y agoHave you ever said to yourself "self, I really want to work on large, badly maintained accounting and finance systems that should have been retired years ago?"
- protomyth 7y agoLearn COBOL and MUMPS, I'm pretty sure both will come up. Only add them to your resume when going for those type of jobs.
- Gunax 7y agoCOBOL is the perfect skillset for the grad who just studied CS in order to get a job. I hope I don't hurt anyone's feelings saying that.
- leetcrew 7y agothe language itself is not usually the main obstacle when it comes to dealing with legacy code. interfaces between logically distinct parts of the code will be fuzzy or nonexistent. you can't trust comments or sometimes even the names of functions (if the code is this structured at all!). you have to look at what every function you're calling actually does, what global variables it depends on, search for weird cases elsewhere that can change those globals, this type of stuff. you have to build intuition implicitly from the code about design paradigms the organization used when the code was written. sometimes if the code was actually maintained, you end up learning several sets of paradigms from different eras. at the end of all this, much of your accumulated knowledge might not apply outside of that organization. you could be starting almost from scratch at your next job working on legacy code. I don't mean to discourage you; it can be quite satisfying. it has almost an archeological feel sometimes. if you're a college student, I might recommend getting into c or c++ instead of cobol though. you'll have a much easier time finding an entry-level job when you graduate, and you'll at least have the option of working on newer projects too.
- jbarham 7y agoShort answer: No. Long answer: I did COBOL development on mainframes for the Canadian government and Xerox from 1996 - 1998, my first "real jobs" after university. COBOL in isolation isn't that bad a language. With a bit of discipline ("structured programming") it can be fairly readable. Most of the time it's used for large scale batch record processing in big institutions (e.g., governments, banks, insurance companies). The problem with using COBOL in a mainframe environment is that mainframes are basically an evolutionary dead end so you're stuck using the associated gunk that has hardly changed since the 70's (editors, JCL, CICS). JCL in particular is notoriously user hostile and has been called "the worst programming language ever designed" by Fred Brooks, who managed its development (http://dtsc.dfw.ibm.com/MVSDS/'HTTPD2.APPS.ZOSCLASS.PDF(ZCLASS06)' http://dtsc.dfw.ibm.com/MVSDS/'HTTPD2.APPS.ZOSCLASS.PDF(ZCLA...).