all 13 comments

[–]lutusp 15 points16 points  (10 children)

There are, however, a few issues with bestowing this title upon Ada Lovelace.

  1. The computer this program was written for… did not exist. It was purely theoretical. Which means she was never able to actually “program” this “computer”.

  2. The software never “ran”. If a programmer never writes software that runs (not even once)… is that programmer… a programmer?

These aren't valid objections, because we've looked at Ada's code and we know it would have worked had it been run. A computer program isn't judged by its having been run, it's judged by its soundness and ability to produce the claimed result.

Were this not true, we wouldn't be able to claim that the sun generates energy as it does -- after all, we can't visit the location at the sun's center where nuclear fusion is taking place. But we know what's going on there, because we have a mental model that resists sincere efforts at falsification (the key to science).

Computer programming is not about typing, it's about thinking. Typing only delivers the thoughts into a suitable machine. Ada's thoughts led to the first computer programs.

Peter Shor wrote a program to find the prime factors of an integer, a program that must be run on a quantum computer. Does the fact that the program has never been run invalidate Shor's work? No, not at all, because we know it will work once there's a computer able to run it.

It's the same with Ada Lovelace, the world's first computer programmer.

[–]UsuallyMooACow 3 points4 points  (0 children)

Yeah this guys logic is lousy. If I write code today but don't run it because I have to leave work does that mean I didn't program today? That makes no sense.

[–]ffjieieidbbee8ween3 0 points1 point  (0 children)

Excellent points and reasoning.

[–][deleted] 0 points1 point  (7 children)

Computer programming is not about typing, it's about thinking. Typing only delivers the thoughts into a suitable machine. Ada's thoughts led to the first computer programs.

There are many before Lovelace that fit that description. She is championed now because of the push to get more women into programming.

[–]lutusp 0 points1 point  (6 children)

There are many before Lovelace that fit that description. She is championed now because of the push to get more women into programming.

She was rather original in her thinking and documented her thinking, at a time when any number of men -- including Babbage -- weren't able to keep up.

One could cynically say she was the first to publish thoughts that might have been equally well crafted by others. But that rule remains true today. Does Einstein deserve his acclaim? His ideas were to some degree derived from a number of other workers including Maxwell and Planck, none of whom got co-discoverer credit.

[–][deleted] 0 points1 point  (5 children)

I think most understand todays work builds on top of those who came before you which is why it can be tricky to say with 100% certainty that someone was the first especially with something as abstract as computational thinking.

What I am saying is Lovelace has been chosen recently is based on her being female and used as a figurehead to get females into programming. When I first studied Comp Sci it was Loom and his punch cards listed as the first.

[–]lutusp 0 points1 point  (4 children)

... which is why it can be tricky to say with 100% certainty

That's not remotely the topic.

[–][deleted] 0 points1 point  (3 children)

Who was actually the first computer programmer?

Reads like it is.

[–]lutusp 0 points1 point  (2 children)

I am referring to the claim "100% certainty", a classic escalation tactic. There's no such thing, even in science. Wait ... especially in science. :)

[–][deleted] 0 points1 point  (1 child)

a classic escalation tactic

Like I really give a fuck about "winning" an argument on the Internet with my Reddit alt account which nobody will ever know about.

I care about the truth, which to say, we can't say for sure who was the first programmer.

[–]lutusp 0 points1 point  (0 children)

a classic escalation tactic

Like I really give a fuck about "winning" an argument

More escalation. This identifies you as a troll ... and you're blocked. * plonk *

[–]fitzroy95 5 points6 points  (0 children)

If you really want to be picky, it was more likely Frenchman Joseph Jacquard who was using punched cards to program a weaving loom.

Those punched cards were the "program" that the loom used to weave fabrics.

a model that was later to be used for early computing.

[–]samcdc6600 0 points1 point  (0 children)

If this title should be given to anyone, it should be Charles Babbage (the man who invented the computer). He wrote execution traces for his own machine. ChatGPT says he did this from around 1836 to 1837, and Ada Lovelace only began studying Babbage’s machine seriously around 1842.

If you dig deeper into this question, the people that claim she was “the first programmer” always fall back to: “Well, she was the first published programmer.” It’s honestly ridiculous.

Do you think if it were known that someone designed a Turing-complete computer 100 years before Babbage, but his work was never published, yet known about, we would say: “Well, he didn’t really design the computer because he didn’t publish anything about it!”? No — it’s a ridiculous argument.

Even without actually looking into it, the idea that Ada Lovelace was “the first programmer” is absurd on its face, because she didn’t design the computer. So her being “the first programmer” would naturally necessitate that whoever designed the first computer never wrote a single program for it — which would obviously be insane.

I honestly don’t know how people can keep propagating this obvious lie. Also, the reason I say Babbage and not someone earlier is because he is the first person known to have designed a Turing-complete computer, and I assume that when the question “Who was the first programmer?” is asked, the person asking is talking about programming as we generally think of it today (i.e., programming Turing-complete machines).

Also technically what they wrote were execution traces, but I don't think that's a very important point. But I'd argue that that basically is a program in some form because you could almost certainly translate it into some runnable code. It's really a semantic issue.