People tend to have two differing views of COBOL:
- One group fully back COBOL.
- The other group is made up of COBOL sceptics.
As is often the case, the truth lies somewhere in the middle. There are no better or worse languages – simply different ways of using them. In this article, I show both sides how to find the middle ground.
Why COBOL does not appear to be attractive
- No fast familiarisation
Python: two lines of code and you get a result.
JavaScript: open your browser and you’re ready to go.
COBOL? You need a dedicated compiler, an appropriate IDE (usually a proprietary one), and it is often hard to know where to start.
- No community
GitHub features thousands of projects and active community for modern languages. But there is nothing comparable for COBOL.
- No value for your own projects
You want to develop a tool, work on a small project or a small service? COBOL has little to offer. It is not made for creative experiments or to teach yourself to develop.
Conclusion: COBOL is not a language to quickly implement an idea or be highly visible.
But COBOL is well placed for other tasks
This is not the place to reiterate the importance of COBOL for banks, insurance providers, or public sector bodies, nor to re-state how many million lines of COBOL code are used every day. None of this is a convincing reason for young developers to engage with COBOL. These facts constitute a business problem not a problem for young developers.
What can make COBOL attractive
Trotz seines Alters wird COBOL weiterentwickelt und in moderne IT-Landschaften integriert. Einige Punkte, die COBOLheute moderner machen:
- Cross-compiler such as P3/COBOL: these enable combinations of COBOL and Java. They allow for the use of modern Java ecosystem tools (such as REST-APIs, SQL/NoSQL databases, message brokers and more).
- Modern IDEs: today, developers can write COBOL in development environments like Visual Studio, Eclips and more – no more “Vim-Only” feelings.
- Modern tools: Git, CI/CD, container technologies – all of these are now also used in COBOL projects.
How businesses can improve
Rather than repeatedly declaring COBOL to be fit and healthy, businesses should understand what hurdles developers face on their journey with COBOL – and work to remove these hurdles:
- Provide an accessible, well documented development environment:
- Make trial versions available for people interested in COBOL
- Businesses should approach young people – and not the other way round
- Offer interesting, practical bootcamps to identify talent early
- Publish open source examples or sandbox projects
- Share COBOL experiences – what is going on now, what might a normal business day look like?
- Crucially: no unrealistic expectations. Nobody has 50 years of COBOL experience aged 20. Expectations should be realistic and transparent.
- Provide an accessible, well documented development environment:
What young developers can do - a guide
If you are open to a career working with COBOL and understand its potential, then the following plan could help you:
- Learn the basics
There are insightful tutorials and YouTube courses that help you get started. - Use free development environments
If you don’t have access to a proprietary compiler, use GnuCOBOL. There are even Docker images for a quick set-up. - Implement a small learning project
COBOL excels at processing data. Start with something tangible, for instance: migrating data from ISAM files to an SQL database. - Deploy modern tools
Git for version control
GitHub/GitLab for publication
Docker for reproducable environments
- Learn the basics
COBOL will never be a trendy language – but if you have the right mindset you can easily become a professional. And who knows, perhaps you will be one of a few who can really combine alt with new.