I first went to Bell Labs, I think in 1967.
I was. at the time, a graduate student in computer science - except it was
before computer science. It was electrical engineering
at Princeton and I was lucky enough to get
a summer job at Bell Labs. But it was a wonderful place because there were an enormous
number of really good people,
doing really interesting things, and nobody telling you what to do -
a kinda rewarding environment! And so it was so good that when I graduated
from Princeton I didn't even interview any other place I just said "OK
I'll go to Bell Labs. they offered me a job, why not do it ?"
And that was a decision that was extremely lucky and I've never regretted it.
In one single large-ish building there were probably four thousand people of whom
about 2,000 were probably PhD's in various forms of
science: physics, chemistry, materials and then
on the - call it the "softer" end - mathematics and
the relatively new field of computer science at that point.
A large number of really, really excellent people, and the environment was
"You can do anything you want" because
the revenue source for Bell Labs. with very stable. It was part of AT&T
which, in effect, provided telephone service for the whole country
and the way it did it ... At that time AT&T was a regulated monopoly which meant they
had in effect a guaranteed rate of return
and they peeled a tiny piece of that off for
research to improve telephone service in the country. That was the quid pro quo.
And because of that there was no shortage of
resources and no management direction that said "You have to do something that will
save the company in the next quarter". That was really
very satisfying and so most people worked on things that were in some way
long-term
or, at least, whose immediate application wasn't obvious. Hard to beat that
environment I think.
And I think I was there for over 30 years and I was never once told what I
should be working
on . And the way it worked was, at the and of each year
you had to write down on one side, of one piece of paper, what you had done
during the year and they used that to determine how much they'd pay you next year.
I was born in Toronto -
as almost everybody in Canada seems to be and
I went to University at
University of Toronto and I was there from '60 to '64
and then not knowing what to do, in the best tradition, and not wanting to look
for a job, I went to graduate school
and so I wound up at Princeton, I think largely because they made me
on the surface, and in retrospect really,
a better offer than some of the other places that I had also applied to.
And that was a very good thing. I actually enjoyed that and I met a lot of
good people and by pure luck
I landed this job at Bell Labs. The reason I landed the job there, I think, is that
the year before I had worked at MIT on Project Mac, which was the very first
real .... It was the beginning of the MULTICS era
and they were using something called CTSS - the Compatible Time-Sharing System
which was really the first time-sharing
system up. And so I had a good time that summer
and I met, indirectly, virtually all the people from Bell Labs. and so I
got lucky and got a job for a couple of summers and that paid off
both in future contacts but also in giving me
something to do for my thesis. The original computing world
- original? - a long time ago, certainly when I was an undergraduate, was that there
were big computers
sitting in rooms - air-conditioned rooms - behind counters, looked after by operators.
And if you wanted to get something done what you had to do
was take - usually a deck of cards - although perhaps paper tape,
hand it to an operator, and a long time later
you would get your results, which of course would be "It didn't work" and so you'd repeat it.
And so the idea of time-sharing was to say let's make it so that here's this
computer, sitting there,
and, instead of feeding it cards by an operator, let's connect
terminals to it. And these were mostly, at that time, mechanical terminals,
like teletypes, not even VDT terminals.
And connect those and have the operating system
of the computer sort of give you a few seconds, or
half a second, of time and give him a half, and give her
a little bit. And just going round and round the people who wanted
to do some kind of computing. Because computers were, even then, much faster than
people, this actually gave everybody the
illusion that they had the whole computer to themselves. So it was unbelievably
liberating. You could
type some stuff into a file
and it would remember it for you - no punch-cards! And then you could say "Gee!
let me compile that file". And it would do that,
and a few seconds later the compilation would be over. And no waiting for an operator
to give you
a piece of paper that said your compilation failed: you found it right away. So then
you made a change
and did it again and so it was incredibly more productive. You could do in a few
minutes something that might have taken you a few days with the punch card
paper, operator, kind of mechanisms. That's what time-sharing was,
if you like. So could you call that an early version of Cloud Computing?
Perhaps you could. There's a central computer it has the resources that were
information is being stored
and you're talking to it remotely. Maybe not very remotely
but, given phone systems, it could be really remotely. So in an early sense
you could say that was cloud computing. >> SEAN: You've come round full-circle in some respects?
>> BWK: In some respects absolutely. The connection
was that MIT had done this system called CTSS
- very successful but of course very local - and
they decided that they wanted to do the next thing which was
a computing utility which would provide that same sort of wonderful service
to the world at large. Let's build a computing utility and to do that we need more
resources of time, money and especially people.
And so MIT enlisted two other organizations to help them build this
thing, which was going to be called MULTICS - the Multiplexed Information and Computing Service.
One of those was General Electric which, at the time made computer hardware -
seem strange - and the other was Bell Labs.
which had, at the time, a lot of experience in operating system development
because they had built operating systems for
IBM computers, that were not IBM. And so
we had these three organizations MIT, GE
and Bell Labs, in three different places. One was in Cambridge, Massachusetts one was in
Murray Hill, New Jersey and one was in Phoenix, Arizona. You don't have to study
management theory very much to realize the potential problems in
this sort of thing. So they worked on MULTICS for probably three or four
years and at that point Bell Labs. decided that it wasn't going
where it should go, fast enough. And they withdrew from the project.
That was in late '68 - very early '69.
But up to that point people from Bell Labs who had been involved in MULTICS were
had, y' know, really gotten used to time-sharing, understood that it worked really well
and had learned a lot of things about how you develop operating systems, were
using high-level languages to do the actual implementation of the operating
systems. They got a tremendous amount
of experience and a taste for really good computing
and so when Bell Labs. pulled out it left people,
in particular Ken Thompson and Dennis Ritchie, with a big hole:
"We'd like to do things this way but we can't do it, what do we do?"
And then you go off to this well-told story of Ken Thompson finding a
little-used PDP-7 upon which he built, in a month,
an operating system. And the rest is UNIX history.
At the time I was at MIT, which was the summer of '66, I did not know Ken
at all. I met him, I think, then when I've spent the summer of '67
at Bell Labs. and we were in the same organization
and I think Dennis arrived more or less at the same time. I don't have clear memories of
that, and then
I went there permanently in the uh ... very early in 1969, and we were all in the same
organization and so at that point I got to know
them well ... still friends. Dennis unfortunately died several years ago,
but I keep in touch with Ken at least sporadically.
>> SEAN: that must have been quite something! Summer of '69, you're there at Bell Labs.
What was the feeling there? Was it like working at one of these place that are so well-known for their innovation ...
>> BWK: Yes, it was an indescribably great experience - it really was - because there
were so many people there
who were so good, and the environment was totally open
and supportive. If you had a problem - it was
y'know, like the corridors of the building. Everybody's office door was open. You
could say "I have a problem"
to anybody and they would try and help you. They would drop whatever they were doing
and if somebody came into your office you could, y' know,
try and help them with their problems. If somebody had an idea they would talk
about it; people would gather in the corners talking about ideas,
people would meet at lunch and talk about things like that. Everything was totally open.
Certainly in the UNIX system, although they were protections on files
in the file-system, people tended not to use them. And certainly the source code
for the system was just sitting there and you could
look at it. People had logins but
typically kept their directories totally open. It was probably foolishly open in
some respects but ...
So if you wanted to see how a command worked
you could read the code. If you wanted to change it - well go ahead and do it
And so, in that sense,
it was, within a narrower environment, a precursor of
open source and, in the jargon of a few years later, was
"Ego-less programming"
in the sense that "I wrote the code but if somebody else can do it better - go ahead"
I think typically that didn't happen a lot, except by people who were working
together. So no way would I go in and change Ken's implementation something in
the kernel.
No - not me! But
I remember going in and changing some stuff, adding
a sub-command to the the editor, 'ed', at one point, just because there was
something I thought I could do better that would be useful.
So, that kind of thing happened all the time. So it was
a very very free, open
and incredibly ... wonderful experience
because you weren't told what to do, you were just ... go do something.
I think part of it was the environment - the environment was so
stimulating and there were so many interesting things to work on.
I think in the background ... AT&T remember was providing
a telephone service for the whole country. AT&T had well over a million employees
it was the biggest employer outside
the government at that time. And that meant that it was a problem-rich environment
there were just
all kinds of things that you could work on. And so
although there was nobody telling you what to work on,
there was always, in the background, this idea that "Gee! there's something
interesting there, we could do something
with that". And I think a lot of people, and
certainly for me, you would work on something that had nothing obvious
immediately to do with
communications and then maybe you'd work for a little while on something that did
have something, and you'd kinda cycle back and forth
among these. Other people stayed fairly pure on one side
of, y'know, "Let me ... let's do mathematical type research"
and others were fairly hard-core "Let's do something that's
directly related to the telephone business" - all the time.
But remember the research part although it was - call it 1500 to 2000 people - was actually a tiny,
tiny fraction of the whole company. So in some sense it didn't matter as long as
this collection of people produced things that were useful.
And they had produced, over the years, things that were useful. The transistor comes
to mind as just something that was useful.
And some of the early work on lasers was
done at Bell Labs. Zone refining which makes semiconductors actually
practical - all of these things came out
of Bell Labs. And, of course, lots of interesting things in communications as
well. So, given an environment like that - and where everybody is better than you are -
you don't slack. You try and keep up with them ....
I never succeeded but it was a lot of fun!