home " subscribe " advertise " customer service " back issues " " contacts

Sections
  Newbies
  Reviews
  How To
    Best Defense
    Guru Guidance
    On The Desktop
  Developer's Den
    Gearheads Only
    Compile Time
    Perl of Wisdom
  Who's Who
 
Indexes
  Issue Archive
  Author Index
 
Linux Magazine
  Subscribe
  Advertise
  Customer Service
  Back Issues
  
  Contacts
 
On Stands Now Click to view Table of Contents for Linux Magazine March 2000 Issue
 
Subscribe to Linux Magazine

Linux Magazine / November 1999 / FEATURES
The Joy of Unix
 
<< prev   page 01 02 03 04 05   next >>

LM: Were you in favor of Sun's decision to move to AT&T Unix with Solaris?

BJ: It was hard to do a deal with AT&T and it was hard to work with them. It was a very close call and I went into Scott's office and I said to him: This is a really close call and I can make the deal happen if you want. There are pluses and minuses. Personally I think it's a plus because I think a unified Unix community is better than one that's not, and I'm concerned about this. But I also think it would be okay if we decide to go our own way. It's your call. It's a CEO call.

LM: Do you see similarities between the development community and the cultural community that's surrounding Linux right now and the community that surrounded BSD when you were developing it?

BJ: No. Our community was so small. It was Robert Elz and the people at Berkeley and the people at Bell Labs. There was one guy in Austria and one in Australia. No one else contributed much of substance that I recall.

LM: Do you believe that the BSD guys in general have a different philosophy toward software development then the Linux guys do?

BJ: No. I think that if you exclude device drivers, you'd find that there's a bit of a myth operating here; that a whole lot of people wrote the system. It was actually a small number of people.

LM: In BSD or in Linux?

BJ: Both cases. We have this myth that distributed development works, but it's a slight bit of a lie in that a small number of bright people can create an operating system. It does take a lot of people to write all of the device drivers. That's true. But that doesn't necessarily mean we can coordinate the programming of hundreds of people writing C code. I don't know if that's true or not, and I personally don't think Linux proves it. I don't think Apache proves that. That's the myth that people have propagated. Maybe it's true, but if you called me as an expert witness, I would testify that it has not been true in my experience.

LM: Is there something to the notion that the people working on BSD are more exclusive than the Linux community?

BJ: That's an us-versus-them thing.These things just get amplified. I don't think these people vary from each other by much. They just identify with some group, and that's a human-nature thing.

BSD is older. It doesn't need as much hacking. So if you're a new person learning how to hack, BSD was not as good a place to go. It didn't need as much work. Linux grew up with the Internet. By the time the Net came along, BSD didn't need the same level of work and wasn't as amenable to getting people interested in it.

When you already have several million lines of code, it's not as much fun to work on. Linux was a great thing because it allowed a lot of people to get involved in learning about operating systems by helping to finish this system. That process of creating something is the process of creating a community.

So Linux came along at the great, perfect time in a perfect, incomplete state for lots of people to participate in. It was still small enough that people could read the code. On the other hand, BSD was already mature, and the things that needed to be done to it were hard enough that it made it difficult for any person to come and participate.

So BSD wasn't as amenable to parallel innovation because the bar to participating was pretty high and the code base was too large. When I started on Unix, the source code could be listed in ten or twenty thousand lines as a 50-page or 100-page book.

If I came in today and wanted to do something with Solaris, I'd be overwhelmed. I can't have the kind of impact I had on Unix with Solaris. The second-generation people coming into the Linux community are going to have the same problem.

LM:: What inspired you to write vi?

BJ: What happened is that Ken Thompson came to Berkeley and brought this broken Pascal system, and we got this summer job to fix it. While we were fixing it, we got frustrated with the editor we were using which was named ed. ed is certainly frustrating.

We got this code from a guy named George Coulouris at University College in London called em -- Editor for Mortals -- since only immortals could use ed to do anything. By the way, before that summer, we could only type in uppercase. That summer we got lowercase ROMs for our terminals. It was really exciting to finally use lowercase.

LM: What year was that?

BJ: '76 or '77. It was the summer Carter was president. So we modified em and created en. I don't know if there was an eo or an ep but finally there was ex. [laughter] I remember en but I don't know how it got to ex. So I had a terminal at home and a 300 baud modem so the cursor could move around and I just stayed up all night for a few months and wrote vi.

LM: So you didn't really write vi in one weekend like everybody says?

BJ: No. It took a long time. It was really hard to do because you've got to remember that I was trying to make it usable over a 300 baud modem. That's also the reason you have all these funny commands. It just barely worked to use a screen editor over a modem. It was just barely fast enough. A 1200 baud modem was an upgrade. 1200 baud now is pretty slow.

9600 baud is faster than you can read. 1200 baud is way slower. So the editor was optimized so that you could edit and feel productive when it was painting slower than you could think. Now that computers are so much faster than you can think, nobody understands this anymore.

The people doing Emacs were sitting in labs at MIT with what were essentially fibre-channel links to the host, in contemporary terms. They were working on a PDP-10, which was a huge machine by comparison, with infinitely fast screens.

So they could have funny commands with the screen shimmering and all that, and meanwhile, I'm sitting at home in sort of World War II surplus housing at Berkeley with a modem and a terminal that can just barely get the cursor off the bottom line.

It was a world that is now extinct. People don't know that vi was written for a world that doesn't exist anymore -- unless you decide to get a satellite phone and use it to connect to the Net at 2400 baud, in which case you'll realize that the Net is not usable at 2400 baud. It used to be perfectly usable at 1200 baud. But these days you can't use the Web at 2400 baud because the ads are 24 kilobytes.

LM: Do you still use vi?

BJ: No, because I mostly use Netscape.

LM: To write code?

BJ: I mostly do e-mail. The last code I wrote of any substance, I wrote in vi.

LM: Did you have a sense back in those days -- even in the furthest region of your mind -- that you were working on something that would eventually build an industry or change the world?

BJ:No.

LM: At what point did it occur to you? At what point did you look around and say: Whoa?

BJ: I probably constantly under-estimated it.

LM: You must have realized that it was happening at some point in your career.

BJ: I think the Web was a "wow" for me because my dad was using it. [laughter]


<< prev   page 01 02 03 04 05   next >>
 
Linux Magazine / November 1999 / FEATURES
The Joy of Unix

home " subscribe " advertise " customer service " back issues " " contacts