A Personal History of Dr. Logo ------------------------------ by Joe Power How the Consumer Division Came To Be ------------------------------------ Gary Kildall originally intended his Logo to be used by his son, Scott. The management at Digital Research (Gary had given over the running of the company to his ex-wife and others, so he could spend his time working on projects that interested him) wanted to move into consumer/educational software, and decided the Logo interpreter would be the flagship product. How I became involved --------------------- I had known Steve Schmitt while working at a company in Michigan (Systems Research, Inc.) After SRI was acquired by Burroughs Corp., Steve left to join Digital Research. I ran into him about a year later, at a software conference we both happened to attend, and we had a long chat. I had had some Lisp experience, and one of my jobs at SRI was making programs fit into very tight spaces. Apparently, those were things they needed as I was offered a job. Moving from Michigan to California was not a hard decision to make! What I contributed to the project --------------------------------- Originally, I was working on some of the small bits of assembly code needed to speed up the turtle graphics. This was where our code was the slowest. Eventually, when we decided to port the interpreter to the DEC Rainbow (a system which failed so horribly at being PC compatible we routinely referred to it as the "brainblow"), we hired in a specialist. (To give you an idea of how bad the Rainbow was, the video memory was not memory mapped as on the PC, but I/O mapped. To change the color of a single dot on the screen took 4 port reads, an AND or OR operation, and 4 port writes. Needless to say, the FILL function was NOT pretty.) I was also working with some software engineers that Sony had sent over from Japan to port Dr. Logo to the SMC-777C (Microsoft and a group of Japanese manufacturers had settled on a common 8- bit base hardware scheme known as MSX. The SMC-777C was one of Sony's MSX systems.) This was a Z80-based system with 128K (banked) memory running CP/M 2.2, so we needed to crush the interpreter down to fit. One example was TF -- TurtleFacts -- which replaced the functions that reported the turtle's X- position, Y-Position, heading, color, visibility (TRUE or FALSE) and status (up or down). Doing this, I gradually drifted into the position of quality tester for the versions of the interpreter. Freed of helping coding the interpreter, I became the main person coding IN the interpreter. You have to understand -- Gary in particular (and DRI in general) came from the background of writing Operating Systems and compilers in assembly language. They had no background in primary education. Neither did I, but I'd been playing with microcomputers and with Lisp as much as a user as an implementer for a number of years, and I was talking to enough people in the Logo community to know that we needed example programs. As part of my testing and documentation duties, I started writing Dr. Logo programs which I felt would improve the abilities of our Logo and make it easier to teach. The CARDS program ----------------- One of the programs I felt was most needed was a good demonstration of how modular programming should be done in Logo. Blackjack is a simple enough game that most people know the basic rules, so I decided it would be a fine thing to demonstrate reasonably good Dr. Logo programming practices. There is a story behind why the CARDS program was included without mention on the Dr. Logo disk. When the team decided the interpreter was completed, we produced the "golden master" to give to our distribution facility. At the time, I lived about a block away from the facility, so I was tasked to drop it off on my way home. At the time, there were NO example programs on the disk, and I felt this would impact us negatively with reviewers. In fact, I felt so strongly about this that I went home first, copied the CARDS program onto the master, and THEN dropped it off. Luckily for me, the fellow who did the review for BYTE magazine found the program and heaped lavish praise for it in his article. WHEW! The Dr. Logo Newsletter ----------------------- As I said, most of the people writing the interpreter came from a programming, rather than educational background. It took all my powers of persuasion to get them to see that a Logo interpreter bereft of any example coding simply wouldn't win over the people it needed to. The documentation was already huge and adding to it would have meant months of delay (which would have been fatal, as IBM was set to release their Logo interpreter at about the same time we were.) I finally convinced the higher-ups to insert a coupon for a free subscription to a Dr. Logo newsletter. The idea being that this would give us names and addresses of people we could market follow-on software to. Of course, the same higher-ups didn't think about allocating any resources to produce a newsletter, so I ended up writing one and working with our tech writer to get it published and mailed out. Many of the routines in the toolboxes were included there. So what happened? ----------------- Because Digital Research did not become the primary Operating System for the IBM PC (that's an entirely different story with many myths surrounding it), the company was starting to feel squeezed a bit financially. When the decision was made to create a consumer division, it should have been treated as a start-up which wouldn't turn a profit for several years. That's what the first four candidates for division head said in their interviews. What the board wanted to hear was that the division would turn a profit in its first year. That's what candidate number five said and he got the job. He started staffing and spending as if the division would turn a profit the first year. When it became abundantly clear that it wouldn't, the management decided to return to the company's roots and cancelled the entire project. Gary and Steve had moved on to playing around with laser-disks and putting things like encyclopedias on them (sort of a proto-Encarta) and weren't really around to defend it. Several of the other team members had moved on to other projects as well, so DRI moved the Logo interpreter over to the Languages division where they were perfectly happy to sell it, but had no real plans to support it. It died a quiet death soon thereafter. EOF