YouSaid · the spoken record

Donald Knuth

lines on the record
150
first
2021-09-09
most recent
2021-09-09
sittings or episodes
1
sources
podcast

Every line below is reproduced as it was said and linked to the record it came from. Nothing here is summarised or generated. Directory · Search · Corrections

  1. But as a programmer, we were really concerned about how fast it could take a complicated expression that had lots of levels of parenthesis and convert that into something. But that was just less than 1% of the, so if we optimize that, we didn't know what we were doing. But if we knew that it was spending 80% of his time on the comment card in 10 minutes, we could make the compiler run more than twice as fast.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  2. It's going to say, oh, I don't understand what I'm doing. I better be more careful. Anyway, this is, of course, silly, but it's something that we don't know when we write a piece of code. We don't know whether the computer is actually going to be executing that code very much. So people had a very poor understanding of what the computer was actually doing. I made one test where we studied a Fortran compiler and it was spending more than 80% of its time reading the comments card.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  3. Algorithms and economics and whatever are based on what they call optimization now. But to me, optimization, when I was saying that was changing a program to make it more tuned to the machine. And I found out that When a person writes a program, He or she tends to think that the parts that were hardest to write are going to be hardest for the computer to execute. So maybe I have 10 pages of code, but I had to work a week writing this page. I mentally think that when the computer gets to that page, it's going to slow down.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  4. So, first of all, the word optimization. I started out writing software and optimization was, I was a compiler writer, so optimization meant making a better translation so that it would run faster on a machine, so an optimized program. It's just like you run a program and you set the optimization level for the compiler. So that's one word for optimization. And at that time, I happened to be looking in an unabridged dictionary. For some reason or other, and I came to optimize, what's the meaning of the word optimized? And it says, to view with optimism. And you look in Webster's dictionary of English language in early 1960s, that's what optimized meant, okay. Now, so people started doing cost optimization, other kinds of things, whole subfields of

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  5. But the kind of things that I know how to improve require human beings to be rational. And I'm losing my confidence that human beings are rational.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  6. Yeah, I mean, there's half empty and half full, you know. I can go. So let me put it this way because. Because it's the only way I can be optimistic. Think of Of things that have changed because of civilization. They don't occur just in nature. So just imagine the room we're in, for example. Okay, we've got pencils. We've got books. We've got tables. We've got microphones, clothing, food. All these things were added. Somebody invented them one by one. Millions of things that we inherit. And it's inconceivable that so many millions and billions of things wouldn't have problems. And we get it all right. And each one would have no negative effects and so on. So it's very amazing that as much works as does work.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  7. I'll settle for 10 to the 10 to the 10 to the 10th year, some finite number, but But things like this might be the reason we don't pick up any signals from. Extrater

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  8. I'm on the side of Understanding, I And I think these things are really marvelous if what they do is, you know, all of a sudden we have a better medical diagnosis or it'll help guide some scientific experiment or something like this, curing diseases or whatever. But when it affects people's lives in a serious way if you're writing code, oh yeah, here this is great. This will make a slaughterbot. Okay.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  9. We're going that way. I mean, so many more things are taken over by saying, well, this seems to work. And when there's... When there is competing interests involved, neither side understands why the decision is being made. We realize now that that is bad. But consider what happens five years, 10 years down the line when things get even more further detached. Each thing is based on something from the previous year.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  10. Every year we're going to be losing more and more control over what machines are doing. And people are saying, well, when I was a professor at Caltech. In the 60s, we had this guy who Who talked a good game? He could give inspiring lectures, and you'd think, well, he. Thrilling the things he was talking about. An hour later, you say, Well, what did he say? But he really felt that it didn't matter whether computers got the right answer or not. It just matters whether it made you happy or not. If your boss paid for it, then you had a job. You could take care of your wife.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  11. Yeah, I mean, not egregious humor. So in this correspondence, you know, there were. There were things I said, yeah. I really shouldn't have done that, but other ones I insisted on. And I've got jokes in there that nobody has figured out. In fact, in volume two, I've got a cryptogram, a message incipher. And in order to decipher it, you're going to have to have to break an RSA key, which is larger than people know how to break. If computers keep getting faster and faster, then it might be 100 years, but somebody will figure out what this message is and they will laugh. I've got a joke in there.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  12. And Jack Benny, I mean. Steve Allen wrote this book about humor, and it was the most boring book. But he was one of my idols. But it's called The Funny Men or something like that. But yeah, okay. So anyway, I think it's important to know that this is part of life, and it should be fun and not. And so, you know, I wrote this organ composition, which is based on the Bible, but I didn't refrain from putting little jokes in it also in the music.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  13. And I stated my philosophy and said, you know, the ideal thing that it's something where the reader knows that there's probably a joke here if you only understood it. And this is a motivation to understand, to think about it a little bit. But anyway, very delicate humor is a very, I mean, it's really... Each century invents a different kind of humor too. I mean, different cultures have different kinds of humor.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  14. Who is my great co worker in the 60s, died early, unfortunately. And he commented about the humor. In it. So we had, you know, we ran it by me, keep this joke in or not. They also sent it out to focus groups. What do you think about humor in a book about computer programming?

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  15. Yeah, okay. A couple days ago, I received a wonderful present from my former editor at Aston Wesley. He's downsizing his house and he found... That somebody at the company Had found all of their internal files about the art of computer programming from the 1960s, and they gave it to him. And then before throwing the garbage. And then, so he said, oh, yeah, he planned to keep it for posterity, but now he realized that posterity is a bit too much for him to handle. So he sent it to me. And so And so I just received There's a big stack of letters, some of which I had written to them, but many of which they had written to early guinea pigs who were telling them whether they should publish or not, you know. And one of the things was in the comments to volume one major reader was Bob Floyd.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  16. Well, the reason I didn't answer is because there are dozens and dozens of answers to that because You can define beauty the same person will define beauty a different way from hour to our I mean it depends on what you're looking for at one level it's beautiful just if it works at all at another level it's beautiful if it's if it can be understood easily it's it's beautiful if it's literate programming it's beautiful it makes you laugh I mean yeah

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  17. Yeah, yeah, that's the most. Significant thing I think to come out of the tech project is that I realize that My programs were to be read by people and not just by computers and that typography could massively enhance that. If they're going to look it up, they should also look up this book by called Physically Based Rendering. By Matt Farr and gosh, anyway, Gotten Academy Award, but all the graphic effects you see in movies are accomplished by algorithms in this book, the whole book is a literate program. It tells you not only how you do all the shading and bringing images in that you need for animation and textures and so on, but it also you can run the code. And so I find it an extension of the way of how to teach programming, but by telling a story as part of the program.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  18. Well, my code now is literate programming, so it's a combination of English and C mostly. But if you just looked at the C part of it, you would also probably notice that I don't. That I use a lot of global variables that other people don't, and I expand things inline more than instead of calling. Anyway, I have different subset of C that I use.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  19. Right, it was stylistic. I mean, I could identify authors by their... By the amount of technical aptitude they had, but not by style in the sense of. Rhythm or something like that

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  20. It was pretty obvious in this program I was reading it was a compiler and it had been written by a team at Carnegie Mellon. And I have no idea which program was responsible for that. But you would get to a part where the guy would just not know how to move things between registers very efficiently. And so everything that could be done in one instruction would take three or something like that. That would be a pretty obvious Change in style. But there were also flashes of brilliance where you could do in one instruction. Normally I used two because you knew enough about the way the machine worked that you could accomplish two goals in one step. So it was mostly the brilliance of the concept more than the semicolons or the use of short sentences versus long sentences or something like that.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  21. Those are pretty. Yeah, those are pretty easy to imitate, but it's the same with music and whatever you can. I found during the pandemic I spent a lot more time playing the piano and I found something that I'd had when I was taking lessons before I was a teenager and it was Yankee Doodle. Played in the style of, you know, and you had Beethoven and you had Debusy and Chopin, and the last one was Gershwin. And I played over and over again. I thought it was so brilliant, but it was so easy, but also to appreciate how this author Mario somebody or other had been able to reverse engineer the Styles of those components, but now specifically to your question, I mean, there would be, it was.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  22. I had to take classes on computability when I was a senior. So, you know, we read this book by Martin Davis, this is cool stuff. But, you know, I learned about it because I needed to pass the exams. But I didn't invent any of that forward stuff, but I had great fun playing with the machine. I wrote programs because it was fun to write programs and get. I mean, it was like watching miracles happen.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  23. It was just exciting to me to be able to control something, but not to say, am I solving a big problem or something like that? Or is this a step for humankind or anything? No, no way.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  24. I never thought about any stuff like that. That was. That was way too philosophical. I was a freshman after all. I mean, I was pretty much a machine.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  25. Yeah, I think naturally we're talking about Rod Brooks. He was teaching all kinds of very small devices to learn stuff. If a leaf drops off of a tree, he was saying something, while it learns if there's wind or not. But I mean, he pushed that a little bit too far, but he said he could probably train some little minibugs to scour out dishes if he had enough financial support. I don't think so.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  26. That was probably because of the way I designed the learning thing. I could have had a different reinforcement function that would reward brilliant play. Anyway, and if I took a novice against the skilled player, it was able to learn how to play a good game. So that was really my But after I finished that, I felt I understood programming.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  27. Knowing nothing, brain two, knowing everything. Then brain three was the learning one. And I could play brain one against brain one, brain one against brain two, and so on. And so you could also play against the user, against a live person. So I started going, the learning thing, and I said, okay, take two random people just playing tic-tac-toe, knowing nothing. And after about, I forget the number now, but it converged after about 600 games to a safe draw. The way my program learned was actually it learned how not to make mistakes. It didn't try to do anything for winning, it just tried to.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  28. He did that, okay. And I had been influenced by a demonstration at the Museum of Science and Industry in Chicago. It's like Boston's science museum. I think Bell Labs had prepared a special exhibit about telephones and relay technology, and they had a tic-tac-toe playing machine as part of that exhibit. So that had been one of my something I'd seen before I was a freshman in college and inspired me to see if I could write a program. Okay, so anyway, I brain one, random, you know.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  29. I had to, otherwise, I couldn't do the learning. So, but I had three parts to my TikTok toe program, and I called it Brain One, Brain Two, and Brain Three. So brain one just played a Let's Random. It's your turn. Okay, you got to put an X somewhere. It has to go in an empty space, but that's it. Okay, choose. Choose one and play there. Brain two. Had a canned routine. And I think it also maybe it assumed you were the first player or maybe it allowed you to be first. I think you allowed to be either first or second, but had a canned built-in strategy known to be optimum for tic-tac-though. Before I forget, by the way, I learned many years later that Charles Babbage had planned to thought about programming tic-tac-toe for his dream machine that he was never able to finish.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  30. And that's another factor too. So I might, you know, so I might have needed only three to the ninth over eight positions plus a little bit. But anyway, that was a part of the program to squeeze it into this tiny.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  31. To the machine. I have no idea why. Well, hardly ever used. But anyway, I needed one digit for every position I'd seen. Zero meant it was a bad position. I meant it was a good position. I think I started out at five or six, you know, but if you win a game, then you increase the value of that position for you, but you decrease it for your opponent. But I could. I had that much total memory for every possible position was one digit, and I had a total of 20,000 digits which had to also include my program and all the logic and everything, including how to ask the user what the moves are and things like this. So I think I had to work it out, get every position in tic-tac-toe is equivalent to roughly eight others because you can rotate the board, which gives you factor four, and you can also flip it over.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  32. Right, and the 650 was a machine that had only 2,000. 10 digit words. You go from 000 to 1999 and that's it. And each word you have a 10 digit number. So that's not many bits. I mean, I got to have, in order to have a memory of every position I've seen, I need three to the ninth bits. Okay, but it was a decimal machine too. It didn't have biz, but it did have strange instruction where if you had a 10 digit number, but all the digits were either eight or nine, you'd be 8, 9, 9, 8, something like that. You could make a test whether it was eight or nine. That was one of the strange things IBM engineers put in.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  33. Right, so you got you got a three by three grid and each could be in three states. It can be empty or it can have an X or an O. So three to the ninth is a, well, how big is it? I should know, but it's 80. 81 times 81 times three Anyway, eight is like two to the third, and so that would be like two to the sixth. But that would be 64, then you have to anyway.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  34. That's, yeah, that's right. I don't know how long it's going to be before the name of our field has changed from computer science to machine learning But anyway, it was my first experience with machine learning. Okay, so here we had.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  35. Second program was a converted number from binary to decimal or something like that. It was much simpler. It didn't have that many bugs in it. My third program was tic-tac-toe.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  36. Know, my goal was to see the lights flashing and understand how this magical machine would be able to do something that took so long by hand.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  37. Digits, yeah. So I think the largest is sort of 999999997 or something like that. That would take me a while for that first one. Anyway, that was my first program.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  38. Large prime number in there, my program might have said they're for 10 minutes, the 650 was pretty slow. And so it would sit there spinning its wheels and you wouldn't know if it was in a loop or whatever.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  39. So suppose I'm factoring the number 30, then I got to put two somewhere on the card. I got to put a three somewhere on the card. I got to put a five somewhere on the card, right? And you know what? It was my first program. I probably screwed up and it fell off the edge of the card or something like that. But I didn't realize that there are some tangent numbers that have more than eight factors. And the card has only 80 columns. And so I need 10 columns for every factor. So my first program didn't take account for the fact that I would have to punch more than one card. My first program, you know, just lined stuff up in memory and then it punched the card. But after, you know, so by the time I finished, I had to deal with lots of things. Also, if you put

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  40. In our memory, well, okay, yeah, well, I could tell you a bunch of Rod Brooks stories, stupid, but let's. Let's go back to 50. So I'm debugging my first program. And I had more bugs in it than a number of lines of code. I mean, the number of lines of code kept growing. And let me explain. So I had to punch the answers on cards, all right?

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  41. Intimidated. He's like, Doc, I can. That's interesting. But no, no, the. The machine at Stanford AI Lab was down an awful lot because they had many talented programmers changing the operating system every day. And so operating system was getting better every day, but it was also crashing. I wrote almost the entire manual for tech during downtime. Of that mission. But that's another story. Okay.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  42. Between my freshman sophomore year, I didn't need sleep. I used to do all nighters when I was in high school. I used to do the whole student newspaper every Monday night. I would just stay up all night and it would be done on Tuesday morning. That wasn't ulcers and stuff like that until later.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  43. Well, certainly, I mean, first of all, I might have. You know, try to divide by one instead of two. You off by one error people make all the time, but maybe I go to the wrong instruction. Maybe I. Maybe I left something in a register that I shouldn't have done. But the first bugs were pretty, you know, probably on the first night I was able to get the factors of 30 as equal to two, three, and five.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  44. Well, you sit there and I don't remember how I got it into the machine, but I think there was a way to punch it on cards. So each instruction would be one card. Maybe I could get seven instructions on a card, eight instructions. I don't know. But anyway, so I'm sitting there at the console of the machine. I mean, I'm doing this at night when nobody else is around. And so you have one set of switches where you can dial the number I'm inputting, but there's another switch that says, okay, now execute one instruction and show me what you did. Or there was another four switches that say, stop if you get to that instruction. So I can say now go until you get there again and watch. Okay, so I could watch it would take that number and it would divide it by two. And if it's, you know, there's no remainder, then OK, two is a factor.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  45. Well, yeah, it started out as about But then I kept having me debug it and I discovered debugging, of course, when I wrote my first program.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  46. The input was a number. At candidate number, and the output was its factors. And I wrote that program. I still have a copy of it somewhere.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  47. The first program was factoring a number. So, you dial a number on the switches. I mean, you sat at this big mainframe. And you turn the dials, set a number, and then it would punch out the factors of that number on cards.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  48. And Emmanuel was actually, if the manual had been well written, I probably never would have gone into computer science, but it was so badly written. I figured. That I must have a talent for it because I'm only a freshman and I could write a better manual. And so I started working at the computer center. And wrote some manuals then. But this was the way we did it. And my first program then was June of 1957.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  49. Seen so many IBM 650s I did in this movie that was on YouTube now. And it showed the picture from Stanford, they said, look, we donated one of these to Stanford one to MIT and they mentioned one other college. And in December of 56, they donated to my university. But anyway, they showed a picture then of a class session. Where a guy was teaching programming and on the Blackboard it said 69 8,000 I mean he It was he was teaching them how to write code for this IBM 650, which was in decimal numbers So the instructions were 10 decimal digits. You had two digits that said what to do, four digits to say what to do it to, and four more digits to say where to get your next instruction.

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source

  50. Program is piced out. Yeah, I might have learned about Assembler later that summary. I probably did 957. Hardly anybody had heard of Assemblers. You looked at the user manuals. How did you write a program for this machine? It would say, you know, you would say 69, which meant load the distributor, and then you would give the address of the number you wanted to load into the distributor. Yesterday, my friend at Doug Spicer at the Computer History Museum sent me a link to something that just went on YouTube. It was IBM's progress report from 1956, which is very contemporary with 1957. And in 1956, IBM had donated to Stanford University an IBM 650, one of the first ones, when they showed a picture of the assembly line for IBM 650s and they said, you know, this. Number 500 or something coming off the assembly line, and I had never

    2021-09-09 · Lex Fridman Podcast · #219 – Donald Knuth: Programming, Algorithms, Hard Problems & the Game of Life · IDENTIFIED FROM THE TRANSCRIPT · source