6 ms·
Started my career doing Y2K stuff in 1998 and I still touch COBOL here and there today. I have a 10,000 line CICS program that runs every 30 seconds that I wro
by cwbriscoe 2y ago
Started my career doing Y2K stuff in 1998 and I still touch COBOL here and there today. I have a 10,000 line CICS program that runs every 30 seconds that I wrote in 2010. It has never failed since.
- bdjsiqoocwk 2y agoI don't understand these "never failed" comments. Without further context, it's meaningless. If I write a python script and never change anything in its environtment or inputs, it won't fail either. That's not specific to cobol.
- kibibu 2y agoI imagine the backwards compatibility story of COBOL is a little better than Python's
- _old_dude_ 2y agoCOBOL changes very slowly, once in a decade or two. Python does not offer support of a release for more than 3 years and a half [1]. [1] https://en.wikipedia.org/wiki/History_of_Python https://en.wikipedia.org/wiki/History_of_Python
- yieldcrv 2y agoBut a compute instance or bare metal computer that never needs a new release wont have to deal with that in python either Its only new builds on someone else’s computer that have this modern issue
- 0cf8612b2e1e 2y agoI could believe there are legacy installations happily humming away on Python 2.7 without issue.
- remlov 2y agoSeveral years ago I briefly worked at a major telecommunications provider with services across the southern United States that ran Python 2.4 on their production provisioning servers. Worked just fine.
- gavindean90 2y agoThe difference being that the COBOL is still supported after a decade.
- int_19h 2y agoActiveState still offers a supported Python 2.7 version across all major platforms for those who need it (https://www.activestate.com/products/python/python-2-7/ https://www.activestate.com/products/python/python-2-7/), so that's 14 years and counting. If enough stuff needs it, people will keep it running. Java 8 will probably be in the same boat eventually if/when Oracle finally drops support.
- 0cf8612b2e1e 2y agoI am not even sure what support is needed at this point. The interpreter is what it is. You know there are no new libraries to integrate. I guess deploying it on a newer OS which might make it challenging to install unless it is a freshly compiled build?
- int_19h 2y agoPatches for security issues, most notably.
- ang_cire 2y agoIf you're actually patching your python installs, that is by no means certain.
- _w1tm 2y agoI don’t think those mainframes running COBOL are getting patched either.
- ang_cire 2y agoThey absolutely are. Modern COBOL (even 25 year old COBOL) isn't running on ancient System360/370/390s or something, it's running on modern z/OS mainframes.
- cwbriscoe 2y agoYup, Z/OS even has an AIX subsystem these days. I have had to use it for some java decryption software and to use it to do some ebcdic to ascii conversion.
- p_l 2y agoThey are patched up regularly. The COBOL code itself maybe not, but the runtimes?
- cwbriscoe 2y agoYou are correct, the OS is patched regularly but that doesn't require a recompile for the COBOL code, the OS ABI is stable and unchanging for legacy code. I have programs still running that hasn't been recompiled since 2005 (maybe earlier that is just what I noticed recently). When they upgrade hardware, they can do it per LPAR. They just shift the workloads over to other LPARS while they are upgrading another. Pretty much zero downtime.
- p_l 2y agoYep. CICS, IMS, etc. all get updates along with z/OS itself, yet I had once plugged in an user exit written and compiled before 64bit z/OS existed and it just worked.
- tannhaeuser 2y agoI understand the context to be that COBOL, as a DSL for batch processing, declares its .data and .bss segments, or the equivalents on host systems, statically in the DATA DIVISION and usually doesn't dynamically allocate memory. This, coupled with CPU, memory, and I/O bandwidth reservation from a job scheduler on an exclusive hot-swappable partition on a host (z/OS aka MVS) plus USVs, redundant disks/disk ports, and networks makes "never fail" much more a consequence and primary objective of mainframe architectures where COBOL workloads are usually run.
- Spooky23 2y agoIf the python script has external dependencies… lol.
- supportengineer 2y agoThat's what I liked about developing Oracle stored procedures activated by cron jobs. Ran for 5 years, no maintenance needed.
- lloydatkinson 2y agoThat seems like a low barrier of expectations. I can think of several DB's that would run exactly like that.