Why is VistA good? the VistA open source development model

Recently, VA VistA has been getting a tremendous amount of attention. Lets take a look at the recent events that highlight what VistA is and why it is important.

The question I would like to ask is “how did this happen?”. Lets get the story straight. Federal employees developed what appears to be the EHR at the backbone of the highest quality medical system in the United States. That makes no sense.

I defy my readers to give me legitimate examples of something that any government creates, programs, or manufactures internally that is provably superior than commercial alternatives. The only thing I have thought of is money. Various governments might be considered experts at manufacturing currency.

Despite the inability of governments to “make” for themselves the US government seems to have some cool stuff. Air craft carriers? corporation-built. Jet plane? corporation-built. Bridges? corporation-built. Now for the madness: World class Electronic Health Record (EHR)? government-built.

As the Federal Government considers how to further improve VistA it makes terrible decisions because it does not actually understand why VistA is good in the first place. At the heart of this problem is the fact that some of these Federal administrators are no longer in awe of the “miracle of VistA”.

The “miracle of VistA” is that a branch of the US Government, which has no primary expertise in software development, was able to create one of the most highly regarded electronic health records in the world.

VistA is good because it, like typical open source projects, evolved. In fact, the evolution of VistA is an alternative open source development model that is comparable in scope and significance to those found in the most popular open source projects. The best run FOSS projects evolve, but in slightly different fashions. The Linux kernel is famous for the “benevolent dictator” model now enabled by git. The Apache project has succeeded with the “wise council” model, that has in turn been successfully applied to other projects besides the core web server. Like Linux, the Apache project has developed tools specifically designed to enable the model that they use. You can easily find studies about what makes the development of Apache and Linux tick. Here is a short description of the elements of VistA development that made it successful.

VA VistA is developed in a pair programming paradigm, not two coders working side by side, but one coder and one clinician. Each VA hospital was free to develop software that meet local needs. Local hospital administrators paired one clinician, intimately familiar with a given clinical need, and one advanced MUMPS programmer, who together encoded clinical knowledge into VistA. Each local VistA programmer answered to the needs of the local hospital administration. This helped to ensure that the hospitals needs were never overlooked by a “centralized” software architect. The best software, after initial development and testing at one hospital, was quickly distributed throughout the system for hospitals hungry for similar functionality. The methods for sharing software between hospitals has become more and more formalized, and like Apache and Linux programmers, VistA programmers developed collaboration tools designed specifically to meet the needs of this distributed development environment. The hospital from which a feature originated became the de facto program manager for that feature, coordinating future improvements. Poor code was criticized and systematically abandoned in favor of good code. VistA is not actually one program, rather it is hundreds of small programs, each of which evolved and improved separately and together. No one person can “understand” what VistA is, instead VistA experts usually are familiar with a few of the VistA programs, and know which other VistA experts are familiar with the other programs. VistA is one of the oldest software projects to rely on a distributed, collaborative development model, from its inception.

Obviously, the process is more complex than can be described in a simple blog post. There is enough here to demonstrate several important points.

  • VistA was not “designed” by anyone, it evolved in a collaborative fashion similar to modern open source products
  • Because the “clinical pair programming” has been happening for more than twenty years, VistA encodes a tremendous amount of clinical expertise that is impossible to “recode” via a traditional design process.
  • VistA was made in a fashion that makes it more like an organism and less like a house or a car.
  • Replacing portions of VistA with proprietary systems is similar to, and works as well as, amputating human limbs and replacing them with prosthetics.
  • Centralizing VistA development is foolish and will never improve the EHR software. The right way to improve VistA is to encourage the evolution of the software in a process similar to the way that one would breed animals.
  • The current VA reorganization, which has local VistA programmers reporting to and paid by a centralized office in Washington, has destroyed the control and influence of local VA hospital administrators over the direction of VistA
  • Frustrated VistA progammer’s are flocking to private corporations like Medsphere or to non-profit organizations like WorldVistA in order to ensure that VistA continues to thrive. This brain-drain will ultimately damage the VA’s ability to improve VistA.
  • Something needs to be done to ensure that VistA continues to evolve.

Decisions like the recent one use Cerner’s lab system in the VA are made by administrators who do not understand what VistA is. I hope that this article will help you to understand why those familiar with VistA and Open Source software (like WordVistA’s Joseph Dal Molin and Doctors Steve Shreeve and Ignacio Valdes) are so put off by the Cerner announcement. Further this is why the typically technical HardHat’s mailing list is boiling with posts which expose the problems within the current VA thinking far more exactly that I have done here.

Now if I could just convince my congressman.


6 thoughts on “Why is VistA good? the VistA open source development model

  1. “I defy my readers to give me legitimate examples of something that any government creates, programs, or manufactures internally that is provably superior than commercial alternatives.”
    Fred, you need to tone down your rhetoric here. There is a legitimate place for commerce but you must realize that the first priority of business is to make money. When it comes to health, public safety, or public service, commercial models fail.
    The best example is the US health care system which is driven by profit for insurance companies, doctors, hospitals, pharma, etc. The result is that the US spends at least twice what other developed countries spend and has significantly poorer health outcomes as well as leaving many without any health care.
    The government run health systems of most other developed countries produce better health at less cost than our US ‘free enterprise’ system. Even many developing countries have put together better government run health care systems than the US. Cuba is a good example right on our doorstep. They have better health indicators than the US in most areas and they do it on a shoestring budget.

  2. Mark,
    I agree, there are definitely places where various governments provide excellent “services”. Governments all over the world provide excellent transportation services, like trains systems and highway systems. But they do not make “trains” or “highways” themselves. Instead they team with industry to make the products. I want to focus specifically on “making things” rather than what services should or should not be provided by governments.
    This lets me duck the debate about socialized medicine/commercialized medicine (which is good since no one cares what I have to say on the subject), except to say that my comments should not be interpreted to support either one.

  3. I would disagree. I believe the opposite is true. High health care costs are due directly to government. If they didn’t muddle everything up with regulations like the ones that make anyone wanting to buy health insurance only be able to purchase it within their own state, insurance would become much more competitive. If you take out the motive of profit and growth, you’ll get doctors that are there only to put their time in and get the dictated salary.
    Who in the government is going to be the “all knowing” one that determines how much a product or service is worth? Think anyone would try to bribe that person ? Let market forces back in there and keep government out as much as possible and I think you’ll see the cost level out. (Can’t go down too much, although it can go down, because insurance pays too much and when the consumer doesn’t pay for it, they don’t care what it costs). A healthy combination of folks paying for their own basic services such as appointments, would go a long way to lowering costs when they begin to search for better prices. Health savings accounts would be great. Singapore has a pretty decent system using that method.

Comments are closed.