But most of what I've dealt with, they don't.
They guys who have been writing COBOL for 40 years are good at it. They would be good in any language. I'm talking about the average guys, working on the average apps. I don't know how COBOL is taught is schools today, except that I think it's only taught in India. (I've never talked to am American COBOL jockey under 40.) And those guys are completely wedded to nightly batch and quarterly release cycles.
But it's the business users who drive me insane. They just assume that's how it has to be, because all the computer guys they deal with have trained them and taught them the language. "Send me a sample file ... run the cycle ... how many records will you be sending ..."
You know, I don't think it's really a COBOL vs. $other issue. It's about people who don't get what databases are for and what they can do. And this goes for programmers as much as it does for business folks. I've seen guys re-invent sorting in Java, cursors in VB, foreign keys in C++, filter criteria in PHP.
I came up using SQL databases. When you have data, you keep it in a database, not a file. When you want data, you query a database, not a file. I deal every day with people who just don't think that way. And a lot of them think in COBOL.