john_backus_oral_history

John Backus Oral History

Description

John Backus led a team at IBM in 1957 that created the first successful high-level programming language, FORTRAN. It was designed to solve problems in science and engineering, and many dialects of the language are still in use throughout the world.

Describing the development of FORTRAN, Backus said “We simply made up the language as we went along. We did not regard language design as a difficult problem, merely a simple prelude to the real problem: designing a compiler which could produce efficient programs…We also wanted to eliminate a lot of the bookkeeping and detailed, repetitive planning which hand coding involved.”

The name FORTRAN comes from FORmula TRANslation. The language was designed for solving engineering and scientific problems. FORTRAN IV was first introduced by IBM in the early 1960s and still exists in a number of similar dialects on machines from various manufacturers.

Date

2006-09-05

Contributor

Backus, John W., Interviewee

Booch, Grady, Interviewer

Hendrie, Gardner, Cameraperson

Publisher: Computer History Museum

Place of Publication

Ashland, Oregon

Extent

42 p.

Category

Transcription

Subject

Fellow Award Honoree; Backus, John; IBM; Selective Sequence Electronic Calculator (Computer); Speedcoding; FORTRAN; Ziller, Irv; IBM 704 (Computer); Software

Collection Title

Oral history collection

Lot Number

X3715.2007

Text

102657970-05-01-acc.pdf


Related Records

102657954 Backus, John oral history

Oral History of John Backus

Interviewed by:

Grady Booch

Recorded: September 5, 2006

Ashland, Oregon

CHM Reference number: X3715.2007

© 2006 Computer History Museum

Oral History of John Backus

Grady Booch: [September 5, 2006] I’m here today with John Backus and I should probably put the day’s date on here for the calendar, for the purpose of filming. But there’s probably more computational power in this Sony camera than there was in the first computer upon which you worked.

John Backus: Oh, I’m sure.

Booch: You are a person whose career has spanned the ages of contemporary computing, from the earliest days of some of the first machines that really made an impact upon the commercial world, to where we are today. Of those years, what do you think surprised you the most, of the changes you’ve seen?

Backus: Well, I think just the speed of change. I mean it’s just appalling.

Booch: Appalling.

Backus: Yes, because I mean all these refrigerator-sized machines that I first worked with soon became smaller and smaller and smaller until–

Booch: In fact, as I read some of the interviews, you’re a fan of the Palm Pilot and I think you had a TiVo at one time.

Backus: I still do.

Booch: Still have a TiVo, which probably did have more computational power than the first machines upon which you worked.

Backus: Yes.

Booch: What I heard you say is just the first derivative of change, that things are changing so rapidly.

How wired of a guy are you? I mean you have your e-mail address. How connected are you these days?

Backus: Not a lot. I’m like any guy that has a personal computer, fumbling around trying to find my way in this mess that’s out there.

Booch: What was your first personal computer?

Backus: It was an IBM PC.

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 2 of 42

Oral History of John Backus

Booch: I imagine you got a good discount on that.

Backus: This big, you know, this high. You could hardly lift it.

Booch: Wow. Amazing. In fact, let’s go back to some of the machines over which you’ve worked over the years because the first one was the SSEC. If I get that right that’s the Selective–

Backus: Selective Sequence Electronic Calculator.

Booch: Yes. What was the story behind the existence of that very computer? Why did it come to be?

Backus: Oh, that was because IBM cooperated in designing the Mark I at Harvard, and Harvard gave them no credit. So Watson was really mad about that.

Booch: That was Watson, Sr.?

Backus: Yes. So he decided to build this strange monstrosity called the SSEC. And he did.

Booch: Now was that the defense calculator?

Backus: No, no.

Booch: Was that a different name for it?

Backus: The defense calculator was the 701, which followed.

Booch: Oh, okay, which was the successor to that.

Backus: Yes.

Booch: Where was the SSEC actually built?

Backus: It was built right there on 57th Street– Well, the entrance was on 57th Street, yes, but it was near Madison.

Booch: I don’t think there’s a lot of manufacturing in downtown Manhattan these days of computers.

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 3 of 42

Oral History of John Backus

Backus: No.

Booch: That’s really what attracted–

Backus: It was unique.

Booch: It was unique, one of a kind.

Backus: Yes.

Booch: You were describing earlier what that beast looked like. It was many rooms full.

Backus: Well, yes. It filled a room that was about, let’s see, 50 feet wide by 100 feet deep. It had a window opening on the street so that people could look in, and big black columns holding up the middle of the room. It had a huge console with hundreds of toggle switches and stuff like that. Then behind glass cases around the walls were tape units and relays, some of which would fall out as it was operating because they were heavily used. It was a fun machine. It would make an error about every three minutes and you had to stop and figure out how to restart the thing.

Booch: Right. That was certainly the age of machine building, because there was the Mark I around the time.

Backus: Yes.

Booch: That was Aiken, if I’m not mistaken.

Backus: Yes.

Booch: And Eckert and Mauchly. That was around that time or a little bit earlier in their work?

Backus: That was about the same time.

Booch: Did you have any contact with those guys at all?

Backus: No.

Booch: Just a quick side story. I think it was Mauchly’s grandson [who] went to the Air Force Academy, and I taught him COBOL, of all things. Mauchly came up once to visit us. It was interesting seeing him. I CHM Ref: X3715.2007 © 2006 Computer History Museum Page 4 of 42

Oral History of John Backus

recall [in] one interview that you were walking by the IBM offices and saw this display, and that’s what attracted you inside then.

Backus: Yes.

Booch: What were you doing at that time? You were out of the Army?

Backus: I had just graduated. I had just gotten my Masters Degree from Columbia. But I hadn’t even begun to look for a job, but I just found this place and I walked in and it looked so interesting. I ask if they would give me a job.

Booch: And they said?

Backus: And they said, “Yes, come up and see the boss.” I said, “No, no, no. I’ve got holes in my sleeves. I have to look respectable.” But they got me up there anyway and I got an interview by [Robert R.] “Rex” Seeber who gave me a little puzzle that I solved, and he hired me.

Booch: Wow, on the spot?

Backus: On the spot.

Booch: My goodness. So at Columbia, you were getting your Masters in Mathematics. Is that correct?

Backus: Yes.

Booch: Actually, to go back in time a little bit, before that, before Columbia, you were in the Army then.

Backus: Let’s see, yes. Yes.

Booch: So that was really the time of the Korean War or World War II?

Backus: That was World War II. That was 1945.

Booch: Oh, my goodness. So let’s start there then. Where were you stationed in World War II?

Backus: Well my first station was in Camp Stewart Georgia.

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 5 of 42

Oral History of John Backus

Booch: Oh, my - hot place.

Backus: It’s a very bleak, hot place. But I only stayed there for a few months, and then I was selected for army specialized training. Then I went to some little place in Alabama to get classified. Then I went to the University of Pittsburgh, which I enjoyed enormously because I was supposed to be learning all this stuff that I had already studied. So I spent a lot of time there. There’s a place called the “Pittsburgh Playhouse,” which was really a bar. A very friendly place. After that, yes, I was there. Then the Battle of the Bulge occurred and they were drafting everybody. So everybody in Pittsburgh was going to be sent overseas right away. But I had just taken a test, some kind of a test that qualified me for being sent to Haverford College. So I went there and had a very nice time at Haverford College.

Booch: Where’s that located?

