Live data from Hacker News

IBM will offer free COBOL training

inputmag.com

21–30 of 235 posts

Re: IBM will offer free COBOL training

#21
It's a trap.

The problem with those old codebases that governments, hospitals, big businesses are struggling with is not really the language, it's the engineering practices of that time with regards to constraints of old technology. The language is not the problem - lack of comments, bad variable naming, bad structure (little or no procedures or readability), and just sheer volume of it, is.

It would be very interesting to see the old systems rewritten in a modern language, with modern engineering practices, but keeping the old UI and UX (which often is incredibly ergonomic) - so as to limit scope and not mess it all up by trying to introduce mouse navigation and windowing mess.

Re: IBM will offer free COBOL training

#22

What other languages can we expect to see a similar surge in demand? FORTRAN? In the data analysis space my bet is on SAS

You joke but I still see FORTRAN jobs around where I live than Ruby. I even worked for a consultancy that did a Matlab -> FORTRAN rewrite.

Re: IBM will offer free COBOL training

#23
post #14

I don't want to sound condescending but why can't these systems be rewritten in a modern language? Now is obviously not the right time to do this; I am wondering are there technical limitations to do his?

Here's some simple COBOL code:

http://www.csis.ul.ie/cobol/examples/Conditn/Conditions.htm

    identification division.
    program-id. letters.
    data division.
    working-storage section.
    01  Char               PIC X.
        88 Vowel           VALUE "a", "e", "i", "o", "u".
        88 Consonant       VALUE "b", "c", "d", "f", "g", "h"
                                 "j" THRU "n", "p" THRU "t", "v" THRU "z".
        88 Digit           VALUE "0" THRU "9".
        88 ValidCharacter  VALUE "a" THRU "z", "0" THRU "9".
    procedure division.
    begin.
        display "Enter lower-case character or digit. No data ends.".
        accept Char.
        perform until not ValidCharacter
            evaluate true
                when Vowel display "The letter " Char " is a vowel."
                when Consonant display "The letter " Char " is a consonant."
                when Digit display Char " is a digit."
                when other display "problems found"
            end-evaluate
        accept Char
        end-perform
        stop run.
(I removed some chaff which GnuCOBOL doesn't need and fixed an apparent bug.)

So... where is it actually testing what kind of character you input? Where is the code for that? You input a specification for what a Vowel is, for example, and you write explicit code for what to do when a Vowel is input, but where is the code which goes through the specification and decides, yep, that's a Vowel?

COBOL is kind of an odd language. It's verbose in some respects and quite concise in others. Rewriting COBOL into something else would take actual human effort if you wanted the "something else" to look like code a human wrote, as opposed to the intermediate pass of an optimizing compiler, which is what the C GnuCOBOL can output looks like. Re-writing the COBOL might be the best move in some cases, or replacing it with entirely new code, but it isn't something you'd be able to do "for free" in any sense, especially with regards to time.

Re: IBM will offer free COBOL training

#25
post #14

I don't want to sound condescending but why can't these systems be rewritten in a modern language? Now is obviously not the right time to do this; I am wondering are there technical limitations to do his?

If it was open sourced there'd probably be some willing to modernise the system for free.

Govt IT systems and procurement are such a mess, putting it all out there for people to review and complain about is the only way it'll ever get better.

Re: IBM will offer free COBOL training

#26

I'm sure after you finish the training you'll find all the ads looking for people with 5 years experience. Assuming the demand for people still exists by then.

No, they need senior programmers so 10+years experience.

In the same way they ask for 10+years programming experience in Swift or Rust

Re: IBM will offer free COBOL training

#29
My first serious computer job (early 1990's) was COBOL.

I last used it in 1997, then moved on to Oracle PL/SQL, Java, Oracle's Java software stacks and now iOS ObjC/Swift.

Now I'm 52 years old. I have my own apps now on the store, don't need the money but I am looking for a new challenge - something a bit more social than working for myself.

I think I'll do this COBOL refresher. Only issue is I'm in Australia but I see there may be some demand here too. Nothing to lose - plenty of time at the moment to do the courses. Good for a laugh anyway.

Re: IBM will offer free COBOL training

#30
post #21

It's a trap. The problem with those old codebases that governments, hospitals, big businesses are struggling with is not really the language, it's the engineering practices of that time with regards to constraints of old technology. The language is not the problem - lack of comments, bad variable naming, bad structure (little or no procedures or readability), and just sheer volume of it, is. It would be very interest…

Just finished a contract with a hospital that built a lot of stuff in house in the 80ies based on a C (still pre C89 in many places) and Delphi/Pascal. The problem is indeed volume (over 10MLoC), two or three wizards supporting it all, but firmly coding like it's '83. No training of newcomers whatsoever, and thus really no way to contribute. If you manage to get some support, it will be once a year and in the form of code they wrote for you without much feedback possible.

Management prefers not to think about long term, because management obviously does not think long term.

Post reply on HN