There are some ironies in the legacy of Grace Murray Hopper. She is remembered as the 'mother of Cobol' but she didn't invent the language. She is credited with coining the term 'debugging' but denied it was her.
She is held up as an icon for women in computing when perhaps she should be an icon for the over-40s, since her major contributions to the IT industry were made after she entered middle age.
But there is no doubt she had some outstanding 'firsts' and made a monumental contribution to computer science in general, and to commercial data processing in particular.
Hopper was one of the world's first programmers, working with Howard Aiken on the Harvard Mark 1 during the Second World War. She developed the world's first compiler and was a pioneer in the field of high-level languages. She had two main goals that dominated her life: to make computers easier to use, and to develop languages that would make computers useful in business. These twin interests led to Cobol.
The early years
Grace Murray - Hopper was her married name - was born in New York in 1906. She graduated from Vasser College with a BA in mathematics and physics in 1928 and instead of taking the standard route for female mathematicians - teaching in high school - she joined the Vasser faculty as a teacher and continued her studies at Yale University. She gained her MA in 1930 and in 1934 became one of very few women at that time to get a PhD in mathematics.
In 1943, at the age of 36, she joined the US Navy Reserve to do her bit for the war effort. She was posted to Harvard University and the Bureau of Ordinance Computation Project.
In June 1944, she walked into a Harvard lab, met Howard Aiken and set eyes on America's first programmable digital computer, the Harvard Mark I. It was, she would later tell author Robert Slater, "the prettiest gadget I've ever seen".
Hopper set to work with two other programmers who were developing military programs such as calculating the trajectories of artillery shells and finding the most efficient way to lay a magnetic minefield. She was fascinated by the work and continued with it until 1946. It was sometime during this period that the famous 'bug' incident occurred. Something was wrong with one of the team's two computers. It was returning the wrong results even though the programs appeared to be fine.
Realising it must be something mechanical, they checked out the computer itself, and found a moth that had been beaten to death as it was trapped in an electrical relay. It went down in history as the first actual computer bug. Later, when the programmers wanted a rest from their punishing schedule, they would tell the managers they were 'debugging' the computer.
In 1946, Hopper was refused a transfer from the Naval Reserve to the Navy on the grounds that at 40, she was too old. It was a decision the Navy would come to regret.
Instead, Hopper stayed on as a fellow at Harvard, until in 1949 she joined J Presper Eckert and John Mauchly, co-inventors of Eniac, who were then working on the Univac 1, one of the world's first commercial computers. It was now that she would start to put some of her best ideas into practice.
The birth of Cobol
Since her days working on the Harvard Mark 1, Hopper had been convinced that programming was an arcane and mistake-filled process. Programmers had to communicate in the computer's own language, which meant working in binary or Octel formats. This was easy enough for a mathematician like Hopper, but mind-bogglingly difficult for anyone else.
She began work on what would be called a compiler - a programming language that used 'high-level' terms people could understand, which could then be translated or compiled into the machine's language. Hopper produced the world's first compiler in 1952.
She was also looking at using computers in commercial data processing applications, however. By 1957 she had produced a compiler suitable for general business applications. It was called Flow-Matic and was the first compiler that used natural language commands such as 'add' and 'stop'. This was the language that would become the basis for Cobol as we know it today.
In April 1959 six people, including Hopper, met at the University of Pennsylvania to solve a particular problem. Scientists already had a specialist computer language, Fortran, so could an equivalent language be developed for business applications?
The group decided that a language could and should be developed, and duly set up a committee to do so. The resultant language was Cobol and the committee published a standard for it the following year. The Cobol committee has overseen the language ever since.
Hopper never served on the committee, so she had no direct say in the development of Cobol. But it was Flow-Matic that most influenced its development and of all the people who attended that first meeting, it was Hopper who could claim the most experience in developing languages for business applications.
Cobol was launched in 1960, largely based on Hopper's work. The three guiding principles behind the new language were that it should be most suitable for business data processing applications, it should be easy to understand and that it should be an 'open' standard - that is, no single company should own it. Those principles still rule Cobol today.
Since 1960, the Cobol committee has revised the standard three times - in 1968, 1974 and 1985 - with another revision in the pipeline. The successful process of revision by committee in itself makes Cobol almost unique.
The language has flourished to such an extent that half the business applications in use today are estimated to be written in Cobol. These billions of lines of code, in a language that is 40 years old, organise the accounts of the largest companies in the world, power distribution systems that keep the retail networks of the world running and have a hand in processing just about every transaction made by credit card.
All this has happened despite every effort being made to supplant Cobol throughout its life so far. Despite its critics, an estimated two million people are currently working in Cobol in one form or another. Figures for 1995 from analyst GartnerGroup, estimated there were 3.5 billion lines of Cobol code in the world, much of it in business-critical applications that corporations are reluctant to change.
Micro Focus, originally a UK company and now part of Merant, was the first to produce a Cobol compiler for the IBM PC, in the early 1980s. There were many people who believed even then that it was old-fashioned and would fail.
"The language was going to be replaced first by report generators, then 4GLs (fourth generation languages) and then Case (computer aided software engineering) tools," says Chris Finch, UK head of Merant Micro Focus. "They've all come and gone but Cobol is still here."
Chris Stebbings, pre-sales manager at Merant Micro Focus, is in no doubt why Cobol and his company have survived - good architecture lasts.
"Cobol was developed in 1959, the same year as the Mini," says Stebbings. "The Mini revolutionised car design - front-wheel drive, transverse engines and so forth. Now some of the most modern cars use exactly the same principles, but they look nothing like a Mini. Programming in Cobol today is nothing like it was in 1959, but the architecture's the same. 1959 was a good year for design," he observes.
However, both Stebbings and Finch accept that inertia is the main reason that Cobol is still popular.
More portable than Java
Cobol evangelists believe the language can exist on its own merits. "Our version of Cobol is just as portable, if not more portable, than Java," enthuses Pamela Coker, chief executive of Cobol supplier Acucorp. "It has all the good things you would expect to find in C++ and Visual Basic, is much easier to use than C++ and much more powerful than Basic."
"People say Cobol is verbose," she adds. "But that also means its easy to understand a Cobol program, even one that has been written 20 years ago. There are people who have a hard time understanding a C++ program they wrote yesterday. Cobol is so much easier to maintain."
So is Cobol dying? You will find no complaints from Acucorp or Merant Micro Focus about the level of business they are doing, particularly in the field of 'legacy extension' which means taking legacy applications out onto the web. "Look at the Charles Schwab online service," says Coker. "That is a big fat Cobol application with a small web front-end."
Legacy is the great strength of Cobol. "Some people might have thought about replacing Cobol applications a few years ago, but events conspired against that happening. The whole year 2000 thing came up," says Stebbings. "They didn't have the time or the budget to replace the applications so they fixed them instead. Now, with the advance of the internet, they still don't have the money or the time to replace these programs. So they extend these legacy applications."
But what about the future? Will Cobol continue to prosper in the new millennium? The suppliers admit there is very little brand new Cobol business, but Coker does not believe the language is to blame for that. It's not that it can't do any job as well as a modern language, people just don't see it.
"There is nothing wrong with Cobol except its image, and the media is to blame for that," says Coker. "It portrays Cobol as old and boring and they don't appear to understand what you can do with it."
Never past it
This ageist attitude is something more regularly associated with people rather than programming languages. One can only hope that Hopper's story will make managers think twice before dismissing experienced, yet 'past it' professionals who are well into middle age.
Hopper was 53 when she sat on the first Cobol development committee and she rejoined the Navy at the age of 60, to help keep some semblance of standardisation in the its use of programming languages. At the age of 79, she was the oldest serving US Naval officer when she retired in 1986 - only to walk into a public relations job with Digital.
Her life is often held up as an example of women in computing. Last month, Acucorp's Coker chose a conference to mark the 40th anniversary of Cobol as a launch pad for a scholarship for women in computing in Hopper's name.
However, this emphasis on Hopper's gender perhaps misses the point. The fact that her major contributions to the industry came when she was past 40 is perhaps just as significant.
That Hopper was still contributing to the industry when she was in her 70s stands out as unique not just because she was exceptional - although she was - but because this industry chooses to make that fact exceptional.
Just because languages such as Cobol, RPG and PL/1 are long in the tooth, does not mean they are not as good as or better than their younger competitors. The same goes for people - we just need to see past the 'old' label.
Grace Murray Hopper died in 1992. The only biography of her is out of print, although there is a brief biography in Robert Slater's Portraits in Silicon (MIT Press), which details the lives of a range of computer pioneers from Charles Babbage to Bill Gates. Appropriately, a variety of websites have details of her life, including her alma mater, Yale University; while www.objectz.com gives good general information on Cobol, as do the websites of Accucorp and Merant.
Photos of Grace Hopper appear courtesy of CHIPS magazine
And, yep, it'll run Android rather than RiscOS
US engineering giant's cost-cutting outsourcing plan is on the rocks, according to insiders
HP Envy X2 laptop only affordable if you've got loadsamoney
Counterfeit code-signing certificates enabling hackers to hide malware being sold by cyber criminals
Certificates can be used as part of layered obfuscation to evade detection by anti-virus software