How Debian Packaging practices could apply to VistA maintenance and distribution
This is email is the continuation of a conversationthat started here:
VistA has a large code base (~2.5 million lines of M code,
that are probably equivalent to ~10 MLOC in C language).
This is complemented with a family of applications that
include GUIs and web interfaces among other things.
environment for VistA to thrive on and to be made available to
a larger user base.
VistA is currently composed of 168 Packages:
and it has been compared to a combination of an operating
system with a collection of related applications.
The packages are not completely independent among
them, and therefore require some form of versioning
care when they are patched, updated and distributed.
When we picture the challenge of growing an open source
community that would be able to properly take care of VistA,
we can imagine the scenario where each one of the 168 packages
is guarded (or "sponsored" to use Debian terms) by one or two
developers. (which means that we need between 200 to 350
VistA 'packagers').
Along with the packagers, the actual maintenance and daily care
of the code will require about 10 time more developers. For an
estimated total of about 3,500 developers. For all this to be
effective, these developers should be collaborating closely
with about 7,000 people with clinical background (doctors
nurses, pharmacists...). That close collaboration is one of the
reasons why VistA fit so well in the medical environment.
This estimation of a ~10,000 people strong community would
follow the typical power-log distribution of participation, where
a small group does most of the work.
A large fraction of this community would have to be composed
by the developers, managers and clinical personnel that take care
of these tasks at the VA today. They would be complemented
with members of the larger open source community, and by
a new generation of M developers that we need to start training
and educating today.
Just to clarify, here we are not talking about creating a Debian
package for VistA. Although that is certainly something we
want to do, and that it seems that it will be the next best target
once we have a Debian package for fis-gtm. (we probably
should follow up on this in a separate thread). Instead, of a
VistA Debian package, the conversation here is about:
Could VistA build an open source community
after the model of Debian packaging community ?
It would seem that the human+technology infrastructure,
+ governance, that Debian has established for its own
packaging is the proper level of support and organization
that will be needed to take care of the natural complexity
of VistA. In particular, Debian has found the sweet balance
between agile behavior and formal processes, that make
possible to keep up with the rapid innovation of the upstream
packages, while still maintaining structure and organization.
To answer that question above we would need to get the
combine the expertise of Debian packagers with the
experience of VistA developers and users.
I hope this topic is of interest to this list, and if so,
we probably should make an effort to bring more
VistA developers into this conversation as well.
Luis
Reply to: