The development of software of space and time is a compound not a mixture of elements.
A good understanding of space cannot be fully understood by ignoring time and
visa versa. Space is the size of information and its processes. It is the
storage transport and execution space needed to convey information to and from
the user. Time is the amount of time required to store, transport, and process
information. There is no fixed correlation that can be applied to the
space time compound. Each compound is unique and requires constant improvements
to provide an ever increasing efficiency in each.
The other use of time is the relationship between human and computer time. A
factor that has not been addressed in software development. One that I will
address in this paper. The biggest issue is wasted human time due to fragmented
technologies, the first, is the programming language. The world of programming
is so broken in unfinished, fragmented technologies that a single statement can
require four programming languages and twelve libraries to implement. I found
seven hundred and ten compilers. This does not include scripts, assemblers, and
all of the macro, template and domain specific languages that account for
millions of fragmented technologies. Then to complicate this even more, the
different vendors make yearly version changes that make it impossible to
realistically maintain any kind of stable development system. The thing that is
really frustrating is that, all of them do the same identical job; add,
subtract, multiply, divide, compare, and jump. I would laugh if it were not so
sad. Time here is just wasted.
Time in processing is a poor science at best, to be almost non-existent.
The concept of variants and strings as being immutable, the first huge obvious
lack of science, supported only for ease of compiler development. I use
this as an example of a lack of good programming at the cost of compiler
development. These compiler limitations simply waste time for no reason.
Time in compiler development versus human programming time is due to the lack of
talent and the personal preferences on the part of the compiler writer. A large
part of this is the preconceived notions on what a compiler is. The time wasted
in programming is directly proportional to capabilities found in the compiler.
The capabilities of all compilers remain much the same as the 1958 FORTRAN II
compiler or the 1843 version of Ada Lovelace's manual efforts of compiler
writing. Our current compiler design is based on multiplication of a fixed
number of digits (even this is done poorly), which has been the overriding use
of computers and therefore the limitations of our compilers. Human involvement
is required for all other programming tasks.
The science of speed should not be limited to the speed of number crunching,
it should be extended to all aspects of program development. Human time is
indirectly propositional to computer time by way of the effort needed to
implement program efficiency.