Cobol, Gateway To the Web?
But there's a sexier reason to learn Cobol than just to maintain or port old code.
Cobol is a key element in the realization of modern distributed business software architecture conceptsXML/metadata, Web Services, Service Oriented Architectureand e-business. Not a trendy element, or you'd see Cobol sessions at the next Web 2.0 conference. But a crucial element. Lemmel sees the essence of metadata in Cobol's IDENTIFICATION and ENVIRONMENT sections and of Web Services in its CICS transactions.
The very concept of a Cobol application is something of an oversimplification. Cobol programmers work with a collection of technologies tied together in ways that have some similarities to SOA models. Scott McMahan in an e-mail says, "If you want to understand modern Cobol, it's a glue language. IBM has a 'stack' of technologies for data processing like CICS, DB2, IMS, VSAM, ISPF, etc., which are glued together using Cobol."
The role of the Cobol programmer in moving from traditional implementations to web-based models can take many forms.
The programmer may bridge between Cobol code and new apps, which requires understanding Cobol, the business rules underlying legacy Cobol code, and modern languages and systems. With the emergence of SOA and IBM's Language Environment, with its common runtime environment, existing Cobol code can be integrated with other code more easily.
The tools available for integrating Cobol and the Web are evolving quickly. Veryant is making it possible to do Web 2.0 development directly in Cobol: "the same graphical resizing of windows that is part of most Web applications today is now easily implemented for Cobol program end users." Micro Focus, through its partnership with Microsoft, is developing strong SOA support for Cobol app development. And Fujitsu considers its support for allowing Cobol programmers to program directly to the Web "several steps forward" beyond migrating code. You can, for example, embed Cobol code in ASP+ pages or write Web Services directly in Cobol.
"This is the quiet reality," Crook says, "the business world runs on Cobol [and] Cobol today is a very modern language that continues to leverage its historical strengths for delivering new value to the business fast."