by Ira J. Kalet, Ph.D.
Department of Radiation Oncology and Department of Biomedical Informatics and Medical Education
is a monograph/textbook that presents the technical ideas of biomedical informatics, with examples in actual code. The first edition was published in October 2008. The second edition was published in October 2013.
One of the great challenges of biomedical informatics is to discover and/or invent ways to express biomedical data and knowledge in computable form, and to thus be able to automate the analysis and interpretation of a wide range of biomedical data, as well as facilitate access to biomedical data and knowledge...A recurring theme in discussions with biologists, medical researchers, health care providers, and computer scientists is the question, "What is biomedical informatics?" The practical answer, that we are going to provide the software tools to meet biomedical research and clinical practice computing needs, addresses a real need, but seems inadequate to define the intellectual content of the field of biomedical informatics. Thus, the main goal of this book is to provide an exposition of important fundamental ideas and methods in biomedical informatics, using actual working code that can be read and understood. The object of the code is not only to provide software tools, but for the code to play the same formal role that equations and formulas play in theoretical physics. That is, the programs precisely embody biological, medical or public health ideas and theories. The application of these programs to specific problem instances and data is analogous to the solution of the equations of physics for specific practical problems, e.g., the design of airplane wings.
A goal of this book is to refocus thinking about biomedical informatics programming, not as a technical skill for manipulating bits and bytes, but as a natural, logical, and accessible language for expressing biomedical knowledge, much as mathematics is used as the universal language for expressing knowledge in the physical sciences.
Early in our new millennium, despite great advances in health care and the research that supports it, we are surprised by the slow development of methods that improve actual clinical practice, we are frustrated by pathologies in the way health care is delivered and paid for, and we are both daunted and challenged by the vast opportunities that are being opened by new biological insights, improved measurement methods, and our greatly enhanced abilities to collect and analyze vast amounts of empirical data on everything from how molecules interact within a cell to how medical services interact in a population. We are, indeed, in a time of ferment, excitement and challenge for biomedical informatics.
As Alan Perlis said, "I think that it's extraordinarily important that we in computer science keep fun in computing." (Alan J. Perlis. The Keynote Address. In "Perspectives in Computer Science", Anita K. Jones, ed. Academic Press, 1977.)
The same is surely true of BMI. This book will contribute to that fun.
Published by Academic Press, a divison of Elsevier
Publication date: October 2008, just in time to celebrate the 50th Anniversary of Lisp at OOPSLA 2008 (see the Announcement at the Franz, Inc. web site for more details on the celebration).
Funding for the First Edition of this ``Scholarly Works'' project was made possible by grant 1 G13 LM008788 from the National Library of Medicine, NIH, DHHS. The views expressed in this and any related written publication, or other media, do not necessarily reflect the official policies of the Department of Health and Human Services; nor does mention of trade names, commercial practices, or organizations imply endorsement by the U.S. Government.
Published by Academic Press, a divison of Elsevier
Publication date: October 2013
I've created an endowed fund at the University of Washington, the Ira and Terry Kalet Fund for Biomedical Informatics Trainees, with the initial author royalties, and intend to contribute future royalties to this fund as well.
The main programming language that is used in this book is Common Lisp. Previous exposure to Lisp is not assumed. To help the reader who may be unfamiliar with Lisp, Chapter 1 provides an introduction to the essential ideas, along with discussion of biomedical data and their representation.
All the code from the Second Edition of the book is provided here in the text file pbi-2e-code.cl in order of appearance by chapter. In most cases I include only defining forms, not examples of expressions typed in the read-eval-print loop. A few functions are multiply defined, since there are several progressive versions, so this may trigger warnings from the load function. In a few cases I have renamed them so this won't happen. In a few cases, there are typos in the book and there are too many or too few right parentheses. I believe I have fixed these in the code file.
In addition to places where there are multiple definitions of functions, there are a few places where the same name is used in slightly different contexts, as described in the text. In order to make the file load without errors, I have changed a few names. You will want to consider whether to change them back. Sometimes that is necessary in order to make the renamed functions or class definitions work with the other functions.
The following files are plain text (ASCII encoding) and are referenced in some exercises in the Second Edition:
Please send me a note if you experience any problems.