Joe Ossanna

Joseph Frank Ossanna, Jr. (December 10, 1928 – November 28, 1977) was an American electrical engineer and computer programmer who worked as a member of the technical staff at the Bell Telephone Laboratories in Murray Hill, New Jersey. He became actively engaged in the software design of Multics (Multiplexed Information and Computing Service), a general-purpose operating system used at Bell.

Education and career
Ossanna received his Bachelor of Engineering (B.S.E.E.) from Wayne State University in 1952.

At Bell Telephone Labs, Ossanna was concerned with low-noise amplifier design, feedback amplifier design, satellite look-angle prediction, mobile radio fading theory, and statistical data processing. He was also concerned with the operation of the Murray Hill Computation Center and was actively engaged in the software design of Multics.

After learning how to program the PDP-7 computer, Ken Thompson, Dennis Ritchie, Joe Ossanna, and Rudd Canaday began to program the operating system that was designed earlier by Thompson (Unics, later named Unix). After writing the file system and a set of basic utilities, and assembler, a core of the Unix operating system was established. Doug McIlroy later wrote, "Ossanna, with the instincts of a motor pool sergeant, equipped our first lab and attracted the first outside users."

When the team got a Graphic Systems CAT phototypesetter for making camera-ready copy of professional articles for publication and patent applications, Ossanna wrote a version of nroff that would drive it. It was dubbed troff, for typesetter roff. So it was that in 1973 he authored the first version of troff for Unix entirely written in PDP-11 assembly language. However, two years later, Ossanna re-wrote the code in the C programming language. He had planned another rewrite which was supposed to improve its usability but this work was taken over by Brian Kernighan.

Ossanna was a member of the Association for Computing Machinery, Sigma Xi, and Tau Beta Pi.

Later life and death
He died as a consequence of heart disease.

Selected publications

 * Bogert, Bruce P.; Ossanna, Joseph F., "The heuristics of cepstrum analysis of a stationary complex echoed Gaussian signal in stationary Gaussian noise", IEEE Transactions on Information Theory, v.12, issue 3, July 19, 1966, pp. 373 – 380
 * Ossanna, Joseph F.; Kernighan, Brian W., Troff user's manual, UNIX Vol. II, W. B. Saunders Company, March 1990
 * Kernighan, B W; Lesk, M E; Ossanna, J F, Jr., Document preparation, in UNIX:3E system readings and applications. Volume I: UNIX:3E time-sharing system, Prentice-Hall, Inc., December 1986
 * Ossanna, Joseph F., "The current state of minicomputer software", AFIPS '72 (Spring): Proceedings of the May 16–18, 1972, spring joint computer conference, Publisher: ACM, May 1972
 * Ossanna, Joseph F., "Identifying terminals in terminal-oriented systems", Proceedings of the ACM second symposium on Problems in the optimizations of data communications systems, Publisher: ACM, January 1971
 * Ossanna, J. F.; Saltzer, J. H., "Technical and human engineering problems in connecting terminals to a time-sharing system", AFIPS '70 (Fall): Proceedings of the November 17–19, 1970, fall joint computer conference, Publisher: ACM, November 1970
 * Ossanna, J. F.; Mikus, L. E.; Dunten, S. D., "Communications and input/output switching in a multiplex computing system", AFIPS '65 (Fall, part I): Proceedings of the November 30—December 1, 1965, fall joint computer conference, part I, Publisher: ACM, November 1965