VISTA Enterprise Network - Successful Implementation, World Class Support

Saturday, June 23, 2012

Classical Definition = Life, or Something Else?

A nudibranch and a sea squirt, both classically alive
More precisely, does the classical definition define all forms of life?

"The unexamined life is not worth living for a human being" (ho de anexetastos bios ou biôtos anthrôpôi — ὁ δὲ ἀνεξέταστος βίος οὐ βιωτὸς ἀνθρώπῳ), said Socrates, according to Plato in The Apology. Among the many reasons to live an examined life is that the greatest revelations usually await us in the things we take for granted, the things we do not examine.

Chief among those overconfident blind spots is our habit of framing the bounds of discussion and then letting that frame go unquestioned. This discussion of whether VISTA is a living system hinges on our definition of life, so let's put the spotlight on that.

Sure, VISTA may not fully fit the classical definition of life, but does that definition actually define life? Most biologists agree it does, more or less, but what does that really mean? It means it defines something they equate with life, but that's not the same as saying it actually defines life.

Could this definition be defining something else, something other than life per se? If so, what is it? What is so close to life that biologists would nearly universally confuse it with life?

The wording of the definition - especially certain clauses - gives it away. What is made of cells, metabolizes food into energy, and reproduces? The definition even answers the question for us by using the answer as a synonym for life: an organism. This definition equates life with an organism. It cannnot conceive of non-organismic life, because it has bundled together multiple characteristics - some of which are different in kind from one another - into a single definition and then made an implicit assertion about the subject of the definition.

This definition has begged the question of what is life by offering a definition that only claims to define life. We can all see it defines an organism, and we assume a priori that an organism is the only form life can take.

Is it?

About the Photo

A nudibranch (Nembrotha lineolata, right) lays eggs in a spiral pattern on a sea squirt (Polycarpa aurata).

Nudibranchs are a kind of sea slug, marine gastropod mollusks in the family Polyceridae and class Gastropoda (which includes sea slugs, slugs, and snails). They are often spectacularly colorful, and their external gills rise from their backs like floral plumes.

Sea squirts are a kind of tunicate, immobile filter-feeding marine animals found in shallow waters throughout the world’s oceans. Tunicates preserve the original form and life-patterns of the earliest chordates; all vertebrates—including Homo sapiens—are descended from creatures much like tunicates. In their larval form, tunicates have a notochord, a stiff, spine-like rod that is the ancient predecessor of the spine. Tunicates lose their notochord by the time they reach adulthood, so we evolved from animals like them via neoteny—the retention of juvenile characteristics into adulthood.

Photo: Nick Hobgood
Source: Wikipedia

Monday, June 18, 2012

VISTA and the Classic Definition of Life

A buff-tailed bumblebee (Bombus terrestris)
[A symbiotic relationship between two living systems, each of which unambiguously satisfies the classic definition of life. Photo credit: Joaquim Alves Gaspar Source: Wikipedia]

Does VISTA satisfy the classic definition of life? Let's answer this point by point.

1. Some VISTA software exhibits homeostasis (Task Manager for example), but a lot of VISTA software does not - or, at least in isolation it does not. Once you add users and programmers into the equation, VISTA's software lifecycle exhibits strong homeostasis; but as plenty of organizations have proved, it is possible to impose alternative software lifecycles on VISTA that destroy this higher-level homeostasis. Also, some systems within VISTA that started out without homeostatic mechanisms had them added later, and many more can still be added. So the answer is yes, some of it does, sometimes, under some conditions, but the answer is also no, not all of it, not even most of it, and not always. Yes and no seem entirely inadequate for this point.

2. Ah, organization! VISTA has lots of it, lots of structure built up from basic units to create many higher layers of order. To those of us who understand VISTA's architecture, its overall organization is elegant and often beautiful (though plenty of it is ugly and in need of refactoring). Unfortunately, the classic definition of life pretty much demands cells as the basic unit, and this is not true of VISTA (metaphorical cells don't count).