Backus: It’s just outside of Philadelphia in Haverford, PA. I was there for a while, and, let’s see. Then my next step. I was destined to go to medical school, but in the meantime, I was sent to Atlantic City to work in the hospital. So I stayed in Atlantic City working in this hospital 12 hours a day for a while, living in the Traymore Hotel on the Boardwalk. While I was there, I was working on the neurosurgery ward and they noticed that I had this huge bump on my head here, which was a bone tumor that had been growing slowly, fortunately outward, for a long time. They said, “Well, let’s take that out.” So I became a patient.

They operated, took it out and I was a patient on this ward. So I had no duties whatsoever. I could just spend my time wandering around Atlantic City at night, which I did, and sleeping in the hospital. That went on for a while. Then finally I got sent to New York, and started going to medical school at - what was the name of it - Flower and Fifth Avenue Hospital. I discovered very quickly that I didn’t like medical school, because all you had to do was memorize stuff. While I was in Atlantic City, they had done this operation, removed this bone tumor and put in a plate, which they had constructed by sort of cutting out triangles, because there’s a lot of curvature in the skull there. It was kind of a squishy plate, which made me feel very insecure. So when I was in medical school, I opted to go to a hospital on Staten Island where their business was putting in plates for veterans. I went there and they took out the old one. I walked around for a while with nothing, just skin.

Booch: Oh, my. That’s exposed.

Backus: Yes, it really felt weird. Then they took a cast and they let me make the plate, actually, because you just had to put it in a hydraulic press and trim it up a bit, which I did. They installed it. During that time, I got this wonderful little apartment on East 71st Street in New York. It cost $18 a month.

Booch: Oh my. That must have been an exciting time to be in New York City, in Manhattan.

Backus: Yes, it was. It was a Hungarian neighborhood. I’m sorry, I mean Czech, because there was a Czech restaurant just down the street from where I lived. It was very nice. No, I lived there for quite a while until finally, I got married. But I had some friends from the army who lived nearby. One guy was a composer who lived with his wife on the floor below in the same ratty apartment building, and another friend who was a singer lived across the street. So we had a nice little–

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 6 of 42

Oral History of John Backus

Booch: So in walking by the IBM building, you saw this machine and then got whisked upstairs.

Backus: Yes.

Booch: Remarkable. Did you have any interest in computing prior to that time?

Backus: No. I mean… No.

Booch: There wasn’t a lot of it around.

Backus: What was computing? What’s that?

Booch: Fascinating. If I may ask, let me pick up on something you said.

Backus: I just like machinery.

Booch: Yes, because you’re kind of a gadget kind of guy. How did you meet your wife, if I may ask?

Backus: Well, I was married twice. My first wife; how did I meet her? Oh, I met her at– She was living with three other girls in an apartment in New York and this guy I had known at the University of Virginia took me to this place. That’s how I met her. My second wife I was introduced to by my first wife at about the time we were about to split.

Booch: Fascinating.

Backus: Because Barbara is an English teacher at Berkeley, and Barbara had taken her course in poetry.

Booch: Small world. So back to the SSEC. What did they hire you to do?

Backus: Programming, what else?

Booch: Down at the machine level. What did “programming” mean for a machine like that? To a contemporary programmer, that would be so foreign.

Backus: Yes, oh, I mean it was weird because you had the whole machine to yourself for months.

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 7 of 42

Oral History of John Backus

Booch: Wow. I imagine the room got a little warm too.

Backus: No, no. It was air-conditioned. The first problem I was assigned to was this one, that one of the machine’s co-inventors was working on. It was a problem to calculate the position of the moon, which is a very difficult thing to do. It’s a Fourier series of about 1,000 terms or something. I worked on that.

Booch: This was long before the U.S. had committed itself to any space program really, actually any lunar program at all.

Backus: No, such ideas were just totally– No, I mean you’re making a big transfer in time there to think in those terms.

Booch: Interesting. So your background as a mathematician served you well, then, to do that kind of thing.

Backus: Well, to say my background as a mathematician– I was never a mathematician, really.

Booch: Really.

Backus: I mean, no. I like some of the more abstract stuff, but I was never a scholar. I never liked to study or learn anything.

Booch: You mentioned one of the designers of the SSEC. Who was that person?

Backus: Oh, Rex Seeber.

Booch: So then from your experience with the SSEC, you then went on to produce Speedcoding, the Speedcoder.

Backus: Yes.

Booch: What were sort of the things that influenced you to create that in the first place?

Backus: Well, programming in machine code was a pretty lousy business to engage in, trying to figure out how to do stuff. I mean, all that was available was a sort of a very crude assembly program. So I figured, well, let’s make it a little easier. I mean it was a rotten design, if I may say so, but it was better than coding in machine language.

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 8 of 42

Oral History of John Backus

Booch: Sure. So this was really around the time where we saw the explosion of languages like that. It wasn’t really the first language above machine language.

Backus: No, no.

Booch: Who were some of the contemporaries around that time?

Backus: Oh, God. I don’t think I’m going to be able to answer that question.

Booch: No worries. Because Grace Murray Hopper and the COBOL work, that was roughly around the same period as the early Fortran work, wasn’t it?

Backus: Let me see. Yes, I had a lot of—[pause]

Booch: I forget when Grace’s work actually was and the COBOL work.

Gardner Hendrie: Yes, I think that may have been–

Booch: It’s a little bit later.

Hendrie: It’s a little bit later, yes.

Booch: I still have my nanosecond from Grace. She had this thing where whenever she’d lecture, she’d always give people in her audience a nanosecond, which was a piece of telephone wire cut to 11 ¼

inches, which was the distance that light would travel in a nanosecond. She offered that as a visual metaphor to say this gives you an idea of why machines are shrinking. So if I think about the SSEC

covering 100 feet, delays of the speed of light intruded upon things here as well. From the experience of the Speedcoding work, that’s kind of what led you to write the memo to your boss saying, “Hey, I have this idea for a high-order language.”

Backus: Yes, because we were moving to the 704, which had built in floating point, built in index registers, which was all that Speedcoding was supposed to supply. So what the hell?

Booch: And the 704 being the first machine with core memory as well too.

Backus: Yes.

Booch: Tell me a little bit about the 704 and its sort of size and shape and such.

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 9 of 42

Oral History of John Backus

Backus: Well, it was a box about this big, about that thick and about that high. It was a big–

Booch: It was a big machine.

Backus: Yes.

Booch: As we were talking earlier, the management of IBM was of mixed feelings with regards to the utility of the 704 because you had Tom Watson, Sr….

Backus: Yes, he was very skeptical of it. But Jr. was not. He was sort of for going in this direction.

Booch: Wasn’t this around the time that Tom Watson, Sr. said something to the effect that the worldwide market for computers is like one or two computers, or something like that?

Backus: Yes.

Booch: He was saying that in reaction to the 704?

Backus: Yes.

Booch: Interesting.

Backus: Well, first before the 704 was the 701, which had no index registers. It was a very primitive machine.

Booch: Were you involved with the machine designers at all, or was this sort of just handed to you?

Backus: No, I was part of the– In fact, I sort of credit myself with getting index registers and stuff and floating point built into the 704, because the designers were just totally preoccupied in getting a drum unit designed. You know, one of these crazy magnetic drums.

Booch: Which would have had how much storage capacity?

Backus: Oh, about maybe 1,000 words, or maybe as many 10,000, but no more.

Booch: Probably less memory than your watch has.

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 10 of 42

Oral History of John Backus

Backus: Yes, right. Things were bigger in those days.

Booch: So the market for the 701 and the 704, where was IBM trying to head with that?

Backus: The 701, there were 18 701s, and the 704, there were quite a few more. I couldn’t tell you how many.

Booch: So you actually influenced the design of those machines then, the introduction of–

