Here at Web-Empire we have chosen to honour Grace Hopper for the first ever Ada Lovelace Day. For those of you who do not know what this is all about you might want to read last weeks post.
Although Ada Lovelace was the first programmer, her work in the field was crippled by the lack of an actual computer: but Grace Hopper had no such restriction.
She became involved with computers during World War 2, working on the US Navy’s Mark I computer; she excelled, and after the way turned down an offer of a professorship in order to stay with the Navy.
She was a member of the team that designed the UNIVAC in the late 1940s and early 1950s, during which she pioneered compilation: the technique of writing a program for a computer that translates programs written in languages designed for humans into the actual language of the computer, which soon led to the development of COBOL, a language that is still used today.
It’s easy to underestimate how fundamental that idea is – the native language of a computer, machine code (also known as assembly language), is designed for efficient implementation in digital circuitry: where ‘efficient’ means both that the circuits required to understand the language are cheap to build, and that the circuits can process their commands quickly. These requirements lead to machine code being uncomfortable for humans to program directly. The development of compiler technology meant that humans could write programs in languages designed for humans – then the compiler automatically translates those programs into machine code that the computer can actually run. Nowadays, only a tiny fraction of software is written directly in machine code; generally, this is only done when it cannot be avoided for some technical reason.
Although relatively few people in the industry today know of her name unless they’ve actually gone searching for the history of women in computing, Grace Hopper attracted an amazing list of honours – check out her Wikipedia article for the full list!