Grace Hopper was a computer pioneer and one of the first programmers. I just finished reading the book "Grace Murray Hopper: Working to create the future" by Carl J Schneider, and I'd like to share some of my takeaways with you.
Grace was born in New York City in 1906, well ahead of the computerization of the world. From a young age, she was an avid learner with an affinity for mathematics. In 1928 she graduated from Vassar College with a B.A. in mathematics and physics. Six years later she earned a Ph.D. in mathematics and mathematical physics at Yale. This was a rare accomplishment for a woman back in those days.
Even though she was very strong in theoretical matters, she was always looking for practical applications of her knowledge. As a teacher, she invested a lot of effort into showing her students how the theories she taught could be used to solve everyday problems.
One of my favorite quotes of the book is:
"I will never stop learning, because I have an insatiable curiosity. People who don't keep on learning, die."Grace Hopper
The Mark computers
During World War II, Grace joined the U.S. Navy. The first order she received in 1944 was to join Commander Howard Aiken, Navy Bureau of Ordnance Computation Project, Harvard University, whose team was working on the large-scale digital computer Mark I.
"I always loved a good gadget. When I met Mark I, it was the biggest, fanciest gadget I'd ever seen. I had to find out how it worked."Grace Hopper
Grace was one of the programmers who worked on the computer. The programs created by the Harvard team were used to calculate tables to help naval gunners in aiming and for other military applications.
When Grace was working on troubleshooting the Mark II computer, she carried out the first "debugging" session in computer history. She removed a moth from the computer with tweezers after having found the bug with her purse mirror. As a modern-day programmer, I'm happy that I never have to debug at such a low level.
In 1949 Grace joined the Eckert-Mauchly Corporation to work on the UNIVAC. This computer was developed for commercial applications, and was 1,000 times faster than the Mark I. Grace was looking for commercial applications of the computer by asking the questions "Can you find a way to make the computer do what you're doing now by hand?" And, "Now we know we have this powerful thing here, what new problem could be solved with this?"
There weren't many programmers around at this time in history, and Grace recruited her programmers from a pool of people who liked so solve crossword puzzles and read mystery stories. If she was able to identify problem-solving capabilities in them, she was sure that she would be able to teach them how to program.
In 1952, Grace was frustrated by the error-prone process of copying certain blocks of code manually. To avoid the copy-paste errors the programmers were repeatedly doing, she encouraged them to put the commonly used blocks of code into a shared library. She went on to create a program to translate the blocks of code into machine language, effectively creating the first compiler.
Grace wanted to create a more high-level compiler and a programming language using English words. In 1957, the efforts of Grace and her team resulted in FLOW-MATIC, which was the first English-like programming language. The language helped the UNIVAC understand twenty English statements. FLOW-MATIC had a strong influence on the development of COBOL, which resulted in Grace being named "the grand-mother of COBOL".
Grace Hopper was very influential as one of the first programmers of the world. She also helped to widen the areas of application of computers. I found her story to be inspirational, and I recommend you to familiarize yourself with her achievements during the child-hood of computing. She had an exploratory mindset and a liberal management style. I'd like to end with the following quote:
"Liberate what we need. Set it free. It's easier to apologize after you do something than to ask permission to do it."Grace Hopper