Backus: Yes, I was on the design team for the 704.

Booch: Was the notion of bringing index registers and floating point in viewed as radical by the design team?

Backus: Actually, I kept sort of suggesting that they do this, and they kept talking about this damn drum.

In the design meetings, I kept bringing this up and bringing it up. They kept talking about the drum.

Finally, I decided, well, there’s only one way to get their attention. So I spent an hour just deriving some cockamamie scheme for designing it. Gene Amdahl… It would have taken about a ton of hardware to implement what I had described and Amdahl said, “Oh, you don’t need to do that.” It’s just easy to do it

[with] just this. It doesn’t take hardly any more hardware.”

Booch: Wow.

Backus: He then designed it.

Booch: Remarkable. So the interaction between you two led to some important innovations in that machine then. Did you do much further work with Gene?

Backus: Not a lot, no. I mean, I was on some… IBM was trying to design something for the Defense Department, some big, huge – the NORC – and we kind of interacted.

Booch: Right.

Backus: There were a lot of committees in Poughkeepsie, and stuff.

Booch: So what kind of programming tools, as we would call them today, even existed for the 704 in its earliest days before Fortran?

Backus: Well, there was an assembly program.

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 11 of 42

Oral History of John Backus

Booch: Right, and that’s about it.

Backus: That was about it, yes.

Booch: Wow. So from that experience, it led you to write a memo to, I think it was your boss Cuthbert…

Backus: Hurd.

Booch: Hurd, that said, “Hey, I have this idea here.”

Backus: Yes, I mean, you’ve got to make it easier to program this thing. I kind of laid out the fact that half the cost of running this thing was programming it. I mean, in counting the machine costs and everything.

Booch: Right. In fact, you use a phrase in one of your interviews that said, “The assumptions under which we created Fortran really aren’t valid anymore.” What were the assumptions that Fortran was created with? I think you just said it, to some degree. It was reduce the cost of programming.

Backus: Right. Yes, because it was just so slow.

Booch: The process of producing programs.

Backus: Yes. Machines were very expensive too. The rental for a 704 was in the millions [of dollars] for a year’s rental for one of those things.

Booch: Right. I recall reading a figure; it was like $400 an hour of computing time or something like that.

Backus: Yes, that’s about right.

Booch: Who would think of charging per hour these days? I don’t know how you’d compute that. But then the salary of a programmer would be a lot less than $400 per hour I would guess.

Backus: Right, yes.

Booch: So as you began the work into what became Fortran, what were the other things swirling about in the community that led you to that particular structure? Who were some of your contemporaries that were doing similar things? I don’t even know some of the names around that time.

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 12 of 42

Oral History of John Backus

Backus: Well, Grace Hopper was talking about compilers and stuff like that.

Booch: Right. She really talked up what became COBOL.

Backus: Yes, but her ideas were just so cockamamie stuff. Her scheme for this - I forget the name of her proposed compiler - but it was part machine code, part this, part that.

Booch: Just out there.

Backus: Completely unworkable thing.

Booch: Right. She was working for Remington at that time?

Backus: Yes.

Booch: And IBM and Remington… Well, this was the era where there were a lot more computer companies than there are today.

Backus: Yes, right.

Booch: It was the age of the big iron where they were competing with one another. Had Gene Amdahl gone off at that time, or he was still with IBM, wasn’t he?

Backus: I think he was still.

Booch: Okay. Interesting, but that was certainly a ferment of activities and ideas that spawned a lot of other companies later on.

Backus: Right.

Booch: Now, the first formulation you had of what became Fortran, that essentially came from your ideas. But then very quickly you began to assemble a team around you of about, I think it totaled 13 or so in all.

Backus: Yes, but basically, the core of that was more like eight.

Booch: Right, because you had Irv Ziller, as I remember, was one of the first ones that joined you. Tell me a little bit about Irv and how you latched onto him and vice versa.

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 13 of 42

Oral History of John Backus

Backus: Well, I was originally in what was called a Pure Science Department which Rex Seeber ran.

Booch: This is really before IBM had started the lab, is that correct, or just around the same time?

Backus: No, Watson Labs was in existence.

Booch: Okay.

Backus: So yes, Hurd was running the Applied Science Department, and Irv was one of the first people in the Applied Science Department. When I started working on this project, I got moved to the Applied Science Department because Seeber really didn’t want anything to do with this stuff. When I pitched this to Hurd, it was easy to persuade him to let me get Irv to work with me. It just sort of went like that - one by one.

Booch: That would have been in 1954ish- 1955?

Backus: Yes.

Booch: So you two toiled for a while and then slowly the team grew over time.

Backus: Yes, we were allowed to hire people.

Booch: As I recall, the management touch around you was pretty light, that perhaps–

Backus: Very light.

Booch: I’ll put it this way, you probably succeeded because you were left alone.

Backus: Yes. We were off in a building on 56th Street on the fifth floor of a little small building.

Booch: Tell me about some of those years, because I guess it’s sort of like a temporary software that you kind of set a date saying, “Well finish by then.” It kind of stretched out, didn’t it?

Backus: Yes, it kept being extended by six months every time somebody asked. But we had a great deal of fun. It was a very nice group of people. My main job was to break up chess games at lunchtime because they would go on and on.

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 14 of 42

Oral History of John Backus

Booch: In fact, I read that you guys used to play a lot of blind chess. Maybe I mistook it in one of the interviews, but tell me about that.

Backus: Yes. Well, I don’t know who… Harlan Herrick was the chess freak and he got people involved in that. There was some of this blind chess going on. But it was mainly just regular chess.

Booch: Right. You’ve repeatedly used the words that that was a really fun time.

Backus: Yes, it was.

Booch: What made it so fun?

Backus: Well, just because we all got along very well and we had these challenging problems to deal with that we kept talking about and discussing and we– I don’t know. It was a challenge.

Booch: Sure

Backus: The excitement of doing something that everybody said we couldn’t do.

Booch: Right. You were in your - what - late 20s? I imagine all of you were about the same age or thereabouts.

Backus: Yes.

Booch: I recall in one of the interviews, you guys sort of made up things as you went along, as you discovered the problems and would tackle them.

Backus: Oh, absolutely. The problem kept sort of sub-dividing like an amoeba. The whole thing just got divided up into these phases.

Booch: Sure, the phases of compilation, in effect?

Backus: Yes. Each phase was worked on by one or two or three people, and they kind of conversed with each other to get the interfaces right.

Booch: And your role was sort of overall architecture for it, it sounds like.

Backus: Yes, my role was just to sit around and watch.

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 15 of 42

Oral History of John Backus

Booch: [Laughs] So what were those major phases? How did it break itself out?

Backus: Well, the first one was doing the arithmetic stuff.

Booch: Sure.

Backus: That took in all the data from the [source] code that was written, and it produced the arithmetic code and stored a whole lot of data for the next phase. The next phase was dealing with indexing and that they really couldn’t deal with because of only having three index registers.

Booch: Oh, my.

Backus: So we decided that – or I decided that – they should do it for a machine with an unlimited number of index registers. And they did that. The third phase was just, sort of, just put together all this stuff that had accumulated. The fourth phase then did this sort of - what’s the name of that - Monte Carlo calculation to determine how to assign index registers.

Booch: My goodness. You were doing all of this in machine language or assembly language?

Backus: Yes.

Booch: Wow, I can’t imagine doing that. It’s hard enough in a high-order programming language.

Backus: Yes. No, I mean these guys were really good.

Booch: So when this first got unleashed to the world – because IBM basically shipped this with every 704 then didn’t they?

