Software Development Space and Time
 

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 must 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 over riding use of computers and therefore the limitations of our compilers. Human involvement is required for all other considerations. 

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.