Welcome to LinuxMedNews
 up a level
 post article

  VistA and MUMPS: Big, Ugly and Proud
VistA Posted by Ignacio Valdes, MD, MS on Thursday October 27, 2005 @ 01:40 PM
from the VistA dept.
The Veterans Affairs (VA) VistA Electronic Medical Record is based on MUMPS, a programming language designed specifically for healthcare in the 1960's. People and organizations are rarely neutral on both public domain VistA-the-software, and MUMPS the language. VistA the software is almost universally liked by the doctors and nurses of the VA doing clinical work. VistA and MUMPS is also loathed by programmers, competitors and outsiders to the VA. VistA is big, the language it is written in is ugly, they say. Yet there is a jarring contradiction. By most accounts and measures the software, works and works well. The MUMPS language also seems to work for private sector EMR companies such as Epic. In a field that is littered with the corpses of companies that have tried and failed to create useful, commercially viable EMR software, this success counts for a lot. Why is it so successful?

WorldVistA president Rick Marshall attributes its success to its iconoclastic nature: 'Everything that has been emphasized in University teaching about modern computer programming languages (such as strong typing, early bindings and declarations) on purpose it does not do. It violates their theories because it works in the real world, and they say it shouldn't. It emphasizes backward compatibility and portability, which is great because it does not force you to re-write code every few years like most programmers do. Programs like VistA are simply too big to be re-written all at once and we are not compelled to do so. There is a whole industry built around re-writing old code instead of adding new features. What would you rather do?'

Marshall believes that this and the MUMPS language's relative isolation has been the reason for its success in healthcare: 'We do not want average programmers in this space, they are frequently arrogant. Programming in healthcare requires intimate knowledge with both programming and medicine...It is easier to teach a medical professional how to program than to teach a programmer about medicine. It is not a hard language to learn, but it is impossible to master.' says Marshall.

Another major criticism of VistA is that it is large and un-wieldy with over 9,500 items in its Option file and a large number of packages. However, a counter argument is that this is un-avoidable in a system that brings meaningful function and completeness to healthcare. A text-based, rather than a Graphic User Interface (GUI) for many administrative tasks is another difficulty. However, clinicians have a comprehensive, modern, GUI that is near-universally liked.

A look at the book 'M Programming A Comprehensive Guide' by Richard Walters, reveals what feels like a not difficult, and perhaps dated syntax. But then sparse arrays and advanced programming features are revealed in the book. The power and appropriateness of the language to easily handle medical data is suddenly apparent. The language, along with the breadth and depth of VistA applications available, may be reasons for its success.

<  |  >


  Related Links
  • Articles on VistA
  • Also by Ignacio Valdes, MD, MS
  • Contact author
  • The Fine Print: The following comments are owned by whoever posted them.
    ( Reply )

    Over 10 comments listed. Printing out index only.
    Re: VistA and MUMPS: Big, Ugly and Proud
    by Ethan Waldo on Thursday October 27, 2005 @ 08:42 PM
    I've talked recently with an executive account manager from a large HIS vendor who decades ago had hired MUMPS developers. His main compliment was that it is a text-based database so it automatically sorts everything alphabetically. Of course this led in to some original headaches when using MUMPS for word processing in early HIS systems since in order to get to the next line you would have to arrow over up to 40 times (columns) to get to the next line. Eventually his programmer added some code in to make it go to the next line automatically which to the people at the time was mana from heaven. His main criticism was that because it was a text-based database that any number-crunching algorithms became very inefficient (i.e. financials or processing lab results). I've been eager to enter in to the world of VistA and MUMPS and look forward to getting my hands on this book.
    [ Reply to this ]
    Re: VistA and MUMPS: Big, Ugly and Proud
    by Peter Charbonnier on Tuesday November 01, 2005 @ 08:25 PM
    I think that the main thing that turns people off from developing in M, specifically in healthcare, which is a production environment, is its nuts and bolts nature. The long text strings, integrated DB, odd syntax...all this combines to give M a workman like feel. Programmers with freshly minted CS degrees think of themselves as architects building a dream home while M programmers are carpenters building a log cabin. A log cabin that is air tight, in a beautiful spot with classic character.
    [ Reply to this ]
    Where is it going on? Galapagos?
    by skoba on Wednesday November 02, 2005 @ 01:15 PM
    Galapagos islands are the paradice for the animals living in there, same as MUMPS in healthcare.
    But the animals cannot survive outside of Galapagos in compensation for their evolution. In Japan, MUMPS is recognised well in healthcare informatics, many people and organizations have adopted it, but it caused oligopoly, regrettably.
    Although VistA and MUMPS are the great intellectual product in healthcare, who will maintain that? What is the merit as open source software.
    Bazaar model, various people simultaneously issue various code, has great power to drive OSS project, but few programmer gathers in Galapagos.

    In addition, I cannot excuse my ugly and big code in any way, because I cannot explain how it works properly. :-)

    KOBAYASHI, Shinji MD,PhD
    [ Reply to this ]
    Re: VistA and MUMPS: Big, Ugly and Proud
    by Richard Steven Hack on Wednesday November 02, 2005 @ 06:22 PM
    Sorry, the notion that Mumps is somehow superior because "CS graduates" don't like it is itself elitist and incorrect.

    I read about Mumps many years ago. I also read about the Forth language - anoth oddball language. One consultant was using Forth to create his own "custom operating systems" for his clients.

    And when he drops dead, who supports that crap?

    The article admits that nobody can maintain a system built in Mumps because it's "too big to rewrite all at once". This is the same excuse used by large corporations for continuing to develop in an obsolete language like COBOL.

    Some years back one of the major insurance companies wanted to sue the COBOL Standards Committee for introducing a new standard for COBOL because they'd just spent ten years upgrading millions of lines of COBOL code to the last new standard and couldn't afford to do it again. This insurance company has a 250-man Computer Science department WITHIN their IT department.

    I said if they can't convert their old COBOL code in less than ten years with a 250-man CS department PLUS hundreds of regular IT programmers, they need to go out of business.

    Sorry, it won't wash. You either bite the bullet now and rewrite in a more modern language, or you TAKE the bullet later when you HAVE to.

    I don't care what Mumps is capable of - if it was a barn-burner, more people would be using it instead of C, C++, Java, etc. Nobody can tell me that any given computer language is somehow better suited for medical apps than the languages in current use everywhere else in every other domain of enterprise.

    I'm not saying Mumps may not have features that could be profitably installed in more modern languages. But to suggest that Mumps, designed back in the 1960's when NOBODY had a clue how to design computer languages - and there ARE principles for that endeavor, folks - and ignored by virtually everybody in the industry since, is somehow superior for medical apps...no chance.

    [ Reply to this ]
    Don't isolate Vista from software community
    by Alfred Smith on Wednesday November 02, 2005 @ 10:16 PM

    I have spoken with many doctors who love Vista and there is no doubt that it is the most comprehensive medical EMR out there. But there is a tragic downside to Vista and that's MUMPS. Any product that is worth using has to be maintained by a pool of developers that have skills for it.

    My main criticism is that this language isolates Vista from the rest of the IT community and that will prevent it from benefitting from strides being made in interoperatability. These strides depend on open source and open standards.

    The medical industry won't harness the power of modern rapid code development and/or build on the work of other software tools/libraries because this language has very little support from the mainstream IT community.

    Let me remind everyone that the reason for healthcare's interoperatability problems came from its embrace of exotic and sensational software platforms that deviated from the mainstream isolating it from a vast pool of man power and programming tools.

    Vista's longevity depends on being easy to understand and update. Vista must first be ported to something that the rest of the software community can enhance and build upon. It should not be built on tools that isolate it from all of the many resources that are available to aid its development.

    Most programmers and vendors will be unwilling to support or revive this language and I think that WorldVista and the VA is trying to force people to go backwards instead of bringing Vista forward.

    Healthcare is like any other business and has all of the same needs of any other business. If the medical industry does not stop perpetuating the belief that medicine is a special case and start treating it like a business, then it will continue to move in the opposite and wrong direction from the rest of the world.

    Proof of what I just said is http://www.emrupdate.com/forum/topic.asp?TOPIC_ID=1842 .

    One more thing, there must be mutual respect between professionals in the medical and software industries in order to tackle the issues facing an outdated healthcare system in modern times.

    [ Reply to this ]
    are programming languages important?
    by Malcolm on Wednesday November 02, 2005 @ 11:08 PM
    I'd argue that the choice of programming language is not really an issue of itself. Any programmer worth her salt can pick up a new language, given a few weeks. Limitations of the language and the programming environment may lead to frustration and some degree of inefficiency, but the impact is minimal.

    Language choice seems to have more to do with the epiphenomena of programming: IT fashion (scarily important in both the commercial and free software worlds) and quality of vendor support. Of course, these can easily be the life or death of a project.

    [ Reply to this ]
    Re: VistA and MUMPS: Big, Ugly and Proud
    by Jason Murdoch on Wednesday November 09, 2005 @ 01:53 AM
    >>>""In a field that is littered with the corpses of companies that have tried and failed to create useful, commercially viable EMR software, this success counts for a lot. Q:Why is it so successful?""" >>>""In a field that is littered with the corpses of companies that have tried and failed to create useful, commercially viable EMR software, this success counts for a lot. Q:Why is it so successful?"""
    [ Reply to this ]

    The Fine Print: The following comments are owned by whoever posted them.
    ( Reply )

    www.linuxmednews.com Web
    Advertisement: CCHIT certified EMR and Medical Practice Management Software from Medical Software Associates makes patient management easy. Free practice management and medical billing software demo available.
    All trademarks and copyrights on this page are owned by their respective companies. Comments are owned by the Poster. The Rest ©2000-2006 Ignacio Valdes, MD, MS.