Backus: Yes.

Booch: Of course, it was bug-free in the first release.

Backus: [Laughs] Of course. No. Apparently, we shipped one box of binary cards, which is the only one we were able to produce because it just ruined the card punch to produce these things. So we produced one box of binary cards and shipped it off to Westinghouse, somehow or another. And it arrived. Just this box of binary cards. They figured that this must be the deck for Fortran. They actually ran it, loaded it and then executed this program and finally had a compiler, which they then had a little test Fortran program which they compiled, and it ran.

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 16 of 42

Oral History of John Backus

Booch: What did it do? Do you remember?

Backus: Oh, it was some jerky little nothing.

Booch: Right, but it was the first instance of an executable outside of your own group.

Backus: Yes.

Booch: Wow.

Backus: Of course, that was the only time it worked for them for a long time thereafter.

Booch: [Laughs] Did you spend a lot of time with them personally then, trying to get things working?

Backus: We then sent this thing to a whole bunch of people and they all struggled with it and kept sending us all these error problem–

Booch: Bug reports, yes.

Backus: …error reports, and we kept correcting the errors. Slowly, I guess it took six months to sort of get it so it would run pretty reliably.

Booch: Gee, that sounds how Microsoft delivers software these days. We probably don’t want to keep that one on the tape. What were some of the early problems that people were trying to apply this to?

Backus: Oh, they were mostly aerospace stuff. That was for the big customers of the day.

Booch: Sure. Like Boeing and–

Backus: Boeing, North American and - I don’t know - the company that Roy Nutt worked for-Booch: That name is familiar. Don’t remember. Roy was a person on your team, wasn’t he?

Backus: Yes.

Booch: But what work did he do in the phases?

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 17 of 42

Oral History of John Backus

Backus: He did the assembly program. It was a very special, fast assembly program that assembled all this stuff. But he did a lot of stuff. He came down from - my memory is so terrible.

Booch: I might even have that in one of these things. [Looking at documents.]

Backus: Yes.

Booch: Steve Lore, who I met once, did a really interesting history of this work in one of his books - The Turning Point.

Backus: Walter Ramshaw was his boss. It was an aerospace company, but it was in the east.

Booch: East Coast. I’m not sure.

Hendrie: Was it Grumman?

Backus: No.

Booch: Yes, I don’t see the name here. You had one woman on your team. Lois?

Backus: Yes, Lois Haibt.

Booch: Yes. What role did she have in the midst of all of this?

Backus: Lois - let’s see, what section did she work on? I think she worked on section three. No, section four.

Booch: We were talking about some of the other people involved, and the places where Fortran was making some inroads. It was primarily in the aerospace world, were dealing with lots of those kind of problems.

Backus: Yeah, and we also did a lot of work with Los Alamos—

Booch: Yes. That would have been of course post Manhattan Project kind of work, but there was a lot of nuclear testing going on and—

Backus: Let’s see. When was the Manhattan Project?

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 18 of 42

Oral History of John Backus

Booch: The Manhattan Project was what, late– The bomb exploded in ’45, yeah.

Hendrie: The bomb exploded in ’45. The first hydrogen bomb was, I’m thinking ’52.

Booch: That sounds right to me. But then we were doing a lot of nuclear testing because we didn’t really know the impact of– We were shrinking them and Los Alamos was doing quite a bit of work there. In fact, to jump ahead, I do work with people in the supercomputing domain, and Fortran still rules in that space—

Backus: Yeah, I’ve heard that.

Booch: Most of the super computing work is still all done in Fortran.

Backus: That’s astonishing.

Booch: It is astonishing. But a lot of the weather forecasting programs…

Backus: Well, they have all of those dusty decks to deal with.

Booch: I don’t think they use punch cards anymore.

Backus: I know, but the equivalent thereof.

Booch: The equivalent of. But it’s amazing how much that software still lives, because they are probably using those algorithms which existed decades ago. In some of the nuclear simulations and weather simulations and stuff – that stuff is still pretty much all Fortran these days.

Backus: Uh huh. Wow. Astonishing.

Booch: That was Fortran 1. What led to Fortran 2?

Backus: Well, it was— [pause] You couldn’t– There weren’t any subroutines in Fortran 1. You just– It was one big mess. So Fortran 2 added the ability to have subroutines and—

Booch: And the notion of subroutines coming from Maurice Wilkes I think—

Backus: Yeah.

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 19 of 42

Oral History of John Backus

Booch: –first proposed that notion. Did you have much interaction with his team at all?

Backus: No, but we read about it.

Booch: So subroutines were the big thing in Fortran 2.

Backus: Yes.

Booch: What did that enable you to do? Was it hard to introduce the notions into the compiler?

Backus: No. It was– It didn’t take much doing. I think Irv Ziller did most of the programming that made that change from 1 to 2. Irv Ziller and Libby Mitchell. She’s absolutely disappeared from this earth. I’ve tried to locate her but I have not succeeded.

Booch: I’d read she was kind of the program lead for Fortran 2.

Backus: Huh?

Booch: She was kind of the program lead, the project manager—

Backus: No. Irv was.

Booch: Irv was.

Backus: Yeah.

Booch: What was Libby’s role in Fortran 2?

Backus: She did a lot- just a lot of programming. She was a very good programmer and she did it accurately and quick.

Booch: What begat Fortran 3? What were its novel things? I’ve read of Fortran 1, 2 and 4 but 3 seems to have disappeared.

Backus: Well, 3 was mainly again Irv’s thing, where you could sort of combine symbolic programming and Fortran programming.

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 20 of 42

Oral History of John Backus

Booch: Fortran 4 is the one that really seemed to gain traction with the commercial world.

Backus: Yeah.

Booch: You were still deeply involved in that work at that time, weren’t you?

Backus: I don’t think so. I think that was mainly something that Bill Heising did.

Booch: By that time you were still at the Watson Labs. Is that correct?

Backus: I was never at the Watson Labs.

Booch: You were just in New York City?

Backus: Yeah.

Booch: Interesting, because I thought I’d read somewhere you were at the Watson Labs. You stayed in Manhattan this whole time then?

Backus: Yes. Yeah.

Booch: Interesting. It wasn’t until later that you went out to the West Coast.

Backus: No. Wait. Let me get this straight now. When you said Watson Labs I keep thinking of some little place on 110th Street but—

Booch: I meant upstate New York a little bit.

Backus: Yeah. You meant out in Yorktown. Yeah. Let’s see. When did I move there?

Booch: I couldn’t find a date for that one because you were in New York City for the most of the ‘50s and then you ended up at the San Jose Labs I think in ’63 so—

Backus: Right. I wasn’t at the Yorktown Lab for very long, but I can’t remember when I moved.

Booch: No worries. With Irv and others taking more up on Fortran 4, where did you find your work leading? Where was it leading you?

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 21 of 42

Oral History of John Backus

Backus: Well, it’s leading me nowhere basically because I had an obsession with the four-color problem.

It was just some crazy ego thing that I was totally ill equipped to deal with, but I had some idea that I was going to generalize it and thereby make it easier to solve, or something like that. It was simply that the idea was to prove that any map on a plane could be colored with four colors without having neighboring countries of the same color. I messed with that for ages and ages and ages and never got– I had all these nutty little theorems that I proved, but never really did it.

Booch: Although identifying yourself not as a mathematician, you were dealing with some pretty deep mathematical issues.

Backus: Well, I was dealing with a difficult mathematical problem but I would never say that I was dealing with deep mathematical issues.

Booch: And IBM gave you the freedom to pursue these things.

Backus: Yes, they just left me to stew in my own juices.

Booch: Did you have other colleagues you were working with around that time or pretty much a loner in that?

Backus: I was pretty much a loner doing that, huddled in my office in Yorktown and later out- when I moved to the West Coast.

Booch: Let me go back to the Fortran days for one more moment on that. As you look back on what you guys did there, what do you think you got the most right, and what do you regret having done, the most wrong, if you will?

Backus: Well, I think history has shown that we divided up the problem pretty much right because a lot of people have kind of followed that same pattern in general.

Booch: You really just stumbled into that, didn’t you? The way the compiler and such was divided up?

Or was it just sort of the natural decomposition that fell out?

Backus: Well, it just– We started to do it as one unit and then we saw that, uh oh, that isn’t going to work, so we had to subdivide the problem into two things, and then that kind of went on like that. It was a pretty natural process.

Booch: In all, you ended up with– What was the final form of the compiler?

Backus: It had six sections—

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 22 of 42

Oral History of John Backus

Booch: Six sections.

Backus: Yeah.

Booch: It manifested itself as 250,000 cards, or some huge number like that?

Backus: No! The original compiler was, if I remember, about 30,000 instructions.

Booch: Wow. So efficiency and smallness were virtues at that time.

Backus: Well, people were writing these things [instructions] one by one. You didn’t have these programs that could slosh out thousands of instructions from one little piece of writing.

Booch: Remarkable. Does the museum have a copy of that first compiler now? I think you were saying that they do, they don’t?

Hendrie: I believe they do have a copy.

Booch: How exciting.

Backus: Yeah. I think I’ve heard that they do have one of the early compilers, yeah.

Booch: That’s remarkable. After the Fortran work, did you have much contact with the Fortran communities that eventually standardized Fortran internationally?

Backus: Well, my main contact was coming to some– What was it called? The– Some committee that dealt with that stuff.

Booch: ISO or—

Backus: No.

Booch: ANSI? I forget. There were so many standards groups around that time.

Backus: No, but this wasn’t a standards group. This was just the committee within- all the aerospace people and stuff that dealt with Fortran.

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 23 of 42

Oral History of John Backus

Booch: They wanted to get some common standards.

Backus: Yeah, so that they’d have a uniform thing and they used to- that committee used to hold meetings in Los Angeles and various places which would mainly be getting together and– Who was it? I guess it was usually Roy who would come– No. It was a guy at North American, not Frank Wagner but another guy, a little guy with a moustache. Anyway—

Booch: [Laughs] We’ll do pattern matching with pictures here.

Backus: Yeah. He used to show up with big bags of liquor and we would have our meeting, which was mainly drinking—

Booch: From this the standard of Fortran was born. Hmm. It tells me something about the standards process. I was involved in the standards process with Ada and other things and we didn’t have any such meetings.

Backus: Oh.

Booch: They were much less fun.

Backus: Yeah. Well, that went on for quite a while. Then it got the bigger bosses in the process, they got annoyed with us and sort of got it much more sober and productive, but I didn’t participate in that.

Booch: How did you get drawn into the ALGOL process then? ALGOL was my second programming language. I learned Fortran 4, and I went to the Air Force Academy where we had a Burroughs machine and we were taught ALGOL 60 as our primary language. I loved ALGOL. That was a great language. I enjoyed it. It sounds like you have other opinions of it—

Backus: I’m glad you liked it—

Booch: How did you get drawn into that process?

Backus: Well, I don’t know that I was very much drawn into it.

Booch: Your BNF work came from that of course—

Backus: Yeah.

Booch: –when you were specifying the structure of the ALGOL.

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 24 of 42

Oral History of John Backus

Backus: Yeah, but I– It was a big committee deal, Booch: Sure.

Backus: –and I don’t think I contributed very much to it.

Booch: How did you and Peter get together, Peter Naur, to specify the syntax?

Backus: Well, I had come to one of these meetings with this BNF description. It was a little paper and I handed it- I hand carried it because it was so late in the game, so I had these copies that I dragged to the meeting and passed out to people and nobody paid any attention to it.

Booch: Really.

Backus: No. Except Peter Naur. When he came to write up the thing, he used this descriptive method, and improved it in the process.

Booch: In retrospect, I can’t imagine specifying a language without using BNF. So what were they doing before that time frame? It must have been—

Backus: They were just writing English.

Booch: And giving examples, and stuff like that. I had read you were influenced by some of the work of Noam Chomsky, that led you to that.

Backus: Yeah, well, that’s a funny story. That’s what I said and what I believed, and yet… Who was it?

Somebody sort of proved that I was wrong about it, that I hadn’t got it from Noam Chomsky, because the dates were all wrong somehow. But– God, who was that?

Booch: No worries. What became the de facto way, really, to describe the syntax of languages was something that I heard you say just came in late in the game in ALGOL. Now we look back on it and I would have sworn I thought it was a fundamental piece of the creation of ALGOL but—

Backus: No. They were inventing that language long before and the description was pretty much of a mess.

Booch: But the BNF work, it’s been so influential in other languages. I know ADA picked up on it. Didn’t Wirth use it to describe PASCAL as well?

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 25 of 42

Oral History of John Backus

Backus: I think so, yeah.

Booch: And pretty much every language. Did you have any interaction with Niklaus Wirth at all in the PASCAL work?

Backus: Not in designing PASCAL, no. But we would meet in these meetings quite often.

Booch: In your design of Fortran, are there things that – “regret” is the wrong word, but it’s “I wish we had done this thing a different way because we now created generations of programmers who are doing these terrible things”. Is there any such thing in Fortran like that?

Backus: Not that I’m aware of, because I never used it very much so I—

Booch: Really! Interesting. So as a programmer, what did you program in most of the time?

Backus: I never wrote many programs. I was not good at doing that. What kind of programs was I going to write anyway?

Booch: From the four color problem – that was around the time of the work with ALGOL, if I’m not mistaken – then what did it lead you to next? Was this around the time you went to the [IBM] San Jose Labs, Santa Teresa Labs?

Backus: Yeah.

Booch: What led you to be moved out that way? I love the west coast; it’s not a bad place to be.

Backus: Well, I got an invitation from Berkeley to be a visiting professor there. I went out and I spent a year at Berkeley.

Booch: Still with IBM though.

Backus: Still with IBM. Never gave a lecture, just sat around in the engineering building. At the end of the year they were so pleased with my performance they invited me to be a visiting professor for another year. Again, never gave a lecture, and so that’s how I kind of got moved out to the West Coast.

Booch: The labs were really just forming around that time in Santa Teresa, weren’t they?

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 26 of 42

Oral History of John Backus

Backus: Yeah, so I didn’t show up in San Jose for quite a long time. I was just hanging out in San Francisco, and finally they said, “Well, how about showing up?” So I started going down there, and after that I got working on this stuff about—

Booch: The functional programming work?

Backus: Yeah.

Booch: The Santa Teresa Labs are interesting; they’re still kind of in the middle of nowhere. Back then they must have really been in the middle of nowhere, because San Jose hadn’t quite expanded its borders that much. And you were there when there was still a lot of orchards around in the area.

Backus: Yeah. When I first went down there, there was just this little– There was the plant and then there was this little building—

Booch: What were they doing at the plant? What did they manufacture at that time?

Backus: Oh, I think printers or something. I’m not sure.

Booch: That sounds about right. I think these days there’s a lot of database work that goes on in that space.

Backus: Yes.

Booch: You probably had the feeling of “I wish I had bought lots of real estate when I first moved into that area”, because you saw some amazing transformations in the valley over the years.

