You Either Think Graphically or You Don't
rcozens at pon.net
Mon Nov 21 13:28:12 CST 2005
I found your questions and the previous responses quite
thoughtful. Rather than give you brief answers to all questions, I
would like to focus on just one: why does it take so long to bring a
software project from concept to completion?
Development of software that interacts with, or presents information
to, human users is both a creative process and a series of logic
puzzles. One begins with a goal or concept and materializes same in
the medium with which one works -- in this case computer input and
But software development is different from creative activities such
as painting or composing music because:
(A) Virtually all software creations require some physical user
interaction beyond simply passively experiencing them, and
(B) Most software creations have one or more utilitarian goals; so
they can be fairly judged "correct" or "incorrect" by others that the
Implications of this are:
* The creator must guide the experiencer through the experience
* The creator must take into account that the experiencer's
participation may not be voluntary (eg: business software)
* The creative process does not end when the experience achieves the
creator's goals: the creator must anticipate how a user may diminish
the experience (eg: by hitting a wrong key or entering nonsensical
responses) and include within the creation mechanisms to prevent such
situations or guide the experience gracefully back to the intended state.
* The creator must compensate for the fact that different computer
hardware configurations tend to present the experience differently.
* A software work in progress often presents little in the way of
physical manifestation as to how it's coming together until late in
the creative process. One can see paint filling canvas and hear the
progress of a musical composition; but it's often well into the last
stages of pre-alpha testing before one has a sense of the potential
quality of the experience.
A corallary of this is that better or enhanced mechanisms for
improving the experience, achieving the original goals, and/or adding
additional functionality are routinely not discovered until late in
the development process.
* A software creation is often not static, but is modified over time;
so the creative process must include instructions for others or notes
to the creator to facilitate future changes.
* The software creative process also requires preparation of written
instructions to people you will never meet telling them how to experience it.
Rob Cozens CCW
Serendipity Software Company
"And I, which was two fooles, do so grow three;
Who are a little wise, the best fooles bee."
from "The Triple Foole" by John Donne (1572-1631)
More information about the use-livecode