Emergic: Rajesh Jain's Blog

Emergic: Rajesh Jain's Blog header image 2

Gates and RMS agree on this

March 20th, 2004 · No Comments

In the Programmers at Work panel at CMP’s Software Development Conference and Expo, Dan Bricklin read out this passage from Susan Lammers’ interview with Bill Gates.

The really great programs I’ve written have all been ones that I have thought about for a huge amount of time before I ever wrote them. I wrote at BASIC interpreter for a minicomputer in high school. I made massive mistakes in that program, and then I got to look at some other BASIC interpreters. So by the time I sat down to do Microsoft BASIC in 1975, it wasn’t a question of whether I could write the program, but rather a question of whether I could squeeze it into 4K and make it super fast….

…One of the most fun programming experiences I ever had was when we were doing BASIC. I had done the 8080 BASIC, and then I had about two weeks allocated to work with Mark Chamberlain on the 6809 version of BASIC. I read the instruction set at the start of the two weeks, and I wrote about three or four programs. And I looked at some other programs to see how people used the instruction set. It was great fun to take a problem I understood and map it onto this new instruction set, and see how tightly we could put the thing together…

…I really get satisfaction from somebody else on the team becoming a great programmer. Not quite as much as I do from writing the program myself, but that is a really positive event. The way I make someone else a great programmer is to sit and talk with him a lot, and I show him my code. In a team project, you make the code everybody’s code…

Interviewer: Is studying computer science the best way to prepare to be a programmer?

Gates: No, the best way to prepare is to write programs, and to study great programs that other people have written. In my case, I went to the garbage cans at the Computer Science Center and I fished out listings of their operating systems.

You’ve got to be willing to read other people’s code, and then write your own, then have other people review your code. You’ve got to want to be in this incredible feedback loop where you get the world-class people to tell you what you’re doing wrong…

Indeed, this is where both Bill Gates and Richard Stallman agree.

Tags: Software

0 responses so far ↓

  • There are no comments yet...Kick things off by filling out the form below.

Leave a Comment