In April of 1977, the end of my junior year at Princeton, I applied for a summer intern position with Bell Labs. Bell Labs had a high-volume internship program – lots of people from lots of places going into lots of different departments and locations. I really wanted to get into Center 127 which was the heart of UNIX development, but as a research department they didn’t really participate as much in the summer intern program. And I could have leveraged people at Princeton who also worked with Bell Labs, but I was clueless.
So I ended up applying to the normal intern program and I was brought in to interview. When asking around about how I could get there, I learned that Prof. Jeffrey Ullman went up there frequently so I was able to hitch a ride with him. The gentleman that I interviewed with and who would have been my hiring manager was Dr. Gottfried Luderer. I don’t remember exactly what his group did – it certainly involved UNIX but it was not the main UNIX group. Gottfried somehow convinced Ken Thompson to have lunch with us that fateful day, and I was able to tell Ken all about my work with UNIX on the IBM 370. Coincidentally, the UNIX guys had just begun a port of UNIX to an Interdata 8/32 minicomputer, whose architecture was quite similar to the 370.
Ken then launched my career by stealing me from Gottfried for the rest of the day and indeed I ended up working in Center 127 for the summer. After I got my job offer, a friend at school asked me “How does it feel to be set for life?” I didn’t know it then, but I certainly was!
I worked most closely with Dennis Ritchie and Steve Johnson – Steve was very much my mentor. The goal of the Interdata project was not just to port UNIX to the Interdata, but to create a portable UNIX which could easily go to many machines. By the time I arrived, the Interdata kernel and shell were functional and I dove in to make many of the user programs portable – tweaking and testing them with both Interdata and PDP-11.
Interns were required to write a technical note at the end of the summer describing their work. I hated writing with a passion but managed to crank out this note about Inter-UNIX_Portability. [Update: I just found that my paper was distributed more broadly within Bell Labs in a memo by B.A. Tague]
My work was cited in Johnson & Ritchie’s paper “Portability of C Programs and the UNIX System“. Version 7 of UNIX was released to the world in 1979 with the portability work in it and I receive credit in the preface of its manual. UNIX was thereafter ported to every major computer architecture.
Continue to part 2 for more about the people of Bell Labs.