top of page

Programming vs software engineering

​

​

​

Oh yes, that old chestnut! You will probably find the question/thread on every computer programming forum, but it might be useful to explore the question from the perspective of a single part-time "programmer" (typically a clinical scientist / engineer) working in a hospital department trying to improve the clinical service. Possibly by producing a spreadsheet to automate some routine task, or maybe by writing a program in MATLAB or Python to analyse a diagnostic medical image.

​

The beauty of a blog like this is that is allows for a fresh take on subject like this and allows others to comment. Even if there is no consensus, we tend to learn something along the way. If you Google this question you will find many responses along the lines of "software engineers do the design (i.e. the difficult bit) and programmers [just] write the code to implement the specification". In other words, what the programmer does is, well, largely pre-programmed with little scope for innovation. The implication is that the coding part is relatively straightforward - just 'turning the handle' basically, but is it really as simple as that? There are some apparent analogies from the "real world" (architect/builder, doctor/nurse even) but they are a bit too simplistic. Architects never lay bricks or erect roof trusses, and senior doctors try not to involve themselves in the messy end of the patient management business. Junior doctors are another story, of course.

 

But perhaps a better analogy is the chef and the cook. Even in a very large commercial kitchen, the chef will do a fair bit of cooking (or at least supervise) but will rely on the numerous underlings to do the time-consuming food prep and routine cooking. The cooks just follow the recipe, right? Sound familiar? Well, yes, and no. There is certainly a similarity between a pre-prepared ingredient and a software library module, but software development tends to defy close comparison with other manufacturing processes

​

The difference with the software development world is that, in small departments, the programmer and software engineer are often one and the same. How does this work? More to be added..

​

You can't judge a programmer's productivity simply by how many lines of code he/she has written (maybe they are all buggy?), especially in these days of object orientated development (OOD). See cartoon!

 

​

 

​

​

Note. Hospital IT Department staff usually don't do any programming as such, at least nothing that has a medical application. They are usually too busy trying to keep the hospital network going and making sure that ...etc.

​

​

​

​

​

 

This page last updated: 01 November 2018

​

​

 

 

​

​

hackles2.jpg

©2018 by The software medical device. Proudly created with Wix.com

bottom of page