Backus: Oh, yeah.

Booch: This would have been in the early 1960s you ended up in San Jose?

Backus: Let’s see—

Booch: I think I have the date. Sixty three was around the time you moved there—

Backus: Uh huh.

Booch: –and that was way before Silicon Valley came to be Silicon Valley.

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 27 of 42

Oral History of John Backus

Backus: Right.

Booch: It was really around that time frame that you started your first forays into the functional programming work.

Backus: Yeah.

Booch: Tell me a little bit about the work environment in that space. You showed up occasionally at the labs it sounds like.

Backus: Yeah. I mainly stayed home. I worked with Ted Codd briefly, and—

Booch: This is before Ted Codd of the database world.

Backus: Yeah.

Booch: This was long before he’d really begun to formulate his relational database work.

Backus: Yes.

Booch: What work were you doing with him?

Backus: Just trying to work on this functional programming stuff. I was just groping around really, trying to—

Booch: What led you to the functional programming domain in the first place?

Backus: That’s hard to say because– I was just trying to think of some sort of really higher level programming that wasn’t as difficult as Fortran. The problem was that the idea of functional programming, the “combining forms” and stuff like that, came pretty easily. But trying to make it into a real full system where you could deal with all the other issues that you couldn’t express in that language got very confusing and messy.

Booch: Indeed, as I look over your career, you probably spent more time on functional programming than you did on the Fortran work certainly.

Backus: I think so, yeah.

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 28 of 42

Oral History of John Backus

Booch: Were there others around you that influenced the early functional programming work, or was this sort of a foray on your own?

Backus: I think it was mostly a foray on my own.

Booch: And IBM created an environment that they let you go off and do these wild things.

Backus: Yeah. I guess– By that time I was a Fellow so I could do whatever the hell I wanted.

Booch: You were one of the first Fellows. Were you in fact in the first batch of Fellows?

Backus: Yes.

Booch: Who were some of your peers who were the other Fellows or—

John Backus: I didn’t know them, because they were all into printers and hardware and stuff, so I didn’t know any of them.

Booch: As I recall, the Fellow program was started by Watson Jr–

Backus: Yes.

Booch: –as a means of recognizing some of IBM’s top technical talent, and let them alone so they can create new great things for us as well.

Backus: Yeah. The idea was that you could do what you wanted for a year and–

Booch: It turned out to be longer than a year though.

Backus: Yes, and then I kept sort of doing what I wanted and they kept saying “Oh, yes, go ahead, do it.”

Booch: Very nice.

Backus: Yes. Then they finally decided that they’d better quit this one year at a time thing.

Booch: Then turn it into: this is sort of what you do the rest of your career?

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 29 of 42

Oral History of John Backus

Backus: Yeah, sort of. That is the understanding, isn’t it?

Booch: That’s the understanding. As I said to you, Nick Donofrio basically described that I have two jobs: One is to invent the future, and the other is to destroy bureaucracy. Of which there is a little bit of that around the organization. But it sounds like you were pretty much unencumbered by bureaucracy.

Backus: Yes, I was very unencumbered by bureaucracy.

Booch: That must have been nice.

Backus: Yeah.

Booch: Were you having as much fun then as you expressed you had in the time you were working on the SSEC? Or was it a different kind of fun?

Backus: Well, the most fun time was working on Fortran. We really had a ball working on that because it was just… We had this nice place to work, and we all got along very well with each other. At one point we were in this hotel across from Saks Fifth Avenue, and everybody spent half their time looking in to the dressing rooms across the street.

Booch: [Laughs] There’s a distraction.

Backus: Yeah, it was a distraction.

Booch: Do you have much contact at all with any of your colleagues from that time frame? They must have scattered to the winds.

Backus: Yeah. No, I have contact with Irv Ziller.

Booch: Where is Irv these days?

Backus: He’s in New York, the same old place he’s lived his whole life, across the Hudson, just in Yonkers or someplace. Not Yonkers, it’s Riverside, yeah.

Booch: He stayed with IBM for a long time then.

Backus: Yes, he did.

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 30 of 42

Oral History of John Backus

Booch: IBM tended to hold on to people a long time.

Backus: He became very closely associated with the vice president, some– I forget the name of the vice president but he was sort of an executive without portfolio. He was a very smart guy.

Booch: Lois and Roy and Pete and Bob and Dave, any of those other folks?

Backus: Well, a lot of them are dead. Peter is dead, Harlan is dead, Roy is dead.

Booch: Lois?

Backus: Lois is still alive.

Booch: Time marches on.

Backus: Yeah.

Booch: Let’s move back to San Jose. Do you think you were a Fellow? That would have been ’63, around the same time. Was that at the same time you were moved over to the West Coast?

Backus: Yeah.

Booch: So you began the functional programming work. Tell me about some of its earliest formulations.

What were the problems you were trying to solve [those] that Fortran didn’t quite solve?

Backus: Well, it was just trying to be at a higher level so that you didn’t have to get into all those gory details and stuff. Basically, the idea was to try to describe the transformation that you wanted to take place, rather than how to do it. It evolved very slowly and peculiarly. I had no idea about combining forms when I started, and just finally hit on that idea and developed it.

Booch: It really fermented in a time frame where there was an explosion of other languages. There was PASCAL, there were the successors to ALGOL, there was what became Ada. What did you think of the whole Ada? You were around that time frame.

Backus: Well, I thought it was a pile of stuff—

Booch: Tell us what you really feel, John. [Laughs] Don’t hold back here.

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 31 of 42

Oral History of John Backus

Backus: Well, it was just so incredibly bureaucratized and complicated and impossible to learn.

Booch: Your functional programming work was so different.

Backus: Huh?

Booch: Your functional programming work was going down such a different path, of pushing simplicity and power of expressiveness and the like.

Backus: But it was ultimately unsuccessful because it couldn’t take in all the peripheral stuff that you had.

Booch: Your functional programming work was unsuccessful.

Backus: Yes.

Booch: Let’s dwell upon that for a moment, because there were some other papers that I saw after your Turing Award lecture [“Can Programming Be Liberated From the von Neummann Style”, 1977] which was also a turning point. Because I’d describe it as a wake-up call to the language developers and programmers, saying there’s a different way of looking at the world here. The world was going down a very different path. Let me pursue that point of why you think it didn’t succeed.

Backus: Well, because the fundamental paradigm did not include a way of dealing with real time. It was a way of saying how to transform this thing into that thing, but there was no element of time involved, and that was where it got hung up.

Booch: That’s a problem you wrestled with for literally years.

Backus: Yeah, and unsuccessfully.

Booch: After the Turing Award work –that was 1977 when you were given the Turing Award – and that paper was incredibly influential. I know there was some other work in functional language at Berkeley, and others that really picked up on it well, that tried to make that more concrete.

Backus: Right.

Booch: How long then did you continue on with that – really until your retirement in ’91? Were there other problems?

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 32 of 42

Oral History of John Backus

Backus: Yeah.

Booch: That was also around the time of lots of other languages. We saw the beginnings of C, and what became C++, and Smalltalk was around that time. What did you think of those languages?

Backus: I never learned them, so I don’t have too much of an opinion.

Booch: If I were to ask you what your favorite language is, it would probably be? If there is such a thing.

Backus: Yeah, I don’t really have one.

Booch: What do you think of the contemporary languages such as Perl and Python and Ruby? Have you tracked any of those things that are going on?

Backus: No. I’m a terribly unscholarly person, and lazy.

Booch: Really!

Backus: Yeah.

Booch: Interesting. I would never have characterized you as such.

