Lorinda Cherry

Malika Seth

Interview

Cherry received her Masters in computer science from Stevens in 1969. She found that the curriculum leaned more heavily towards math than towards what is now considered to be computer science. It was early in their program, and the computer science aspect consisted of studying Turing Machines and numerical analysis, rather than compiler courses. According to Cherry, "[the curriculum] did not fit here at all. But I don't know where you could have gone for a curriculum that would have fit here...I'm not sure that anyone who was here at that time was really a computer scientist. I think everyone's training was in something else it was in math or engineering."

After a couple years of FORTRAN programming, she became bored of programming others' ideas and wanted to do systems work. It was hard to transfer to other groups because "it was in the days when everybody was training their own;" everyone had bought systems with no software and now had a unique system, so they wanted to train people on their own programming languages. She soon began working with Ken Nolton on graphics. and this project led to 3-D ball and stick models of atoms. She later joined Mannfred Schroeder in his work on signed processing, creating a picture that made the cover of the Experiment on Arts Show at theBrooklyn Museum.

Cherry joined Unix in 1972 as an assembly language programmer, originally with the purpose of building Unix systems. Because each had to be hand-crafted with the proper device drivers, it was important for someone on the project to do this work. However, she soon became involved with text tools. Her first project, with Bob Morris and Lee McMehan, was to confirm or deny the authorship of the Federalist Papers. Although they never came to any conclusions, many tools for processing text were developed in the process. Some of the statistical techniques used, along with trigram statistics, were incorporated in Typo, one of the earliest spell-checkers.

Cherry's work on trigram statistics in 1976 was her first independent project after being promoted to MTS. The goal of the project was to compress a phone book to the maximum extent possible. Basically, trigram statistics are three-letter combinations. This was useful in the project because, for example, if a ten-letter word had a six-letter trigram then the entire six-letter string could be removed and stored in a dictionary. It was then replaced with a byte and an index into the dictionary. Several levels of compression were possible. According to Cherry, there was no other compression technique at the time that could handle both data and ASCII. The same statistical techniques were then applied to finding typos, and led to the tools Typo and Spell.

She then began work on tex and eqn, both mathematical tools. From a mathematical standpoint tex is a better program, yet she prefers eqn. She considered the hardest and most interesting part of the project to be the language, rather than the graphics aspect, because of the importance in using a natural language that is intuitive and easy to work with. In Cherry's words, "the hard part is getting a language that you can teach to a math typist that will just flow off her fingertips to [create the] complicated graphics."

Cherry felt that one of the most unique aspects of Unix was the group attitude. Projects were not given out to people; instead, everyone was encouraged to come up with their own ideas and work on them either separately or in collaboration with others. Although she initially worked with others, usually concentrating on the programming aspects, after 1976 she worked on her own. The group also had the mindset of stringing things together, so everything could be used by everyone else and tools could work together. There was also a sense of ownership, namely that the last person to touch a program owned it and was therefore responsible for any changes made. Because of this attitude, one was hesitant to make changes unless it was absolutely necessary. The attitude became a form of discipline, resulting in simple, elegant code with a strong theoretical foundation. Cherry suggested that this attitude was also related to the environment in which they worked and compared their project to that from Berkeley. Although many of the commands are similar, she cited the example of the Cat command for which 85 flags were added in the Berkeley manual. She attributed this to the different size and environment, where "everybody needs to find a niche so they've got to put a flag on something...that undoubtedly has to do with the university environment where everybody has to do something as opposed to [this environment] where in some sense everybody had to justify [what they were working on]."

In general, Cherry considers herself a practitioner rather than a theorist and now finds herself writing programs "with any excuse or any activity." For instance, after work on the Unix project she published a series of articles on her statistical analysis of biases in dog-shows, based on the number of points awarded to dogs with certain characteristics. Her interest in programming her own ideas was one of the main reasons she decided to join the Unix project, and she felt strongly that each individual's creativity and independence, in addition to the group dynamics, were instrumental in creating a successful project.