×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Cobol Job Market Heating Up

timothy posted more than 5 years ago | from the dress-the-part-at-the-interview dept.

Businesses 288

snydeq writes "Developers seeking job security in the years ahead could find an unlikely edge in Cobol. According to an InfoWorld report, demand for Cobol skills is surging, with salaries on the rise. More importantly, the short supply of offshore Cobol programmers and the fact that mainframes aren't going away anytime soon are spurring longevity for big-iron skills, with many companies looking to hire in-house Cobol pros to bridge mainframe Cobol apps to the rest of the enterprise. The report provides further evidence that Cobol may indeed be primed for a comeback, with new kinds of Cobol integration jobs emerging to prove old-guard skills are critical to some of the hottest areas of software development today."

cancel ×
This is a preview of your comment

No Comment Title Entered

Anonymous Coward 1 minute ago

No Comment Entered

288 comments

Write that shit for a living??? (5, Funny)

tha_mink (518151) | more than 5 years ago | (#25485041)

Kill me.

Re:Write that shit for a living??? (5, Funny)

TheNinjaroach (878876) | more than 5 years ago | (#25485057)

How about we just mod you down instead?

Re:Write that shit for a living??? (3, Informative)

theaveng (1243528) | more than 5 years ago | (#25485195)

I'll do it!!! I'd even be willing to clean toilets if they paid me engineering wages. Yes I'm a sellout. "I know Cobol, and I charge $90 an hour. When do you want me to start?"

Re:Write that shit for a living??? (5, Informative)

dedazo (737510) | more than 5 years ago | (#25485381)

$90? You're selling yourself cheap. Try somewhere around $120, for starters. It goes up from there. And these are rates for long-term projects, not wham/bam/thankyou/ma'am two week gigs to solve some obscure CICS problem.

That's assuming you have the resume and enough systems experience to back it up, but most people who do COBOL for a living do anyway.

In the mid-00s I seriously considered learning COBOL and C mainframe development after seeing how much those old farts from IBM were pulling in. It's far from sexy, but it's a lot of cash.

Re:Write that shit for a living??? (4, Insightful)

theaveng (1243528) | more than 5 years ago | (#25485617)

$120 an hour?!?!? If I can learn the mess that is 8502 assembly, I can surely learn the Cobol mess too.

(runs off to find tutorial)

How do people learn it? (3, Interesting)

CRCulver (715279) | more than 5 years ago | (#25485067)

I usually turn to O'Reilly for getting started with a new language, but oddly they don't have a guide to COBOL (similar situation with LISP, which I'd love to master). How do people learn COBOL? I notice there's a COBOL for Dummies [amazon.com] , but I honestly doubt it's a rigorous intro.

Re:How do people learn it? (5, Funny)

Ethanol-fueled (1125189) | more than 5 years ago | (#25485207)

COBOL SYNTAX TURNS MANY NOOBS AWAY BECAUSE IT IS ALWAYS YELLING AT THEM.

That's why the only people who can stand to work with it are elderly who are hard of hearing.

Re:How do people learn it? (3, Informative)

VeNoM0619 (1058216) | more than 5 years ago | (#25486099)

While a joke, I must disagree/explain. It does not require you to use all uppercase.

The only problem I have with COBOL is that every variable is a global variable, defined at program startup.

Re:How do people learn it? (2, Informative)

OwenDMoney (963991) | more than 5 years ago | (#25486243)

000100 IDENTIFICATION DIVISION.

000200 PROGRAM-ID. HELLOMONEY.

000300

000400*

000500 ENVIRONMENT DIVISION.

000600 CONFIGURATION SECTION.

000700 SOURCE-COMPUTER. RM-COBOL.

000800 OBJECT-COMPUTER. RM-COBOL.

000900

001000 DATA DIVISION.

001100 FILE SECTION.

001200

100000 PROCEDURE DIVISION.

100100

100200 MAIN-LOGIC SECTION.

100300 BEGIN.

100400 DISPLAY " " LINE 1 POSITION 1 ERASE EOS.

100500 DISPLAY "Hello Money!" LINE 15 POSITION 10.

100600 STOP RUN.

100700 MAIN-LOGIC-EXIT.

100800 EXIT.

Re:How do people learn it? (2, Interesting)

Zordak (123132) | more than 5 years ago | (#25485217)

Get ready to shell out some money. I think to compile the examples in Cobol for Dummies, you need a copy of Microsoft Visual Cobol. Those licenses aren't cheap.

Re:How do people learn it? (2, Informative)

viridari (1138635) | more than 5 years ago | (#25485545)

Microsoft Visual COBOL? *blech*

Back in the day I used Microfocus COBOL [microfocus.com] , which is still available today.

There are plenty of books out there on COBOL but O'Reilly, being geared mostly towards lower end machines, isn't likely to have much that is mainframe-centric like this. It's been over 15 years since I've written any COBOL (not long enough!) so I can't recommend a good modern guide.

Honestly, I think anything you can do in COBOL you can do better in Perl.

Re:How do people learn it? (1)

FJGreer (922348) | more than 5 years ago | (#25485715)

Nah, my (albeit ancient) copy of that book worked with whatever freeware crud came with it. Now I can't find it to tell you what that would be now, nor do I know if the book still ships with freeware crud.

Re:How do people learn it? (1)

drainbramage (588291) | more than 5 years ago | (#25485785)

Get your hand off that wallet!
Unless you would like to help out an open source project.
www.opencobol.org

Re:How do people learn it? (3, Funny)

truthsearch (249536) | more than 5 years ago | (#25485237)

To learn how to program on Linux years ago I scrapped together some used computer parts, put together a Linux system, and dove into code.

So to learn Cobol I guess I'd go dumpster diving for a mainframe. Hopefully one with some code left on it.

Re:How do people learn it? (1, Informative)

Anonymous Coward | more than 5 years ago | (#25485517)

Actually, there is an OpenCobol:

http://www.opencobol.org/

Re:How do people learn it? (2, Informative)

Gonarat (177568) | more than 5 years ago | (#25485751)

There are COBOL compilers for the PC, some are even free (even if they are a few years old). Google COBOL compiler or take a look at this site: Thefreecountry [thefreecountry.com] .

Included at this site are links to old favorites such as COBOL650 and Fujitsu COBOL compiler (student version).

Re:How do people learn it? (1)

tergvelo (926069) | more than 5 years ago | (#25485619)

I actually had not one but TWO classes on it at college. And I just graduated a year ago. The first was a really basic intro class, but the second had us writing a CICS app. A year after I took the second one, they replaced it with a VB.NET course, unfortunately.

I would look around at local colleges & universities if you really want to learn it.

As an aside, I landed my internship with those skills. As soon as I could, I found a job NOT using COBOL, for obvious reasons. But it's a great way to get your foot in the door or simply add value.

~t

Re:How do people learn it? (1)

nschubach (922175) | more than 5 years ago | (#25486129)

I took about 5 courses of it from 96-98 because everyone was afraid of the big bad 2000 bug. I couldn't stand it anymore and left to find a college that let me choose me language of preference. I think I'd kill myself if I had to do that for a living.. even at $120/hour.

Re:How do people learn it? (1, Informative)

Anonymous Coward | more than 5 years ago | (#25486231)

As for your LISP wishes.

Great (and free) book: http://mitpress.mit.edu/sicp/full-text/book/book.html

There is also a video series that goes along with the book taught by some MIT geeks back in like the early 80's or something:

http://groups.csail.mit.edu/mac/classes/6.001/abelson-sussman-lectures/

Good luck with that

How about we just mod you down instead? (1)

Smidge207 (1278042) | more than 5 years ago | (#25485073)

COBOL: Completly Outdated, Badly Overused Language
COBOL: Completly Overused, Badly Outdated Language
COBOL: Cowards Only Buy Outdated Languages
COBOL: Cowards Only Build Outdated Languages
COBOL: Crap Operated By Obsessed lunatics
COBOL: Crap Often Bothers Our Lethargy
COBOL: Crap Ostracized By Our Loathing
COBOL: Compiles Only Because Of Luck
COBOL: Cumbersome, Overdone, Badly Organized Language
COBOL: Coded Only By Obsessed Lunatics

s/Cobol/COBOL/g (1)

viridari (1138635) | more than 5 years ago | (#25485107)

COBOL is, after all, an acronym.

I heard there were some editors on the payroll but I have yet to see evidence of this.

Re:s/Cobol/COBOL/g (1)

Ant P. (974313) | more than 5 years ago | (#25485183)

The article title is actually a different typo, they're planning to send COBOL programmers to work on Kobol [wikipedia.org] .

This is why I'm keeping my Coldfusion skills up (2, Funny)

Anonymous Coward | more than 5 years ago | (#25485111)

Or as I refer to it "COBOL of the 90s"

Why is Cobol still alive? (3, Interesting)

mmxsaro (187943) | more than 5 years ago | (#25485113)

Why is Cobol still alive and in demand? What's so good about it? Why can't we just port everything over to a newer language and be done with it?

Doesn't it cost more to keep paying these rare programmers than to just update/convert/replace the systems?

Re:Why is Cobol still alive? (5, Insightful)

truthsearch (249536) | more than 5 years ago | (#25485205)

A company can spend a few million dollars rewriting and thoroughly testing a replacement system. Or they can spend less than 10% of that to have one Cobol developer keep the system up and running.

Very often, the old systems have been working smoothly for many years. A rewrite will bring a monstrous amount of headaches and cost, especially for key systems like financial transactions.

Re:Why is Cobol still alive? (1, Interesting)

Anonymous Coward | more than 5 years ago | (#25485391)

A rewrite will bring also an amount of opportunities to reduce operational costs, add new functionality, adapt the system to new business needs and don't pay outrageous consulting fees to ibm. Sometimes the best option is a complete rewrite.

Re:Why is Cobol still alive? (3, Informative)

truthsearch (249536) | more than 5 years ago | (#25485781)

Typically, with these old systems, adapting to new business needs and adding new functionality are done secondary to the core system. For example, at MasterCard all transactions eventually go through the ancient mainframe system. That feeds daily into a very modern data warehouse, where all the new applications perform reporting and analysis. These newer systems can be changed as often as necessary without any impact to the old mainframes.

Reduced operational costs and reduced consulting fees would very often be offset by the cost of the rewrite and ongoing maintenance of the newer system.

Re:Why is Cobol still alive? (1)

VeNoM0619 (1058216) | more than 5 years ago | (#25486223)

Yes, if we follow the "rewrite for the newest method", we would never have a stable and reliable platform. Hell, lets just write in assembler, then rewrite it all for C, then rewrite it all for COBOL, then C++, then VB, then JAVA, then C# then whatever new language is out and is "popular" the next year (AJAX? RUBY on rails? Honestly, I don't know whats the 'in' thing this year)

Disclaimer: that's probably not the order you want to rewrite them in.

Re:Why is Cobol still alive? (1)

CRCulver (715279) | more than 5 years ago | (#25485209)

If an old mainframe is still doing it's job and there's no need for anything more, then junking it and buying a new computer would be pretty environmentally irresponsible, wouldn't it?

Re:Why is Cobol still alive? (1)

91degrees (207121) | more than 5 years ago | (#25485287)

If an old mainframe is still doing it's job and there's no need for anything more, then junking it and buying a new computer would be pretty environmentally irresponsible, wouldn't it?

Well, in this respect, a low power laptop is probably going to outperform some of the older mainframes (some organisations run 30 year old systems) so I'd say you can repay the environmental debt pretty quickly. The sense of replacing a proven system with an untested system is the main concern here.

Re:Why is Cobol still alive? (5, Funny)

McSnarf (676600) | more than 5 years ago | (#25485357)

The thing is - most mainframe custoemrs kept up with hardware changes. Old code written on a 370 will still run (as binary) on modern mainframe hardware, which will, of course, run circles around the usual unix box and floss it's teeth with ripped-off heads of web designers.

Re:Why is Cobol still alive? (1, Insightful)

Anonymous Coward | more than 5 years ago | (#25486031)

"The thing is - most mainframe custoemrs kept up with hardware changes. Old code written on a 370 will still run (as binary) on modern mainframe hardware, which will, of course, run circles around the usual unix box and floss it's teeth with disemboweled intestines of web designers."

Sorry had to change it. I could see using their pointy heads like a dental pick, but not floss.

Re:Why is Cobol still alive? (1)

Hognoxious (631665) | more than 5 years ago | (#25485379)

Right, because cobol only runs on mainframes, and mainframes can only run cobol.

P.S. it's = it is/it has.

Re:Why is Cobol still alive? (0)

Anonymous Coward | more than 5 years ago | (#25485229)

Come back to Digg, asshole.

Re:Why is Cobol still alive? (5, Interesting)

Ngarrang (1023425) | more than 5 years ago | (#25485233)

Why is Cobol still alive and in demand? What's so good about it? Why can't we just port everything over to a newer language and be done with it?

Doesn't it cost more to keep paying these rare programmers than to just update/convert/replace the systems?

Because it is cheaper to patch code written in 1970, than re-write it and go through the QA process to insure the end product does the same thing.

That is why.

Re:Why is Cobol still alive? (2, Insightful)

AppyPappy (64817) | more than 5 years ago | (#25485463)

Especially when you are not really sure what the code does. If it works, you try not to mess with it. Many of these systems were written when memory was pricey and variable names cost something. It can be hard to figure out what they did when you are trying to analyze a variable called WC03-IDX that is used 62 times. COBOL may be "fat" but memory and processors are cheap now. I worked for a company that hired non-programmers to cut code and handle maintenance. It was all in COBOL. Nice, easy-to-read-at-2AM COBOL.

But I still live in fear of CICS.

Re:Why is Cobol still alive? (1)

Kozz (7764) | more than 5 years ago | (#25486033)

Because it is cheaper to patch code written in 1970, than re-write it and go through the QA process to ensure the end product does the same thing.

Unless you're actually talking about insurance (which I suppose you technically could) the word you're looking for is "ensure". </pedantic>

Re:Why is Cobol still alive? (2, Interesting)

bonch (38532) | more than 5 years ago | (#25485273)

If you have a financial institution running on an existing reliable mainframe, why would you disturb that? In the real world, updates don't happen all that often if something already works.

Re:Why is Cobol still alive? (1)

dgatwood (11270) | more than 5 years ago | (#25485759)

Depending on what sort of mainframe we're talking about, the answer quite often is "...because when that existing reliable mainframe takes a lightning hit, you'll probably have to rewrite the software in a modern language to run on a modern system anyway because you won't be able to get parts to fix the ancient behemoth."

Good managers realize that bad things happen and they try to plan major changes like that ahead of time so that they can happen on their terms instead of on somebody else's. Even in the best case scenario, your business needs will eventually dictate that you enhance that core system in some way, and over the long run, doing so in such a legacy language will likely cost more money, take more time, and hinder the ability of your business to move rapidly as market needs dictate.

Also, assuming they really are still using big iron and aren't just emulating it on a desktop PC, the power costs for operating one of those things will rapidly cover the cost of hiring engineers to rewrite it in a modern language, test/certify it, and deploy it on a digital wristwatch with a much faster CPU.... Okay, I'm exaggerating a little there, but you're probably talking about a few tens of thousands of dollars per year in power. If it takes two years to rewrite it, the power savings alone from running on a much smaller machine will probably cover the cost after a single-digit number of years.

Further, if the new software can be made more user-friendly (GUI, for example), the savings in personnel costs (being able to hire fewer employees to get the same amount of work done, lower retraining rates due to employee turnover from burnout, lower new employee training costs, shorter new employee training time, etc.) can help recoup the cost of the software rewrite even more rapidly.

Continuing to rely on legacy systems for critical business needs without having any sort of transition plan is pretty reckless and irresponsible, IMHO.

Re:Why is Cobol still alive? (1)

GreatRedShark (880833) | more than 5 years ago | (#25485283)

Because even if they WANT to replace it, that process could take several years, depending on the complexity of the system.
Business needs change and evolve. The mainframe has to keep up.
Even if your long term plan is to replace it, it's not just as simple as "stop using the old system and switch to the new one tomorrow".

Re:Why is Cobol still alive? (1, Interesting)

Anonymous Coward | more than 5 years ago | (#25485289)

Back when I was in school, my COBOL prof brought a statistic up to everyone. There are more lines of code written in COBOL than every other language combined. We asked him the same thing, and consider re-designing the frameworks and applications COBOL programs run on, as well as converting the code over. That would cost quite a bit. Keep in mind, if it ain't broke, don't fix it. Mainframe code doesn't need to be changed as often as other code.

We all thought BS, but when you think of all the systems that run anything related to nitty gritty banking transactions, invoicing, let alone any mainframe service... you start to realize that .NET and equivalent languages are just a small part in the presentation and application layers.

Re:Why is Cobol still alive? (1)

morgan_greywolf (835522) | more than 5 years ago | (#25485335)

Doesn't it cost more to keep paying these rare programmers than to just update/convert/replace the systems?

No. The applications, in most cases, were originally developed decades ago. By people who are probably either retired, dead, or are now developing Tcl code for NASA. The codebase is HUGE and full of embedded business logic. It's been tweaked and updated over the years, mostly by contract COBOL coders, who are getting more and more sparse as they age and die off (literally).

The problem is -- nobody left knows enough about these applications to re-implement them. And, more importantly, they still work, day-in, day-out, 24x7, with no significant problems.

Re:Why is Cobol still alive? (2, Insightful)

LWATCDR (28044) | more than 5 years ago | (#25485349)

Because it works?
A good programmer is a good programmer. They all cost about the same.
Really if you have a system that works why pay to reinvent the wheel? The pay to retest it.

So the answer is. Because it works.

Re:Why is Cobol still alive? (2, Interesting)

Applekid (993327) | more than 5 years ago | (#25485725)

A good programmer is a good programmer. They all cost about the same.

Although, the point of TFA is that the COBOL job market is heating up. As in, COBOL programmers are starting to command greater salaries due to a supply and demand.

Which, if it keeps going that way, will turn itself right around when the salaries (company expense) gets high enough to justify rewrites.

Re:Why is Cobol still alive? (1)

LWATCDR (28044) | more than 5 years ago | (#25486363)

Not really, as the salary goes up more people will brush up on their Cobol skills expanding the pool. In a company that is dependant on Cobol you will probably have some VB, C#, and or PHP/Perl/Python coders.
The best of them will see that learning Cobol is worth the effort and move into a Cobol seat.

Re:Why is Cobol still alive? (2, Insightful)

Ironsides (739422) | more than 5 years ago | (#25485353)

How much do you trust your paycheck to get to you on time with a brand new piece of code vs. one that hasn't had any problems in 30 years?

Re:Why is Cobol still alive? (2, Insightful)

jjohnson (62583) | more than 5 years ago | (#25485355)

On an industry wide scale, it probably does cost more to keep paying COBOL programmers to maintain legacy systems. But at any individual company, the short-term cost of paying a high hourly rate to an aging COBOL coder to keep the wheels turning is much less than the cost of rebuilding the system that's run the company for forty years.

Remember Schwarzenegger wanting to cut California state employee's salaries to minimum wage for the duration of a budget crisis? It was the state IT department that nixed that idea by pointing out that it would cost millions over the course of a year to execute that change. That's the situation in which many companies dependent upon COBOL find themselves. Pay someone $200 an hour to make minor changes, or face a years long rewrite costing millions (or a years long implementation of SAP costing tens of millions).

Re:Why is Cobol still alive? (5, Interesting)

Mariognarly (1026290) | more than 5 years ago | (#25485399)

It's alive because its ancient, and it was designed by the military. It was designed with the intent to be as robust as possible, and as simple as possible... and that's why it still runs the majority of mainframes today. Mainframe code also doesn't need to be changed that often. There just hasn't been any new latest and greatest features in any other language viable enough to justify a code conversion. My prof in uni was a COBOL guy, and his masters thesis touched on OOP vs top down single line programming featuring C vs COBOL, and the code complexity between the two. He showed us several applications written in C, and COBOL that did the same thing. More often than not the C code was 10-20 pages long, and the COBOL was 2-4. We usually could comprehend and update the COBOL code much faster than the C. The integration with databases was far more seamless, and it just was a really pleasant programming experience. Lots of kids (including myself) loved COBOL because it was easy to wrap their heads around it logically and structurally, while lots of the traditional OOP kids struggled because it was out of the norm of their experience. I believe the going rate for COBOL programmers back when I was in uni was $230 / hr. They were pulling a lot of people out of retirement to fulfill projects, and my prof was one of them. Kinda cool niche to the industry I think.

Re:Why is Cobol still alive? (2, Interesting)

dedazo (737510) | more than 5 years ago | (#25485427)

Because it's supported by companies like IBM. There's infrastructure and investment behind the whole thing, and firms have felt comfortable betting the farm on those types of technology for 30+ years. There's also a lot of money to be made supporting it.

The mainframe platform does move, albeit at a rather glacial pace. They've been doing Java for a few years now, as well as web-based interfaces as an alternative to terminals.

Re:Why is Cobol still alive? (3, Insightful)

DerekLyons (302214) | more than 5 years ago | (#25485477)

Why is Cobol still alive and in demand?

Because there still exists in the world companies and people that have priorities other than "the latest l33t technology".
 

Why can't we just port everything over to a newer language and be done with it?

Assuming the hardware can run the newer language of course... But you still have to face the same basic problem, in a few years your l33t "newer language" will no longer be l33t or newer - it's be the stodgy old stuff that only crusty old farts program on. What then? Go through the same exercise every five to ten years?
 
That sounds more like a recipe for keeping programmers employed, regardless of value, than it does for keeping a system stable and operational. (Which a large part of why IT is often viewed with such suspicion in many quarters - because the constant rewrite/upgrade cycle that keeps the IT departments e-penis turgid rarely seems to provide much of a ROI.)
 

Doesn't it cost more to keep paying these rare programmers than to just update/convert/replace the systems?

A handful of (COBOL) programmers costs the company just a couple of million dollars a year for a stable functional system. A stable of ($l33t_language) programmers costs about the same, plus the potential costs of hardware changes, plus the potential for months of disruption or loss of data...

Re:Why is Cobol still alive? (3, Interesting)

McSnarf (676600) | more than 5 years ago | (#25485525)

Now... As a former COBOL programmer - this is not just switching one outdated language to something new. For one, COBOL is actually excellent when it comes to doign things it was meant to do, which is commercial software. Need a choice of storing numbers in characters, BCD or float? Reasonable string handling (UNSTRING comes to mind) and a gazillion of other useful features? COBOL is somewhat limited, but very powerful for a certain, limited set of applications. PL/I can do about everything COBOL can - and better, but for some reason, it never became THAT popular.

(Now if it COBOL only had an ALTER ... TO PROCEED TO ... DEPENDING ON ... )

I doubt that you can translate it automatically into somewhat readable code in whatever language of choice you might have in mind. That, plus the fact that a lot of COBOL code in use today has been working (and been improved) for more years than Linus Torvalds spent on this planet so far, makes it difficult to replace. (Not to mention the side effects. Imagine rewriting - from scratch - a complex insurance application which comes with CICS (no problem, runs under loads of platforms nowadays), VSAM (you don't want to know) and other file access methods and tons of JCL written for a JES3 environment. Trust me - Unix is trivial by comparison. And you need to understand both to migrate the stuff.

Re:Why is Cobol still alive? (1)

EraserMouseMan (847479) | more than 5 years ago | (#25485695)

The legacy COBOL systems are huge and battle-hardened. It took millions upon millions of dollars to build them. It's always cheaper to hire a new $120k/yr developer than to rewrite the entire system.

To wean off of a system like this you have to write all new software in a hardened modern language. Then take chunks of the legacy functionality and methodically convert it over to the new modern-language-based replacement module.

Re:Why is Cobol still alive? (0)

Anonymous Coward | more than 5 years ago | (#25485765)

Because every other language, with exception of RPG and C, and maybe others will not be around 20 years from now.

Re:Why is Cobol still alive? (1)

Dammital (220641) | more than 5 years ago | (#25485839)

Because it lets us continue to run applications that are 30 years old or more.

See, bureaucracy gets a bad rap. It isn't, after all, a four-letter word. Bureaucracies let your business grind through the day-to-day stuff without constant intervention. Set up a proper bureaucracy and business can keep running through that flu epidemic, or those retiring employees, or that corporate takeover.

Sure they can be cumbersome and inflexible. But they can by god run themselves, if done right.

Now a 30 year old collection of custom COBOL code is an important part of our bureaucracy, and a contributor to our competitive advantage. (C.f. our poor brethren who had to shoehorn their business practices into a one-size-fits-some SAP implementation.) Sure we could rewrite our code base in something more fashionable... but why? If we GUI-fied it, Web-2.0ed it, XMLed and Guidoed it... at the end we would be doing the same stuff. (And someone would be nagging us to rewrite it in The Next Big Thing!)

But I'll meet you halfway. I would support SOAPing the code base. I'm not adverse to using a newfangled whizbang for a new application, but our existing applications were coded long before SOAP, and integration is a bugaboo. For us the expedient thing is to continue to write new COBOL code. Limited resources, lots of things to do. You know how that goes.

Re:Why is Cobol still alive? (1)

ChrisA90278 (905188) | more than 5 years ago | (#25486065)

There a many, many good things about COBOL. No it's not good at all for wrinng web based apps and device drivers. But there are features built into the language for DBMS interface and forreport writing. For example to write a report that has breaks and subheader andcolums change you don't have to write the logic, just specify how it should work. Soyou are wrinting at a level of 'what to do" rather then "how to do". Complex print formatting is the same. COBOL can use a "picture" rather than C's format codes. With a picture you in effect give an example of how a number is to be printed like say (from 20 year old memory) "$$$,$$#.##" which means float the $ sign and use a comma if needed and print at least the ones colum even if the value is less than 1.0. As I said. COBOL works at a high level is a well suited to the tasks for which it was designed.

COBOL can also do "exact" math. This is needed for business. For example say yo have $13,543,657,345.00 and you want to take 12.543530 percent of it and not have to worry about round off errors. COBOL can represend numbers as strings (well BCD) C,FRTRAN and the like would try to do this in floating point and you'd loose pennies, Accountants don't like losing pennies.

Basically COBOL was designed for dealing with data that is in a complex format both input and output. You more or les describe the format and let the compiler do the logic part, very much unlike C/C++/Java and so on.

But COBOL is not a "structured" language and is not suited for complex computation.

Re:Why is Cobol still alive? (1)

Mycroft_514 (701676) | more than 5 years ago | (#25486359)

How long is it going to take you to re-write one program I wrote in the early 80's - 5700 lines that includes some lines written by a program before it (1200 lines) and compiled without human intervention every time it is run?

How about programs where even the source code was lost?

Many many COBOL programs do things that defy the ability to use a program to translate them, so it is all a hand effort.

And COBOL is very very good at moving data from point A to point B, especially text data.

And finally, COBOL was one of the first languages that would cross machines. (And even though it is very similar across machines, there are still subtle differences.)

Consider this:

01 variable-name Pic 99v9 comp-3.

Statement A: Move 1 to variable-name.

Statement B: Compute variable-name = 1.

Statement A will crash and burn on many compilers, except the IBM compiler.
Statement B will work on all of the compilers.

However, when statement A crashes, most COBOL programmers look at it and can't even figure out why.

How many programmers can tell that difference who don't have the years of experience that a book will not give them?

Because it works. (2, Informative)

Shivetya (243324) | more than 5 years ago | (#25486371)

I know COBOL, I do not program in it for a living. The simple fact is that it works and it works well. Don't compare JAVA, C++, or C#, to it. Sorry those languages are so damn cluttered and so easily made incomprehensible it really is silly. The one thing I notice as a difference from COBOL (or similar) programmers compared to those using newer languages, the COBOL folks will use proven routines over the latest gee-whiz attempt to do it another way. I can go look into the C++ CMS and find a dozen ways to do the same damn thing because of developer ego or just plain ignorance. I have seen five lines of C exploded to a dozen lines simply because one guy didn't want to learn it or care to use something he didn't fully understand and was too sensitive to ask for help on.

I do code on the iSeries. I do RPG/LE, C, C++, SQL, and CL (iseries version of JCL). I can combine modules from each easily meaning I can easily make use of some of the COBOL our mainframers bring over. One or two minor changes and I have all the integrity of their routine which has been running for years. That running for years provides a great level of comfort that the other languages MUST earn. Declare the language of the week to be superior for whatever reason you want, it cannot provide the comfort level from proven existence and stability.

Would I want to go back to COBOL, not really. I will do so in a heart beat if it keeps me employed. I will do JAVA if necessary to stay employed but for ease of programming some of the older languages are where it is at. Now these languages are extended to share with other languages and you can embed SQL into IBM versions of SQL so you can have very good data access. All our interfaces to the web rely on COBOL/RPG backbones. The PC people tell us what they want and we deliver it. We might have one meeting to hash it out but for the most part we have our side done in a third of the time if not less.

Yeah, mainframe/mini bigot ... but I do each platform.

Finally, there is no reason to replace working systems just because you can. Businesses don't stay in business if they just replace it simply because someone has a woody over a glossy ad.

Re:Why is Cobol still alive? (5, Funny)

Locke2005 (849178) | more than 5 years ago | (#25486377)

Have you seen the documentation for those legacy systems?

Neither has anyone else!

Trust me, porting code you don't understand is not an option.

Re:Why is Cobol still alive? (1)

Kerelslied (1315717) | more than 5 years ago | (#25486403)

Why is Cobol still alive and in demand? What's so good about it?

Because COBOL is an immortal, by the time you have reimplemented half the code-base, your puny newer language will be death or dying, supported by archaic packages and paradigmas, a memory of past ignorance.

Short supply? (5, Informative)

dedazo (737510) | more than 5 years ago | (#25485139)

I'd disagree with that. Schools in India are still providing lots of people with mainframe skills. The whole shebang, like InfoMan, CICS, etc. Not just Cobol. At least that's my impression. I see a lot of people from Tata, InfoSys and IBM Global Services doing mainframe-centric maintenance and even new development at companies I have contact with these days.

You forgot the company's training programs. (2, Informative)

Anonymous Coward | more than 5 years ago | (#25485377)

All the big Hartford insurers have their own programs: The Hartford, Aetna, Travelers, United Health Care, and I can't remember the rest.

They're the big consumers of Mainframe Cobol.

By the way, the reason they are staying with Cobol isn't just because of their legacy code, it's also because mainframes are the only solution now that solves their business problems.

Don't get me started on "distributed systems" because I'll have to slap you silly. Mainframes solve problems that can't be solved by other solutions. That's why they still exist.

Hand me my walker, it's time to get paid (5, Funny)

AppyPappy (64817) | more than 5 years ago | (#25485191)

Cue up the Theme from Shaft, I'm ready to walk that aisle. Twenty-eight years later, I am ready for my place in the sun. You bunch of Java-smoking hippies make a hole cause I'm coming through. I told you that personal microcomputers were a flash in the pan. Take your Winchester drives and Hercules graphics and shove em up your ass. Big Iron is here to stay.

Dammit, where are my car keys? Honey, where are the keys to the Citation?

Oh, well. . . let's do this (0, Flamebait)

inaneframe (971456) | more than 5 years ago | (#25485239)

*Browses over to Amazon for a COBOL book and adds a meatgrinder to the shopping cart*

While I'm emulsifying my brain I may as well do the same to my manhood.

Is this a repeat? (1, Insightful)

Anonymous Coward | more than 5 years ago | (#25485371)

Didn't I see this same headline 2 years ago? And 2 years before that? And another 2 years before that? And there was that big "post-y2k-bugs need cobol programmers even more!" 2 years before that ... and of course, the "Need for cobol programmers for pre-y2k" each of the 2 years before that ...

Seriously, we get it. Every even year, someone is required to post an article stating that the need for cobol programmers is increasing.

Can yah shut up about it now?

The need for C, C++, Java, *.NET, and other language programmers is also increasing, and it so far outstrips the need for cobol programmers that they're statistically insignificant, and that includes factoring in any salary differences.

I'm a 33-yr-old COBOL guy (5, Interesting)

daemonenwind (178848) | more than 5 years ago | (#25485405)

A couple of things people should realize when thinking about getting into mainframe/cobol:

1. COBOL programmers are 99.9% baby boomers. If you want to spend your next decade getting talked down to by a 50-something or 60-something who thinks they're a programming god because of their teaching degree and 30 years writing COBOL, then you're probably into leather and whips, and would be happier staying in your dungeon. That's just my opinion, I could be wrong.

2. COBOL is not challenging to learn (it's designed that way), and the programming tasks are largely mundane. You'll be working almost exclusively on data processing tasks, because that's what the mainframe does best: massive throughput of number crunching.

3. You shouldn't just learn COBOL, you should spend time with JCL and DB2's version of SQL, and some CICS concepts would serve you very well. But without JCL and DB2, you're practically useless anyway. But they're not hard to learn.

4. zOS also runs Java now, so if we just stay back and let it rot, eventually perhaps they'll just throw it all to Java.

5. It's hard to just "take a class" on COBOL, but forward-thinking companies are starting to train people like disaffected teachers, just like what was done in the 70's. So if you want to work with/clean up after that sort of developer....

If, after all this, you really want to know more, IBM has most of the useful documentation online.
http://www-01.ibm.com/software/awdtools/cobol/zos/library/ [ibm.com]

But the "dummies" book should serve you very well.

Oh, and once you start working with them, expect lots of, "Why does my PC do this", kind of questions, because most of the COBOL people I've met in shops aren't very technical. (IBM people are bright enough though)

Re:I'm a 33-yr-old COBOL guy (1)

phantomcircuit (938963) | more than 5 years ago | (#25486141)

Do you make anymore writing COBOL than you would doing something else? If so how much more?

Those are the important questions to ask here.

What am I Bid, What am I bid? (1, Funny)

Anonymous Coward | more than 5 years ago | (#25485419)

Somewhere I have a 1970's vintage Cobol text book. Any takers?

What do Cobol programmers actually do? (0, Flamebait)

91degrees (207121) | more than 5 years ago | (#25485439)

I'm intrigued about this so hoping there might be a COBOL programmer to answer. Have the applications been ported to newer hardware, or are some banks still running ancient machines based on transistors and 1st generation microchips?

I'm surprised there's still code to maintain on these old workhorses. Surely every bug must have been discovered by now, and every feature anyone could want added. Obviously not but what do COBOL programs need done to them?

Oh, and guys - you can type directly on one of these new fangled desktop computers. No need to use punch cards.

Re:What do Cobol programmers actually do? (1)

daemonenwind (178848) | more than 5 years ago | (#25485543)

I know I do a bit of a poo-poo job on mainframe development below, but I have to say: despite the terminal emulator, mainframe hardware is pretty godly.

5 nines uptime (99.999%)

Hot-swappable CPUs

Fail-predictive hardware throughout - an IBM tech will be at your door with replacement hardware before you even know it's going bad.

And the development environments aren't some freeware/just hacked together things. The tools have been developed by pros over the last 30 frickin' years. It's a very, very solid platform. And things like "dll hell" don't exist there. If you have decent admins (which is not uncommon), actually doing work in a mainframe environment can be pretty nice.

Re:What do Cobol programmers actually do? (1)

killmofasta (460565) | more than 5 years ago | (#25486075)

Hot Swappable CPUs? Your so like 90s and stuff, these days, the zSeries mainframes have the CPUs already there, they can just turn them on and off like a light switch!

Re:What do Cobol programmers actually do? (1)

killmofasta (460565) | more than 5 years ago | (#25485971)

We havent heard from any Cobol programmers in years, they all went into suspended animation until the year 3000. They took their sharpened pencils and CODSYL approved 80 column forms with them!

Probibly the oldest code still running, is LEGACY COBOL code because its an older language than BASIC!

Every feature has not been added. Oh Hold your sickness bags. Are you Ready? Visual Cobol! Now you can safely co-develop c# applications side by side with your Cobol dinosaurs!

Shush about the punched cards. I still need them for christmas tree decorations!

Re:What do Cobol programmers actually do? (1)

Hognoxious (631665) | more than 5 years ago | (#25486209)

Surely every bug must have been discovered by now, and every feature anyone could want added.

You think that what businesses do and how they do them don't change over time?

if it still moves, shoot again (1)

fph il quozientatore (971015) | more than 5 years ago | (#25485485)

Damn, we should've followed the evil Overlord list [eviloverlord.com] .

13 - All slain enemies will be cremated, or at least have several rounds of ammunition emptied into them, not left for dead at the bottom of the cliff. The announcement of their deaths, as well as any accompanying celebration, will be deferred until after the aforementioned disposal.

time flies (4, Funny)

Anonymous Coward | more than 5 years ago | (#25485521)

Is it 9999 already???

Cobol is primed for a comeback? (3, Informative)

killmofasta (460565) | more than 5 years ago | (#25485639)

And so is Brain Damage:

"The use of COBOL cripples the mind; its teaching should, therefore, be regarded as a criminal offence." (1968) - Dijkstra

Until this story was posted. (0, Troll)

Sj0 (472011) | more than 5 years ago | (#25485735)

Yes, COBOL was an excellent skill, until it was posted here. Now every two-bit hacker is going to learn COBOL so they can apply everywhere.

Reminds me of turbolinux, or whatever the last big bubble IPO was. It was posted on linux, and I knew then and there that I was looking at a stock that would be skyrocketing. It ended up making some investors something like 1000% profit, and I'm positive the fact that it was posted here contributed.

Uh... (0)

Anonymous Coward | more than 5 years ago | (#25485865)

I'D RATHER SHOOT MYSELF = YES

Or you could learn C/C++ (0)

Anonymous Coward | more than 5 years ago | (#25486013)

C/C++ developers are worth MUCH more than Java and .NET developers. The fact is, as programming languages get simpler to use, the amount of money you can make from coding in them goes down. Like Cobol, a LOT of critical C/C++ code has been written and deployed, and since most new programmers turn their noses up at these languages in favour of Visual Basic, Java and .NET, the market for these skills is much more profitable.

This only matters to those who know it. (1)

thetoadwarrior (1268702) | more than 5 years ago | (#25486143)

Seriously, at this stage no one wants a beginner COBOL programmer and by the time I learn COBOL (which will probably take forever since I have zero care about it) it's little surge will probably be long gone.

Translate to something more pleasant (2, Interesting)

davecb (6526) | more than 5 years ago | (#25486249)

Many moons ago, I wrote a disassembler that emitted mock "c" syntax, which I could turn into real C with a few global substitutes.

You can do the same with normal assembler syntax and an ad-hoc parser, and therefor you can turn the "accountant's assembler" from add foo to bar giving zot to zot = foo + bar;

This is just a special case of the semantics-preserving transformation problem, which my old employer used to do on a daily basis (I worked in a porting shop).

And yes, I'll do this for money if asked (;-))

--dave

Just think of COBOL as a scripting language (3, Informative)

Animats (122034) | more than 5 years ago | (#25486311)

Just think of COBOL as a scripting language for business applications. Yes, the syntax is wordy. But the big advantage of COBOL isn't in the procedural code. It's in the data declarations. COBOL has very clear ways to talk about external data structures, and good integration with external data in files and databases.

It's a trick! (3, Funny)

Locke2005 (849178) | more than 5 years ago | (#25486323)

I used to joke about "Visual Cobol" being the next big thing in computer languages... that is, until I learned that it's a real product [amazon.com] !
I still think this is a trick to get all those Chinese and Indian software engineers to train for a worthless language, so we can get our old jobs back...

Look up the acronym (1, Insightful)

Anonymous Coward | more than 5 years ago | (#25486345)

Everyone who wonders why COBOL still exists should recall the oft repeated advice to use the language that is best suited to solving the problem. Then look up the meaning of the acronym. COBOL is the acronym for COmmon Business-Oriented Language. COBOL still exists because it was designed to implement business applications and most businesses, wonder of wonders, rely on business applications.

That and "if it works don't break it."

Load More Comments
Slashdot Account

Need an Account?

Forgot your password?

Don't worry, we never post anything without your permission.

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>
Sign up for Slashdot Newsletters
Create a Slashdot Account

Loading...