Video summary
COBOL: The Language Your Bank Is Afraid to Touch
Main summary
Key takeaways
Main ideas, concepts, and lessons
-
Cold War pressure drove a need for portable business software
- After the Soviet Sputnik launch (Oct 4, 1957), the U.S. massively increased spending on science, defense, and computing.
- The Pentagon needed large volumes of software quickly, often written by people not necessarily trained in mathematics.
- Major issue: every computer vendor had its own assembly language (IBM, Univac, Honeywell, Burroughs, etc.).
- Result: programs were machine-specific, forcing the government to rewrite software repeatedly for different systems.
- DoD concluded it was spending more on translating software than on buying hardware.
-
A government-led effort created a standard business programming language
- In April 1959, the U.S. Department of Defense convened a meeting in Washington with a “simple on paper” goal:
- Agree on one common programming language for business data processing
- The language should run on any machine
- A committee produced a language, and Grace Hopper (a Navy officer) pushed the standard forward despite resistance from major computer manufacturers.
- The language was COBOL: Conference on Data Systems Languages.
- In April 1959, the U.S. Department of Defense convened a meeting in Washington with a “simple on paper” goal:
-
COBOL’s defining philosophy: readable code for non-mathematicians
- Hopper’s earlier tool, Flow-Matic, influenced COBOL’s syntax by translating English-like statements into machine instructions.
- The argument (as presented): to enable non-mathematicians to write software, the language must look like something they can read.
- The 1959 committee used Flow-Matic as the primary source for syntax.
-
COBOL structure: four divisions
- A COBOL program is divided into:
- Identification Division: names the program
- Environment Division: describes the hardware environment
- Data Division: defines variables, fields, and file structures
- Procedure Division: contains the program’s actual logic
- Explicit design goal: a bank manager (non-programmer) should be able to follow a COBOL listing.
- A COBOL program is divided into:
-
Rapid adoption and long-term dominance in business systems
- COBOL spread quickly through the 1960s.
- By 1970, there were more COBOL lines in production than any other language.
- Adoption drivers:
- Federal government requirements
- Banks, insurance companies, and payroll systems
- IBM’s System/360 (1964) accelerated adoption:
- It supported COBOL natively
- Organizations wrote COBOL apps because the compiler and support were readily available
- The core reason it persisted:
- Systems were built to run for years and decades
- Organizations avoided disruption because the cost/risk of change was high.
-
Scale and ubiquity of COBOL today
- The video cites estimates such as:
- ~220 billion lines of COBOL in active production
- Processing roughly $3 trillion in commerce
- Examples mentioned:
- SSA (Social Security Administration) payments
- IRS tax processing
- About 95% of ATM transactions touching COBOL
- Retail card settlement at grocery stores likely using COBOL on the bank side
- The video cites estimates such as:
-
Why banks avoid changing COBOL
- Fear of breaking systems is central.
- Many systems reportedly have had:
- Minimal modification since the 1970s/1980s
- Edge cases already handled over decades (rare transactions, tax edge cases, leap-year logic, etc.)
- Replacement attempts can fail:
- Commonwealth Bank of Australia: ~5 years, ~$750M (2008–2013), abandoned much of it
- UK TSB Bank: migration (2018) caused customer lockouts, CEO resigned, significant compensation/remediation costs
-
Grace Hopper’s lifelong influence and the “port” metaphor
- Hopper’s career details are used to reinforce her role:
- Nobel-era computing work (Mark I/Mark II)
- “Bug” story from a moth trapped in a relay
- Built Flow-Matic and pushed COBOL standardization
- She continued lecturing into her 80s with a “nanosecond” wire and explained satellite communication lag.
-
Quote (as presented) from a 1987 David Letterman interview:
“A ship in port is safe, but that’s not what ships are for.”
-
The video frames an irony:
- What she helped create became the industry’s safest “port”—hard to move because of reliability.
- Hopper’s career details are used to reinforce her role:
-
COBOL’s durability is a feature: backward compatibility
- COBOL evolved, but the video emphasizes continuity:
- COBOL 2002: adds object-oriented features
- COBOL 2014: floating-point improvements and better Unicode support
- Programs written in 1972 can still compile and run on modern systems.
- The video claims backward compatibility is carefully maintained so that older programs remain operational.
- COBOL evolved, but the video emphasizes continuity:
-
Ongoing demand due to retirements and recurring crises
- Y2K (1999) made COBOL’s importance visible:
- Two-digit years like “99” could be read as 1900 instead of 1999
- Large portions of the $300B global fix were in COBOL
- Many COBOL programmers were brought back because they were the only ones who understood the code
- A similar pattern is described for 2020 COVID-19 disruptions:
- Some state systems failed when unemployment claims spiked
- New Jersey asked for COBOL programmers urgently
- Kansas Governor Laura Kelly asked on TV for volunteers with COBOL knowledge
- Workforce issue:
- Average experienced COBOL programmer age is estimated over 55
- Mitigation efforts:
- IBM training programs with universities (since 2019)
- Online courses
- MicroFocus modern tooling (IDE integration, cloud/Kubernetes/container support)
- Y2K (1999) made COBOL’s importance visible:
Bullet-point methodology / instruction-like content (if any)
-
Standardization approach (historical process described)
- Convene a government committee to:
- Select a single common language for business data processing
- Ensure it can run on multiple hardware platforms
- Use an existing compiler/syntax concept as a foundation:
- Apply ideas from Flow-Matic (English-like statements translated to machine instructions)
- Define a clear, structured program format:
- Identification
- Environment
- Data
- Procedure
- Maintain strict backward compatibility to preserve long-running systems:
- Keep old COBOL code compiling/running across decades
- Convene a government committee to:
-
Modernization/continuity approach (as implied by current tooling)
- Instead of rewriting everything:
- Use modern COBOL compilers/tooling (e.g., IDE/cloud features)
- Run COBOL in containers (e.g., Kubernetes) alongside other services (e.g., Python microservices)
- Instead of rewriting everything:
Speakers / sources featured (as mentioned in the subtitles)
- Grace Hopper (Navy officer; central figure credited with pushing COBOL)
- David Letterman (interviewer referenced for Hopper’s quote)
- Laura Kelly (Governor of Kansas; asked for COBOL volunteers on television)
- United States Department of Defense (convened meeting in 1959)
- Soviet Union (launched Sputnik—trigger for the funding/computing surge)
- IBM (System/360 support and training programs with universities)
- MicroFocus (modern COBOL compilers/tooling)
- JP Morgan Chase (publicly acknowledged COBOL systems)
- Wells Fargo (made similar disclosures)
- Bank of America (made similar disclosures)
- Commonwealth Bank of Australia (described COBOL replacement effort)
- TSB Bank (described failed migration)
- Social Security Administration (SSA) (COBOL use)
- IRS (COBOL use)
- New Jersey (asked publicly for COBOL programmers)
- Kansas (governor-led request)