[Edu-sig] Programming for non-programmer IT professionals (in healthcare)

Jim Harrison jhrsn@pitt.edu
Wed, 15 Nov 2000 17:37:38 -0500


I've been lurking on this list for some time and I appreciate the
interesting discussions that have occurred over the past months. Much of
this discussion has focused on the application of Python to teaching
programming at the primary and second school levels, with a bit of
introductory programming at the college level thrown in. This is near and
dear to my heart--and I'm cheering you on--because I currently have an 8th
grader with an interest in programming and I would love to see Python take
hold in the schools.

There is another application for Python in education that I believe also
holds a lot of promise. Currently, a number of graduate programs across the
country train individuals for careers in information technology which are
not primarily oriented to programming. For example, we have a training
program in medical informatics at the University of Pittsburgh School of
Medicine. Within this program, we offer MS degrees (2 years), PhD degrees (4
years+) and postdoctoral fellowships (1 or 2 years after an MD or PhD). Some
of our students are computer-science-trained, but many are physicians or
other healthcare workers who have a stong interest in computing and varied
computing backgrounds. Some of them go into research and development in
which programming plays a central role, but many others enter IT
administration and other areas such as standardized vocabulary development
or information resource management where they do not themselves carry out
code development. For these latter individuals, it is important that they
understand certain concepts related to coding such as control flow, the
general meaning of object-oriented and modular design, issues related to
data parsing, expression of data and program structure with UML,
communication between systems, programming for application servers, etc.
They also need to be able to discuss program design issues intelligently
with programmers. They do not, however, need to program in medium-to-low
level languages.

There is a programming requirement in the curriculum, which is typically
satisfied by taking one semester of introductory C in the computer science
curriculum (I think this approach is common in similar settings across the
country). I believe this is a disservice to some of these students, firstly
because it convinces them that they don't want to program, secondly because
few of the higher level topics I mentioned above are addressed at that level
of C training, and thirdly because this brief exposure to C does not leave
them with useful tools for their personal work. In response to this, I'm
beginning to develop a programming course for medical informatics based on
Python which will be offered to appropriate students in our program
beginning in the fall of 2001. As I conceive it now, it will consist of
about a month of getting up to speed in the basics of the language, followed
by a series of problems in medical information processing that extend the
understanding of Python and also allow us to explore important high-level
issues. I'll carry out most of the curriculum development this winter and it
should be pretty well set by spring.

I think the use of Python in this way would also be an advantage in similar
educational settings outside of medical informatics. The initial month of
the course I plan should be fairly generic and might be useful to others (or
others might inform me of useful approaches--I plan on looking at Jeff
Elkner's Python version of "How to think..." in some detail). If any list
members are interested in this type of teaching, or in the application of
Python in medical settings, I'd be happy to correspond with them and perhaps
share resources. 

Jim Harrison
James H. Harrison, Jr., MD, PhD
Associate Director of Pathology Informatics, Department of Pathology
Faculty Member in Residence, Center for Biomedical Informatics
University of Pittsburgh
Suite 8084 Forbes Tower
Pittsburgh, PA 15213-2582

jhrsn@pitt.edu | voice: 412-647-7113 | fax: 412-647-7190

"If you want sense, you'll have to make it yourself!!"-Norton Juster