Armstrong: Yes. And then you’d put it all together. I don’t know if thatcounts as learning programming. When I went to university I was in thephysics department at University College of London. I think we probablyhad programming from the first year. Then you had this turnaround of threehours or something. But again it was best to run about four or fiveprograms at the same time so you got them back fairly quickly.

Seibel: In high school, was it an actual school course?

Armstrong: It was an after-hours course—computer club or something.We went to see the computer, I remember. Lots of serious-looking oldermen wearing white coats with pens stuck in their pockets wanderingaround, like, a church. It was a very expensive computer.

Seibel: You were studying physics; when did you shift to programming?

Armstrong: Well, as an undergraduate some of the courses involvedwriting programs and I really enjoyed that. And I got to be very good atdebugging. If all else failed, I would debug people’s programs. The standarddebugging was one beer. Then it would go up—a two-beer problem or athree-beer problem or something like that.

Seibel: That was in terms of how many beers they had to buy you whenyou debugged their program?

Armstrong: Yeah, when I fixed their program. I used to read programsand think, “Why are they writing it this way; this is very complicated,” andI’d just rewrite them to simplify them. It used to strike me as strange thatpeople wrote complicated programs. I could see how to do things in a fewlines and they’d written tens of lines and I’d sort of wonder why they didn’tsee the simple way. I got quite good at that.

When I really got to programming was after I finished my first degree and Idecided I wanted to do a PhD. So I started to do a PhD in high-energyphysics and joined the bubble chamber group there and they had acomputer. A DDP-516, a Honeywell DDP-516. And I could use it all bymyself. It was punched cards, but I could run the programs there—I couldput them into the thing and press a button and whoomp, out came theanswer immediately. I had great fun with that. I wrote a little chess programfor it.

This was when real core memory was knitted by little old ladies and youcould see the cores—you could see these little magnets and the wires wentin and out. Frightfully expensive—it had something like a 10MB disk drivethat had 20 platters and weighed 15 kilos or something. It had a teletextinterface—you could type your programs in on that.

And then came this “glass TTY” which was one of the first visual displayunits and you could type your programs in and edit them. I thought this wasfantastic. No more punched cards. I remember talking to the computermanager and saying, “You know, one day everybody will have these.” Andhe said, “You’re mad, Joe. Completely mad!” “Why not?” “Well, they’re fartoo expensive.”

That was really when I learned to program. And my supervisor at the time,he said, “You shouldn’t be doing a PhD in physics. You should stop and docomputers because you love computers.” And I said, “No, no, no. I’ve tofinish this stuff that I was doing.” But he was right, actually.

Seibel: Did you finish your PhD?

Armstrong: No, I didn’t because I ran out of money. Then I went toEdinburgh. When I was reading physics we used to go and study in thephysics library. And in the corner of the physics library there was thissection of computer science books. And there were these brown-backedvolumes called Machine Intelligence, Volumes 1, 2, 3, and 4, which came fromEdinburgh, from the Department of Machine Intelligence there. I wassupposed to be studying physics but I was eagerly reading these things andthought, “Oh, that’s jolly good fun.” So I wrote to Donald Michie, who wasthe director of the Department of Machine Intelligence at Edinburgh, andsaid I was very interested in this kind of stuff and did he have any jobs. And Igot back a letter that said, well, they didn’t at the moment but he would liketo meet me anyway, see what sort of person I was.

Months later I got a phone call, or letter, from Michie, saying, “I’ll be inLondon next Tuesday; can we meet? I’m getting the train to Edinburgh; canyou come to the station?” I went to the station, met Michie, and he said,“Hmmm! Well, we can’t have an interview here—well, we’ll find a pub.” Sowe went to a pub and I chatted to Michie and then a bit later I got anotherletter from him, he says, “There’s a research job at Edinburgh, why don’tyou apply for it.” So I became Donald Michie’s research assistant and wentto Edinburgh. That was my transition between physics and computerscience.

Michie had worked with Turing at Bletchley Park during the second WorldWar and got all of Turing’s papers. I had a desk in Turing’s library, so allaround me were Turing’s papers. So I was a year at Edinburgh. After thatEdinburgh kind of collapsed because James Lighthill, a mathematician, washired by the government to go and investigate artificial intelligence atEdinburgh. And he came back and said, “Nothing of commercial value willever come out of this place.”

It was like one gigantic playpen kind of place. I was a founding member ofthe British Robotics Association and we all thought this was really going tohave enormous relevance. But the funding agencies—Robotics! What’s thisstuff? We’re not going to fund this! And so there was a period around ’72, Iguess, when all the funding dried up and everybody said, “Well, we had funwhile we were here; better go and do something else.”

Then it’s back to being a physicist. I came to Sweden and I got a job as aphysicist programmer for the EISCAT scientific association. My boss hadcome from IBM and he was older than me and he wanted a specification andhe would go and implement it. We used to argue over this. He said,“What’s bad about the job is we don’t have a job description and we don’thave a detailed specification.” And I said, “Well, a job with no jobdescription is a really good job. Because then you can form it how you like.”Anyway, he left after about a year and I got the boss’s job, the chiefdesigner.

I designed a system for them and that was what I suppose you’d call anapplication operating system—it’s something that runs on top of the regularoperating system. By now computers were becoming quite reasonable. Wehad NORD-10 computers which were Norwegian—I think they were anattempt to get into the PDP-11 market.

I worked there for almost four years. Then I got a job for the Swedish SpaceCorporation and built yet another application operating system to controlSweden’s first satellite, which was called Viking. That was a fun project—I’veforgotten the name of the computer but it was a clone of the Amdahlcomputer. It still only had line editors. It didn’t have full-screen editors. Andall your programs had to be in one directory. Ten letters for the file nameand three letters for the extension. And a Fortran compiler or assemblerand that’s it.

The funny thing is, thinking back, I don’t think all these modern gizmosactually make you any more productive. Hierarchical file systems—how dothey make you more productive? Most of software development goes on inyour head anyway. I think having worked with that simpler system imposes akind of disciplined way of thinking. If you haven’t got a directory system andyou have to put all the files in one directory, you have to be fairlydisciplined. If you haven’t got a revision control system, you have to be fairlydisciplined. Given that you apply that discipline to what you’re doing itdoesn’t seem to me to be any better to have hierarchical file systems andrevision control. They don’t solve the fundamental problem of solving yourproblem. They probably make it easier for groups of people to worktogether. For individuals I don’t see any difference.


Перейти на страницу:
Изменить размер шрифта: