When the Government Accountability Office reported in 2016 on legacy federal IT systems, of the 10 oldest systems it highlighted, three of them use COBOL, the better-known acronym for the programming language Common Business-Oriented Language.
Among the systems that still use COBOL are a Department of Veterans Affairs system that automates time and attendance for employees, timekeepers, payroll and supervisors; another VA system that tracks claims filed by veterans for benefits, eligibility and dates of death; and a Department of Homeland Security system that tracks current and prior hiring actions and maintains information about individuals who are selected for vacant positions.
Why are so many federal systems still running a programming language that was invented before President John F. Kennedy took office? And how did it become so prominent across the government?
One of the driving forces behind the development of COBOL was the need for a common business language that could work across different computers, since “the need to completely reprogram manually in order to shift applications to another make or model of computer causes unacceptable delays,” according to a summary of a meeting the DOD called in late May 1959.
However, over the next few decades, COBOL would become prevalent not just in DOD systems but across the government.
WHAT Is COBOL?
Grace Hopper directed a team that developed early COBOL applications. Photo credit: Smithsonian Institution/Wikimedia Commons
In March 1959, Mary Hawes, a Burroughs Corporation programmer, called “for computer users and manufacturers to create a new computer language — one that could run on different brands of computers and perform accounting tasks such as payroll calculations, inventory control, and records of credits and debits,” according to the National Museum of American History.
A later meeting pushed DOD to sponsor a conference to create such a language. At the meeting the Pentagon called, which 41 people attended, participants envisioned a programming language that would make use of a basic kind of English and make it possible for managers, programmers and systems analysts to communicate with any available computer, the meeting summary, from the Annals of the History of Computing, notes. It would also reduce the need to standardize hardware and be able to be changed relatively easily.
The meeting lead to the creation of a steering committee and short-, intermediate- and long-range committees. The steering committee met on June 4, 1959, and agreed to name the entire activity as the Committee on Data Systems Languages, or CODASYL, and to form an executive committee. The short-range committee included representatives from industry as well as the Air Force, Navy and National Bureau of Standards (now the National Institute of Standards and Technology), according to the Concise Encyclopedia of Computer Science, edited by Edwin D. Reilly.
The committee largely examined the FLOW-MATIC, AIMACO and COMTRAN programming languages. FLOW-MATIC's inventor, Grace Hopper, also served as a technical adviser to the short-range committee, according to “A View of the History of COBOL,” by R.W. Bemer.
At a mid-September meeting, Bemer suggested the name of COBOL for the language (other suggestions included “BUSY” (Business System), “INFOSYL” (Information System Language) and “COCOSYL” (Common Computer Systems Language).
Over the course of the summer of 1959, the short-range committee refined the specifications for COBOL, but they fell short of the executive committee’s expectations. A smaller subcommittee was formed to finish the work, which included Gertrude Tierney and William Seldon of IBM, Howard Bromberg and Norman Discount of RCA, and Vernon Reeves and Jean Sammet of Sylvania. The executive committee approved the specs on Jan. 3, 1960, and sent them to the government printing office, which printed them as COBOL 60.
WHEN Was COBOL Introduced?
Photo credit: CODASYL/Wikimedia Commons
Throughout 1960, teams of researchers and programmers at the Philadelphia office of Remington Rand Univac and at the RCA 501 Systems Center in Cherry Hill, N.J., worked to get COBOL applications up and running, according to the National Museum of American History.
“They wrote COBOL compilers, highly specialized programs that translated general COBOL instructions into machine-specific code,” the museum notes on its site. “They then tested programs written in both machine code and COBOL to ensure that they worked correctly.”
The museum notes that a diverse group — men, women, African Americans and Asian Americans — worked on the early COBOL apps using room-sized Univac I and Univac II computers. Hopper directed the group in Philadelphia. The programmers entered the apps on reels of magnetic tape, using a special form of typewriter called a Unityper, the museum notes.
The first COBOL program ran on an RCA 501 on Aug. 17, 1960, according to Grace Hopper and the Invention of the Information Age, by Kurt Beyer. Later that December, the same program was put on an RCA computer and a Remington Rand Univac computer, showing that compatibility could be achieved, according to Grace Hopper: Admiral of the Cyber Sea, by Kathleen Broome Williams.
Over the next few years, the museum says, many computer companies developed versions of COBOL for their machines, including IBM. The proliferation of IBM mainframe systems throughout the government in the 1960s helped spread COBOL far and wide to agencies as they looked for common systems to process their data.
Indeed, as of 2016, the GAO notes that several agencies, such as the departments of Agriculture, Homeland Security, Health and Human Services, Justice, Treasury and VA, reported using COBOL.
WHY Has COBOL Persisted?
The Agriculture Department adopted COBOL in the 1960s. Photo credit: U.S. Department of Agriculture/Wikimedia Commons
Normally, technologies introduced in the 1960s die off by 2017. That’s not the case with COBOL, even though Gartner said that organizations using COBOL “should consider replacing the language” and in 2010 noted “that there should be a shift in focus to using more modern languages for new products,” according to the GAO.
“You would be hard-pressed to find an agency in the federal government that doesn’t have an application written in COBOL, or COBOL to some degree,” Ed Airey, then a COBOL product marketing director for software firm Micro Focus, told FedTech in 2014.
Since COBOL is hard-wired into so many agencies, including IRS equipment at the Treasury Department, taking those machines offline could result in significant downtime for critical systems.
“The use of COBOL within government has endured because it remains an optimal language for core business purposes — it’s scalable, efficient, precise and fast, particularly when it comes to high-volume data processing,” Airey wrote in a GCN article in 2015. “For many government agencies, COBOL systems also contain valuable business processes and intellectual property (IP).”
However, the large push to modernize federal IT may see the retirement of many legacy COBOL systems. According to the GAO, the VA and DHS plan to replace their COBOL-based applications with more modern systems and services.
Howard Bromberg bought a $15 tombstone with “COBOL” engraved on it and sent it to Charles Phillips, the director of the Data System Research Staff at the DOD who chaired the May 1959 meeting on COBOL, to express his displeasure with the lack of progress on creating the specifications for the language in 1959.
"This Old Tech" is an ongoing series about technologies of the past that had an impact. Have an idea for a technology we should feature? Please let us know in the comments!