Live data from Hacker News

What did Ada Lovelace's program actually do? (2018)

twobithistory.org

101–110 of 138 posts

Re: What did Ada Lovelace's program actually do? (2018)

#101

Earlier quoted context omitted.

We had a developer write his own System.out.println in Java. But it wasn't because he didn't like the built-in System.out.println, it was because he didn't know it existed. He had a PhD and was supposedly a senior developer. He didn't last very long.

Some of the worst (and some of the best) developers I've known, have had advanced degrees. This guy has a high school diploma, and regularly stunned the Ph.Ds in Japan.

Same here, and I have worked alongside engineers from both ends of that spectrum. The only thing the degree'd individuals seemed to bring to the table is that they typically did not know what they did not know, thus were much more subject to Dunning-Kreuger.

Re: What did Ada Lovelace's program actually do? (2018)

#102

Earlier quoted context omitted.

...or worked with any mathematicians/physicists/engineers who program. As soon as I saw that, I thought "typical quant". Like my dad (A chemical engineer) learned to program in FORTRAN, which used to insist variable names were 1 letter and up to 2 digits. He later learned Basic, but his code was still spiritually FORTRAN so the one-letter-two digits thing stuck. I thought that was just him but then much later I went…

Not sure which Fortran this refers to. I never used Fortran I, but as I understand it, names were up to 6 characters long, first character alphabetic; names with initial letter A-H and O-Z were REAL, I-M INTEGER (Fortran II added declarations to override the defaults). Dartmouth Basic restricted names to a single letter and an optional digit. Incidentally, the various Autocode languages of the 1950s in Britain had 1-…

That’s super interesting. It would have been some mainframe fortran from the 1970s because I remember him bringing me and my brother as children into a university computer lab where he had weaseled some time on a mainframe so he could punch cards. He told me the variable naming thing (and was prone to exaggeration) so it might not even be true - I can’t ask him now as he’s writing pseudo fortran implementations of Newton-Raphson with short variable names in the great computer lab in the sky at the moment.

Re: What did Ada Lovelace's program actually do? (2018)

#103

Earlier quoted context omitted.

I had an employee like that. He'd want to do something, and hit a roadblock, so he'd design his own tool (He wrote his own font, once, because he didn't like the way the built-in ones worked at teeny point sizes). Best damn engineer I ever knew, but I had to keep an eye out for rabbitholing.

We had a developer write his own System.out.println in Java. But it wasn't because he didn't like the built-in System.out.println, it was because he didn't know it existed. He had a PhD and was supposedly a senior developer. He didn't last very long.

I believe it was System.out.printf not System.out.println

Re: What did Ada Lovelace's program actually do? (2018)

#104

Earlier quoted context omitted.

That naming convention makes perfect sense to the mathematician, so why not? It's why we use `for(int i = i; i < n; i++)` in for loops; its the mathematical sigma sum of values with the same naming convention

Oh yeah. And if you're like my dad you call them "do loops" not "for loops"

While the Americans have encountered first the "DO loops" of FORTRAN (1954), the "for loops" of ALGOL are derived from the earlier use in Europe of "for loops" in programming (actually "für loops", Heinz Rutishauser, 1951), which in turn had been preceded by the use in mathematics of the "for-all" quantifier (Gerhard Gentzen, 1935), which includes an implicit loop (and in many more recent programming languages, starting with Alphard in 1974, it is preferred for the most frequent loops to use a syntax essentially identical to the mathematical notation from 1935, i.e. like "forall X in A do ...").

Re: What did Ada Lovelace's program actually do? (2018)

#105

Earlier quoted context omitted.

> with instructions read from punch card memory If that isn't a stored program, I don't know what is.

A stored program computer refers to the computer architecture where program instructions and data are stored in the same memory. This is also referred to as the Von Neumann architecture. In contrast, a lot of early computers were built with separate instruction memory like punch cards. This is called the Harvard Architecture. If the instructions were immutable, which they usually were, then things like modifying the…

"Babbage architecture" would have been much more accurate than "Harvard architecture", because Howard H. Aiken, the designer of Harvard Mark I, has been explicitly inspired by the work of Babbage into making his automatic computer at Harvard, which was intended as a modern implementation of what Babbage had failed to build.

The "Harvard architecture" had nothing to do with Harvard and it was not a novel thing. Having separate memories for programs and for data has been the standard structure for all programmable computers that have been made before the end of WWII, in all countries, and the methods for storing computer programs had been derived from those used in programmable looms and in the much earlier music boxes, which are the earliest programmable sequencers. Like the computer keyboards have a history of millennia since their origin in musical instruments (i.e. organs), the computer program memories have also their origin in (automatic) musical instruments, more than a millennium ago.

Re: What did Ada Lovelace's program actually do? (2018)

#106

Regarding the dispute of whether Ada wrote the first program. On a related topic, I believe that credit for the invention of hashing should go to certain scholars in China. The invention of a data structure and algorithm must not be confused with its first implementation in electronic computers. For at least a century before the computing revolution, hashing was used in China to find characters in dictionaries. First…

She certainly didn't write the first code, except if you think that babbage could have worked for year on his machine without ever writing a code. However the first program published that was designed to work on what is considered as a computer is under her name. As their names say, algorithms and code are much older

Re: What did Ada Lovelace's program actually do? (2018)

#108
post #7

> In her “diagram of development,” Lovelace gives the fourth operation as v5 / v4. But the correct ordering here is v4 / v5. This may well have been a typesetting error and not an error in the program that Lovelace devised. All the same, this must be the oldest bug in computing. I marveled that, for ten minutes or so, unknowingly, I had wrestled with this first ever bug. The real mark of a non-trivial program is that…

I had an employee like that. He'd want to do something, and hit a roadblock, so he'd design his own tool (He wrote his own font, once, because he didn't like the way the built-in ones worked at teeny point sizes). Best damn engineer I ever knew, but I had to keep an eye out for rabbitholing.

I didn't just create my own font, I created a font editor too because nothing else was just right (context: MSDOS 5/VGA era). For clarity, I was not that employee :)

Up until quite recently I used to render a fixed-width TrueType to bitmaps so I could fix some rendering and typographical foibles, in order to use it with rxvt.

I too may have a rabbit-holing problem.

Re: What did Ada Lovelace's program actually do? (2018)

#109
post #61
post #7

> In her “diagram of development,” Lovelace gives the fourth operation as v5 / v4. But the correct ordering here is v4 / v5. This may well have been a typesetting error and not an error in the program that Lovelace devised. All the same, this must be the oldest bug in computing. I marveled that, for ten minutes or so, unknowingly, I had wrestled with this first ever bug. The real mark of a non-trivial program is that…

> The real mark of a non-trivial program is that it doesn't work on the first try. not true.

Not -necessarily- true. I don’t typically expect my c to compile on the first try at 100 plus lines. Some languages do seem to be either so forgiving that they”work” without complaint or so structured that they guide you away from errors but are less expressive feeling.

Re: What did Ada Lovelace's program actually do? (2018)

#110

Great article, does anyone have a breakdown of the programs babbage wrote? It always seemed odd that Lovelace was the first programmer, suggesting Babbage created a machine without thinking how his it could be used.

From article:

  Babbage also wrote more than twenty programs that he never published.[19] So it’s not quite accurate to say that Lovelace wrote or published the first program, though
Post reply on HN