I heard it said many times that Ada Lovelace was the first programmer, and I accepted it. I had no reason not to, as I knew nothing about the subject.

Not too long ago, however, I took an interest in programming and computers. I started reading textbooks on the subject, which often included a brief history of computers in the introductory chapters.

Several times, in different textbooks, I read the same story:

Charles Babbage, a mathematician and inventor, had designed the first computer, a mammoth device that would be capable of doing arithmetic. The machine was never built, but he travelled and did public talks about the concept, trying to raise funding and interest for it to be built. Ada Lovelace discovered the idea through his talks, and she took an interest in his machine concept.

Babbage took the mathematician Ada under his wing. He mentored her, and helped her to understand his device (which had not yet been made, and never actually was made). During her time under his wing, she put together some notes, inside of which historians discovered a program, which they called the first program meant to be run by a computer.

After hearing this story a few times, I completely believed it. I was quite impressed, and I was even happy for women, knowing they could claim an important achievement in the history of a male-dominated field.

Then something struck me:

So Charles Babbage designed a massively complicated computer, which apparently (according to historians) would have functioned properly if built, yet he never, at any point, came up with a hypothetical program to run on this invention? The invention which existed solely to be given programs to run?

Where would his confidence in the machine come from, if he never thought of a hypothetical program to run on the machine? Even just a simple one, which he could mentally run through the device, and see if it outputted the proper numbers? He went on speaking tours to sell the idea of his machine without doing this?

To me, this is ridiculous. Ada Lovelace could not possibly be the first programmer.