
Frequently asked questions
The subject of Computer Evolution is misunderstood by many people, and
there are a number of common errors that arise. These questions and
answers should clear up any confusion.
Q: Surely computer programs must have been designed by
programmer?
A: Although computer programs appear to have an element of design, this is
entirely illusory, and is brought about by the process of natural selection,
where computer programs which don't conform to the environment's design
criteria are rejected.
The existence of bugs in computer programs is conclusive proof that these
programs have not been designed by a programmer. A programmer would not
have left bugs in his code, but rather features.
Some philosophers of computer evolution even go so far as to say that the
programmer is dead (see question below).
Persons who use this argument are often ignorant of the content of actual
computer programs. Actual computer programs contain large amounts of unused
space such as stack space and debugging symol information. They also contain a
great deal of ``junk code'', ie code that has no useful function.
A common example of junk code is programs linked against the C library, which
contain a copy of the code for the strcpy function, even though
that function is not used anywhere in the program. This is clearly an example
of an evolutionary change. A progammer would have removed the function if it
was not used, which is evidence that a programmer was not involved.
A variation of this argument argues that higher level programming languages
and their compilers are not suitable for computer evolution. However, the
exact opposite is true - a small change in the source code for a program can
cause large changes in the binary that is produced. This supports computer
evolution, without implying the need for a programmer.
Q: Explain science and religion in the context of computer evolution
A: A common objection to the theory of computer evolution is that there must
have been a designer or a programmer behind the origin of computers. The
proponents of this archaic idea argue that computers are too complex to have
originated by chance, and are similar in structure to other objects designed by
man.
This is clearly a religious objection, since the person has never seen the
designer of a computer, and is therefore accepting his or her existence by
faith. It is also religious because such a designer or programmer would be a
superhuman being or organisation and worthy of worship.
When dealing with this objection, you should be careful to point out its
religious nature. True science does not have space for unscientific concepts
such as a designer and programmer - especially if the designer and programmer
have not been seen. A person who insists that this is philosophically
necessary has also left the realm of science and entered the realm of
philosophy and metaphysics.
This being said, there is no essential conflict between the religious viewpoint
and the scientific viewpoint. The person should be free to contend that a
programmmer and designer exist. This is their own personal religious
conviction, and they are entitled to it. They should, however, be careful not
to mix religion and science.
Q: Which came first - the hardware or the software?
A: Computer hardware preceeded computer software. The earliest computers
we know of had no software, and were composed entirely of hard parts, although
it is possible that the soft parts decayed during fossilisation. Software
could not have evolved first, since it requires hardware.
Q: What is the exact process by which one design gives rise to another?
A: Strictly is is incorrect to talk of a design when referring to
computer hardware and software, since there is no designer involved. Computer
software and hardware undergo spontaneous changes due to mutations (copying
errors) when their code is copied. Mutations which are advantageous will
eventually cause a total change in appearance and behaviour. Or something like
that. It's hard to say exactly, since the process of computer evolution is
very slow and cannot be observed.
Q: Doesn't computer evolution violate the 2nd law of thermodynamics
A: No. Because a computer is connected to a power supply, it is exempt from
the universal laws of thermodynamics, and can freely and creatively conduct the
evolution of its hardware, software and networking capabilities. The continual
supply of energy from the power supply creates and environment conducive to
the creation of information. As computer evolutionists have been known to say,
``Power in, program out''.
Q: Why is there so much variation in computers?
Computers operate orders of magnitude faster than biological processes.
This high metabolic rate causes the evolutionary force to be considerably
accelerated, to the extent that it has given rise to a large number of
inventions in a relatively short period of time.
Q: How do you account for the existence of computer languages?
A: This question can be expanded slightly into the question of the origin
of compilers / interpreters and the origin of the code which these programs
compile or interpret. It is clear that uncompiled code presents no
evolutionary advantage, and that an unused compiler equally presents no
evolutionary advantage. We conclude that the compiler and the language which
those compilers compile evolved together. Because of the existence of computer
languages, source code could evolve, allowing leaps of evolutionary progress.
Q: How do I fix my computer program?
A: In order to fix the bugs in a computer program. you need to accellerate
the evolutionary process. (Please note that calling on a supposed programmer
is an archaic religious habit, that true scientists will avoid). See the
original messages for an example of self-modifying code
which, given enough time, will evolve into anything you need your program to
do.
Q: If the programmer is dead, who will save the queen?
A: If the queen is to be saved, the program will have to evolve this ability of
its own accord. It is worth noting that in all the known chess-playing
programs, not one is known to save the queen in preference to the king.
Q: Aren't you just mocking biological evolution?
A: Biological evolution is a firm scientific fact of nature, that has been
established beyond doubt by repeatable laboratory experiments, and documented
on some of the finest word processing software available. It parallels
Computer Evolution in many ways. While we are not experts on biological
evolution, we hold it in the same high regard as we regard Computer Evolution.
We appreciate feedback of a pro-computer evolutionary nature from our readers.
If you have any ideas, comments, or suggestions for articles please let us
know.