Tim Barrios, Damon Beyer, Kevin Dankwardt, and I were computer science majors at the University of Lousiana at Lafayette from 1977 to 1981. We were also Association for Computing Machinery (ACM) members. In fact, as juniors, we formed a team and won 1st place in the annual ACM programming contest at our school. As seniors, we came in 2nd place because I tried to improve our code on the fly (as I typed it in) and inadvertently introduced a logic error. That bug was on me. Did you ever wonder why computer programming errors are called bugs?
Our ACM meetings featured guest lecturers, one of which was Admiral Grace Hopper. Admiral Hopper was a computer scientist and United States Navy Rear Admiral. In 1944, she was one of the first programmers of the Harvard Mark I computer and invented the first compiler for a computer programming language. A compiler converts what the programmer types in (in a programming language) to instructions that the machine can execute. She popularized the idea of machine-independent programming languages, which led to the development of Common Business Oriented Language (COBOL), one of the first high-level programming languages. Admiral Hopper also popularized use of the term bug in reference to computer software or hardware design failures. [Wikipedia]
I'll never forget how Admiral Hopper drove home the idea of programming efficiency by showing us what a nanosecond was. She held up an eight-inch piece of wire to show how far electricity could travel in that amount of time. In computer programming, every nanosecond counts.
The most dangerous phrase in our language is "We've always done it this way." I try to fight that.
— Grace Hopper
On December 22nd, Kevin visited the Smithsonian Museum in Washington, D.C. He alerted the Smithsonian in advance that he was coming and convinced them to allow him to see Admiral Hopper's log book. It had never been publicly displayed before.
The book contained the remnants of a dead moth — the original bug that had gotten into the hardware and caused an early computer program to produce an incorrect result.
That one's not on the programmer. That's a bug that can truly be called a glitch.
If it's a good idea, go ahead and do it. It's much easier to apologize than it is to get permission.
— Grace Hopper
Debugging is alive in the lab.