Backus: Yeah, it’s true.

Booch: So Fortran was a way to help deal with that laziness in a way. You could do things better—

Backus: Yeah. That was my motivating force in most of what I did, was how to avoid work.

Booch: That’s not a bad thing necessarily. You said one time that the assumptions under which Fortran were made simply don’t exist anymore, those assumptions being we needed to build really efficient programs. What do you think are reasonable assumptions for a language designer today for them to have to worry about?

Backus: Well, I guess the question of it still seems that programming is a pretty low-level enterprise, and that somebody ought to be thinking about how to make it higher; really higher level than it is.

Booch: But functional programming wasn’t a fruitful path, you think.

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 33 of 42

Oral History of John Backus

Backus: Well, it was and it wasn’t. It’s just that that whole paradigm didn’t include these other [things].

Somebody needs to find a way to include those other things in a clean way.

Booch: Do you think it’s still possible?

Backus: I guess. I don’t know. It’s a difficult problem.

Booch: It is, and it’s one that consumed you for a long time.

Backus: Yes.

Booch: You continued on that path for the longest time at the San Jose Labs. Correct?

Backus: Yeah.

Booch: Until your retirement from IBM in 1991 or thereabouts.

Backus: Uh huh.

Booch: Why did you leave IBM in 1991?

Backus: I don’t know. It was my official retirement age so I just—

Booch: So it was time to move on.

Backus: Yeah.

Booch: You would have been 60 something—

Backus: -Five, yeah.

Booch: Sixty five.

Backus: Yeah.

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 34 of 42

Oral History of John Backus

Booch: I didn’t realize IBM had such an age. I don’t worry about those things. That’s long in the future for me I guess.

Backus: Good.

Booch: From there you went on to Berkeley for a while and stayed there? Or had you taught for a while?

Backus: No. That was earlier.

Booch: What did you do after retirement from IBM?

Backus: What did I mainly do? I didn’t do much of anything, actually.

Booch: You were living in San Francisco at the time, which is a nice place to be living.

Backus: Yeah. I did a lot of work helping my wife get her computer stuff.

Booch: You were tech support for the household.

Backus: Right.

Booch: That was a time frame when there was such an explosion in activity in the Silicon Valley and the whole area. Do you have any impressions of that timeframe?

Backus: No, because I wasn’t involved, and I had sort of gotten out of technical stuff. I was interested more in music and reading, and stuff like that.

Booch: That’s right, you’re quite a classical music fan, and an abstract art fan.

Backus: Well, I don’t know much about abstract art actually.

Booch: Tell me about your love of music. Did you always have that love of music?

Backus: Yeah. And I always tried to sort of get into contemporary popular music, but I never managed to like any of it because it always seemed so trite.

Booch: Do you play an instrument yourself?

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 35 of 42

Oral History of John Backus

Backus: No, I don’t unfortunately. I always struggled when I was younger to play the piano, but I was always clumsy at it, so I never….

Booch: Who are some of your favorite classical musicians? Are we talking classic, classic like Bach and Beethoven and the like?

Backus: Yeah, and Mozart is one of my favorites but I also like this- a guy named Goretski. He’s a modern Polish composer. He does a lot of nice stuff.

Booch: Interesting. And you have a love for art, and a love for reading as well, I think you said.

Backus: Yeah, I like to read.

Booch: What do you like to read mostly?

Backus: History, biography.

Booch: What are you currently reading?

Backus: I’m reading this thing by David McCullough, a biography of Theodore Roosevelt.

Booch: If someone were to read a biography of John Backus, it’d be a pretty thick book I imagine. What would you hope it would say?

Backus: Well, that I helped. That I contributed to the development of computing. And I’m essentially nonviolent.

Booch: You’re a peaceful, gentle guy. As you look back over your career, what are you most proud of?

Is it the Fortran work? Is it the functional programming work? Is it something entirely different?

Backus: I guess the functional programming stuff. Yeah.

Booch: What would be your advice to somebody that would want to take up the banner of functional programming? Where would you suggest they begin, and what hard problems would you like them to pursue?

Backus: Well, trying to functionalize all the input/output stuff.

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 36 of 42

Oral History of John Backus

Booch: Helping it talk to the real world.

Backus: Yes.

Booch: Do you think there’s a class of problems for which functional programming is better suited to solving than contemporary languages?

Backus: Well, any problem that just wants to transform some piece of data into another piece, I’d say functional programming is better suited to that.

Booch: In fact, we were talking earlier that Google even has a functional programming language, a thing called Goopy if I’m not mistaken.

Backus: Right.

Booch: It’s exciting to see them picking up on it. So see, your work has gotten traction. It truly has.

Booch: [Let’s go] way back before Fortran. Where were you born?

Backus: I was born in Wilmington, Delaware, a pretty lousy place.

Booch: How was it lousy?

Backus: Well, it's the home of the DuPont family, so it's a whole bunch of rich sons of b*tches acting up.

Acting rich. Not a very good place.

Booch: And that would have been… Give me the year, I can't calculate it in my head.

Backus: I was born in 1924.

Booch: 1924. Your parents – a little bit about their history. What does your dad do?

Backus: My father was originally a chemist, but then during the first World War, he was a munitions officer. When he came back to the DuPont company – he was told they were going to hold his job – and they hadn't. So he became a stockbroker, and got really rich. That's the story of my father. He was born in Virginia, [to] a very poor family, and only went to two years of college, or something like that. He was a smart guy. Not a very nice guy, but he was smart. My mother died when I was eight and a half. And, of course, until the late '80s, early '90s, I hadn't remembered anything about her until I took some LSD and remembered a lot of stuff that I would just as soon have forgotten, where she was sexually abusing me.

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 37 of 42

Oral History of John Backus

But it was amazing. Until I took LSD it was as if she hadn't existed; I had really just wiped her out of my memory. I couldn't remember anything about her, except one incident in which she plugged in a light thing and it short circuited.

Booch: The things one remembers. Wow.

Backus: That's the only thing I remembered about her.

Booch: Did you have siblings? Any brothers or sisters?

Backus: Yeah. I have an older sister who's now dead, and I have a younger brother who lives in eastern Maryland. Very nice place.

Booch: So you were the middle child?

Backus: Yes.

Booch: Were you a precocious child? Were you energetic, a sports kind of child?

Backus: No. I was a withdrawn, I think, rather sadistic child.

Booch: Sadistic in what way?

Backus: Well, I used to get kids in this little shed in the back of our house, and sort of mess around with them in some nasty way, humiliating way.

Booch: You went to school in Delaware?

Backus: Yeah. I went to a school called Tower Hill School in Wilmington, and then in the eighth grade I went to the Hill School in Pottstown, Pennsylvania.

Booch: Did your dad remarry at all?

Backus: Yes. He remarried to a really horrible woman, my stepmother, who was really neurotic as hell.

For a while she was an alcoholic, and would sort of hang out the window yelling at trades people, and stuff like that. Then she quit that, but she was always a b*tch.

Booch: So you grew up in that area, and then after high school you left the region?

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 38 of 42

Oral History of John Backus

Backus: Well, after I went away to Hill School, I practically never came back to Wilmington.

Booch: So your family stayed there, but you then went away.

Backus: Yes. After I got out of prep school, I moved to New York. Got this wonderful 18 dollar a month apartment.

Booch: Oh my goodness. Wow. Too bad you can't do that these days. Eighteen dollars a month?

Backus: Eighteen dollars.

Booch: That might buy you a second these days, in New York City. So what led you to New York?

Remind me of that story.

Backus: I don't know. It seemed like a good place to get away from my family.

Booch: Definitely not a bad place to be. In fact, as you think about being in grade school and high school and stuff, what did you imagine you wanted to be when you grew up? Or were you thinking of those kind of things?

Backus: I didn't think about that at all. After I got to New York, my big ambition was to build a really good hi-fi set, which was not around in those days. I got this huge chassis, that had these gigantic transformers and stuff. Didn't work very well, I must say, because I wasn't an electrical engineer. But I tried.

Booch: Part of the history of you just trying things and not knowing that you were going to fail. And just do it.

Backus: Right.

Booch: Fascinating. In fact, I saw this as a theme in one of the interviews you did. You were talking about the book, “In Search of Excellence,” I remember, which you talked quite a bit about. I think you reflected upon the importance of failure, [and] what we can learn from all that. What have you learned from your failures, would you say? Both software and otherwise?

Backus: It’s a difficult question. I've learned not to be too optimistic. To realize that doing something worthwhile is tough. Things like that.

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 39 of 42

Oral History of John Backus

Booch: In fact, at lunch we were talking about an aspect of that. One of the things that motivated you in your work in Fortran, and subsequently in functional programming, was this growing complexity. You used a phrase about complexity that I thought was interesting.

Backus: Oh, the “cesspool of complexity”.

Booch: Yeah. Talk about that. What is this “cesspool of complexity?”

Backus: Well, I mean, just look around at software, and you see it everywhere. You see the contents of the cesspool, so to speak. Everything is so complicated. Everything comes with a manual that thick, and it's a mess.

Booch: How should we attack that complexity? I think Fred Brooks once spoke of it as the “inescapable complexity” that exists. Is it truly inescapable, or can we master it?

Backus: Well, that remains to be seen. Actually that functional programming was an effort to try to go up a level, so that you didn't have to keep saying how to do everything, but rather say what you wanted done. That idea of saying what you want done bumps up against a lot of problems in input and output, and stuff like that.

Booch: All those real things.

Backus: But that's basically where it should go.

Booch: That reminds me, speaking of Fred for a moment. Did you have much interaction with the 360

project and Fred's work?

Backus: Well, I had some interaction with it. I was involved in one of the design meetings and stuff. I kind of dislike the whole idea of different machines. I was really pushing for an identical design for the three middle machines in the class, and I don't know whether that happened or not, really. So that programs would be all the same for them.

Booch: Interesting. That was kind of a “bet the business” move on IBM's part, the whole 360 thing. It definitely transformed the company. Happily, that bet went well for them. Do you think there are any other big bets companies should be making these days?

Backus: Well, yes. If they can really bet on software that will make it possible to say what you want done rather than how to do it. I think that would be nice.

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 40 of 42

Oral History of John Backus

Booch: Here's a philosophical question, speaking of software. Is the world a better place because of all the software that's been written in your lifetime, or not?

Backus: Well, in human terms, probably not. Because it just takes us further and further away from human affairs. But as far as economic, and welfare, it's done a lot of good. So it's a mixed bag.

Booch: It is a mixed bag, it really is. You strike me as just an amazingly very human and gentle and caring person from that answer, and I absolutely love that. Where do we go from here? What do you think is going to happen in my lifetime?

Backus: Well, I don't know. But I don't envy you, I'm afraid. I think that we're getting more and more technological and less and less human oriented. And as a country, we're getting tremendously aggressive, and we're going to pay for it. So it's a tough call.

Booch: I'll sleep well tonight now. <laughs> I meet with a lot of people who are considering, should they pursue a career in software or not, hardware or software, anything in this space at all. Any advice you might offer? If you were to talk to somebody, say in high school or something like that, saying, “Gee, what should I do here?”, what would you say to that person?

Backus: Well, don't go into software. It's just such a complicated mess that you just frazzle your brains trying to do anything worthwhile.

Booch: Understood. Looking back on it all, have you had fun?

Backus: Yeah, I had a lot of fun.

Booch: And the most fun you talked about was the Fortran days and the SSEC…

Backus: Yeah, that was a lot of fun. I had a lot of fun too working on the functional programming stuff.

Booch: That must have been, because you were breaking completely new ground there, and you were unfettered by legacy or anything like that to pursue it.

Backus: And I had good, nice people to work with.

Booch: Who were some of the contemporaries you mostly worked with in the [effort]?

Backus: John Williams, primarily.

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 41 of 42

Oral History of John Backus

Booch: Do you stay in touch with John? Is he still active in this space?

Backus: Yeah.

Booch: So many people you have interacted with over the years. Many of them were my heroes—

you're one of my heroes— I'm delighted to have met you. I think I've run out of questions.

Backus: Good. <chuckles>

Booch: Anything else you would like to ask?

Hendrie: No, but thank you.

Booch: Thank you so much. This was a delight, to have a chance to meet you.

Backus: I've enjoyed it.

Booch: And I've learned some tricks about what it means to become a Fellow. So I'll institute them.

Which says basically, “Just do it.” The Nike approach. “Just do it.”

END OF INTERVIEW

CHM Ref: X3715.2007 © 2006 Computer History Museum Page 42 of 42

Computer History: Big Tech Silicon Valley Technocracy, Surveillance Valley - The Rise of the Military-Digital Complex - History of the Internet, Facebook (zuck.pdf), Tesla / Space X / Twitter (musk.pdf), History, IT History, Cloud History (Azure History, AWS History, GCP History), Amazon.com / Blue Origin (Bezos - bezos.pdf), Internet History, Email History, Bell Labs, Xerox PARC, OS History (UNIX History - Linux History - Minicomputer - Mainframe History - IBM History - Personal Computer History (Apple I - Apple II - Apple III, IBM PC, Compaq, Macintosh 128K, Apple Lisa), Vintage Apple Resources, Computer Stores, macOS History - Apple History - Apple, Inc. (Steve Jobs jobs.pdf), Windows History - Windows Server History - Microsoft History - Microsoft (Bill Gates gates.pdf, Programming History (C History - C++ History - C# History - COBOL History - Golang History - Java History - JavaScript History - Python History - PowerShell History), Computing History, Computing Hardware History, Software Engineering History, Software History, Networking History, Vintage Computing - Vintage Computers - Retrocomputing, Legacy - Defunct Microprocessor Companies (MOS Technology - 6502, Motorola - Motorola 68000, Zilog - Zilog Z80), Legacy - Defunct Computer Companies, Legacy - Defunct Software Companies, History of Computer Hardware, History of Computing, History of Programming Languages, Legacy - Defunct Electronics Companies, PowerPC architecture family, List of PowerPC processors, CPU - Microprocessors, Discontinued Intel processors, 4-bit computing - 4-bit, 8-bit computing - 8-bit, 16-bit computing - 16-bit, 32-bit computing - 32-bit, History of Microsoft Exchange Server (Microsoft Mail - formerly Network Courier), Computer History Museum, Military-Digital Complex - Military-Industrial Complex (Read Surveillance Valley - The Rise of the Military-Digital Complex), Computer History Bibliography, Awesome Retrocomputing. (navbar_ithistory - see also navbar_bigtech, navbar_technocracy, navbar_programminghistory)


Cloud Monk is Retired (for now). Buddha with you. © 2005 - 2024 Losang Jinpa or Fair Use. Disclaimers

SYI LU SENG E MU CHYWE YE. NAN. WEI LA YE. WEI LA YE. SA WA HE.


john_backus_oral_history.txt · Last modified: 2023/11/30 01:22 by Losang Jinpa PhD MCSE/MCT Python-DevOps