3. No, VISTA definitely does not have a metabolism (metaphorical metabolism does not count, either). VISTA is completely dependent on an electrical supply, which is the mechanical equivalent of an animal that is only "alive" as long as it is plugged in - we call that a machine. That's pretty much the opposite of a metabolism, so a big no on this point.

4. Yes, VISTA has growth. Oodles of it. Its data multiplies, its software extensions increase, its routines and globals, its files and options, even its extensible frameworks and documentation grow in number over time. At all its layers it grows. Some of this growth requires interaction with other living things (like people); some happens even when VISTA is left to itself. Controlling VISTA's growth is often the real challenge in managing a VISTA system.

5. In isolation, most of VISTA does not adapt, though some of it does, but with programmers and users involved much of it adapts very well indeed, both in the short term and the long. VISTA's adaptabillity is one of its core strengths. Adding heredity to the question, as this definition does, only muddies the picture. VISTA has nothing really like DNA or heredity, but neither is it limited to mechanical copying for its reproduction, as we'll discuss below. What it has instead makes it in some ways amazingly more adaptable than most biological organisms. As with homeostasis, the answer here is mixed and can improve over time, leaving us with more ambivalence.

6. Yes, VISTA is extremely responsive to stimuli, just not the kinds of stimuli or responses biological organisms are tuned to (not motion, for example). In terms of both quantity and variety of information it responds to, VISTA has all biological organisms beat many, many times over. In terms of survival-positive responses to the kinds of stimuli that might threaten its survival, VISTA flunks out with a big fat zero. It has no survival common sense at all, leaving it utterly dependent on its caretakers for its survival. Of course, it does have a strong symbiotic relationship with biological organisms that leads them to fill in this defect completely; most VISTA systems are better protected than most people.

