- Ph.D., Computer and Information Science, The Ohio State University, 1995
- M.S., Computer and Information Science, The Ohio State University, 1989
- M.S., Operations Research, Cornell University, 1980
- B.Phil., Interdisciplinary Studies (Mathematics Concentration), Miami University, 1978
- Senior Lecturer, Computer Science and Engineering, The Ohio State University, 1999-present
- Assistant Professor, Computer Science, Otterbein College (now University), 1994-1999
- Graduate Teaching and Research Associate, Computer and Information Science, The Ohio State University, 1988-1995
- Research Support Specialist, Dept. of Vegetable Crops (now Dept. of Fruit and Vegetable Science), New York State College of Agriculture and Life Sciences, Cornell University, 1984-1988
- Software Developer, Symbol Sound, Ithaca, NY, 1983-1984
- Programmer/Analyst I, Eastman Kodak Company, Administrative Services Division, serving the Distribution Division, 1980-1983
Software Engineering (SE) is the sub-field of computer science that attracts most of my attention. In SE, we seek to invent and evaluate methods for producing quality software in less time at lower costs. My Ph.D. dissertation, Computer Program Verification: Improvements for Human Reasoning (1995) (available in its original form as a [PDF: 1.28 Mb] file or as a two-sided, single-spaced technical report in [PDF Directory - 7 files]), established a new way of proving the correctness of programs with respect to their specifications. This new way is pedagogically better than previous methods. I continue to collaborate with the Reusable Software Research Group (RSRG) of the Computer Science and Engineering Department of The Ohio State University. I maintain a strong interest in RSRG's development discipline and language, called RESOLVE, REusable SOftware Language with Verifiability and Efficiency.
I enjoy introducing beginning programmers to the wonders in the art and science of computer programming. I also like leading programmers into the rich and satisfying realm of the theoretical foundations of computer science.