7. Freud said it's all about the sex, so how fitting that we end with this characteristic. We've put it off long enough. Now it's time to answer the question we've all been waiting for (unless we haven't): does VISTA reproduce? The answer is: not like any biological species does. First, like many overbred domestic species, it cannot reproduce without human help - a lot of help. Second, new VISTA systems are derived from existing ones, yet are not clones; each VISTA system is unique. Third, VISTA systems do develop and adapt mainly by exchanging new features with one another to create new combinations of features; dozens of VISTA systems supply new features to each other and all other VISTA systems. It is as though animals were continuously mutating and then sharing their mutations with all the other animals, advancing their DNA while still alive - and not just a little bit, but dramatically over time. So, VISTA systems are overbred, domestic, polygamous, repeat-offender mutants that reproduce asexually from a single parent organism. VISTA has completely separated the twin goals of reproduction: increase in number of entities and genetic change. In other words, weird reproduction and weird sex, requiring the dedicated help of its biological symbionts.

So, no VISTA cannot be called alive under the classic definition of life. There were too many noes on the list above, and too many yeses are partial.

But that being said, there are also too many yeses to simply dismiss them. VISTA may not be a living organism, but it has more than a few of the characteristics of one.

And more importantly, before resting our case we need to explore these questions: Does something have to satisfy the classic definition of life for it to actually be alive? Is this definition complete? Does it actually define life?

Saturday, June 16, 2012

The Classic Definition of Life

The coconut octopus (Amphioctopus marginatus)
[The coconut octopus (Amphioctopus marginatus) satisfies the classic definition of life. Photo: Nick Hobgood. Source: Wikipedia.]

My friend, student, and coworker David Wicksell has pointed out that in my writing I use terms like "alive" and "living system" without specifying what I mean. Am I using these terms metaphorically, or do I somehow mean that VISTA is actually alive?

He raised this question because in Tuesday's webinar, An Introduction to VISTA Architecture, I said it's not a metaphor, that VISTA's literally alive - but how can that be true? Software is part of a machine, so how can it be alive? I agreed with him that I'm long overdue to spend some time laying out what I mean by these loaded terms.

The problem with calling VISTA alive is that it does not appear to satisfy the classic definition of life. I quote at length here from Wikipedia, whose article Definition of Life contains pretty much the definition I was first exposed to back in high school, and that most biology textbooks use:

Since there is no unequivocal definition of life, the current understanding is descriptive, where life is a characteristic of organisms that exhibit all or most of the following phenomena:

1. Homeostasis: Regulation of the internal environment to maintain a constant state; for example, electrolyte concentration or sweating to reduce temperature.

2. Organization: Being structurally composed of one or more cells, which are the basic units of life.

3. Metabolism: Transformation of energy by converting chemicals and energy into cellular components (anabolism) and decomposing organic matter (catabolism). Living things require energy to maintain internal organization (homeostasis) and to produce the other phenomena associated with life.

4. Growth: Maintenance of a higher rate of anabolism than catabolism. A growing organism increases in size in all of its parts, rather than simply accumulating matter.

5. Adaptation: The ability to change over a period of time in response to the environment. This ability is fundamental to the process of evolution and is determined by the organism's heredity as well as the composition of metabolized substances, and external factors present.

6. Response to stimuli: A response can take many forms, from the contraction of a unicellular organism to external chemicals, to complex reactions involving all the senses of multicellular organisms. A response is often expressed by motion, for example, the leaves of a plant turning toward the sun (phototropism) and by chemotaxis.

7. Reproduction: The ability to produce new individual organisms, either asexually from a single parent organism, or sexually from two parent organisms.

One may quibble about terms or ideas here or there, but overall most biologists would agree that this is the current working definition of a living organism, more or less.

Does VISTA satisfy this definition?

Friday, June 15, 2012

Webinar: An Introduction to VISTA Architecture

(See the version of the diagram at the webinar for a larger image.)
On Tuesday at 1:00 p.m. PDT I gave my first webinar, An Introduction to VISTA Architecture. It was in support of Fabián Lopez's webinar series for his VISTA Extensions Hub website, It's the first in a series of webinars we'll be doing together, most of which will be about VISTA architecture, software lifecycle, and policy and planning.

This first webinar focused on a new diagram depicting the layers of VISTA's architecture. This is a great grand-child of Tom Munnecke and George Timson's original Onion Diagram, which they drew on a napkin back in 1978 when they were first planning VISTA's architecture.

Where later onion diagrams developed by VA have increasingly emphasized VISTA's architecture as being constructed of plug-in packages, Tom and George's original diagram was trying to capture the idea of a health-information space, in which a small set of carefully thought out initial conditions would provide all the organization necessary for large numbers of autonomous developers working on their own could nevertheless create a coherent organic architecture. This is the same model used to build the Internet, and it is just about the opposite of the command-and-control model VA had been using up until then to try to do software development.

As VA later slipped increasingly back into the centralized authority model, then lost sight of the organic-growth model of design and reverted to trying to pre-specify the content of the system. This specification-driven model is what VA has been trying and fail to do for the last fifteen years without notable success, and it's what they're still trying to do in the new round of VISTA replacement projects (which try to part out the development of replacement VISTA packages (for their new iEHR initiative). This model cannot work because it is incapable of organizing such a complex system full of so many unknowns. It's what all this discussion of organic growth on this blog is about, that you cannot constrain reality at these scales without overreaching. Instead, you have to forward-bind your system, to leave room for future innovation and growth that you cannot presently foresee - in fact that most of your future development is going to be things you cannot foresee organized in ways you cannot foresee. Trying to plan all this out at the beginning - when we know as little as possible about how it eventually needs to look for it all to work - is building failure into the process from the outset.

The later generations of the Onion Diagram reflect this misunderstanding of Tom and George's original ideas, paying scant heed if any to the idea of an organically evolving health-information space in favor of a Legos approach to snapping together packages.

This webinar with its new Onion Diagram tries to remedy that situation by at least presenting the alternative viewpoint that the true architecture of VISTA is not package-based, that packages are just an organizational trick we use to divide up the work, that the true architecture of VISTA arises from plug-ins into dozens of extensible frameworks and the engines that run them, all of which is built upon a Von Neumann database-management system that allows the creation of an arbitrarily growing, arbitrarily interconnected network of integrated files and routines, which in turn is built upon a simple portability and integration layer.

I welcome your feedback about this new (or perhaps I should say return to the old) Onion Diagram. I'm hoping that in the comments section below the webinar, we can explore these ideas together.

The webinar is here: