Creeper vs. reaper

The first computer programme to replicate itself over the proto-Internet was made in 1971. And the second one was made to destroy it.

Retro-Computing Society of Rhode Island [CC BY-SA 3.0], via Wikimedia Commons
 Today’s story begins back in 1949. The Hungarian polymath John von Neumann wrote about the idea of self-replicating automata – essentially, something that can create a perfect duplicate of itself. Life can be classified as a self-replicating automaton, because (for example) cells can divide and thus replicate themselves. Making something from scratch that can duplicate itself – artificial self-replication – is an interesting challenge.

Fast forward 22 years. Inspired by Von Neumann’s work, a computer programmer named Bob Thomas wrote a programme that could move between different computers. Given that this is 1971, the computers were huge mainframes and the pathway between them was ARPANET. ARPANET, by the way, was the precursor to the modern Internet and was designed by the United States Department of Defense. The Creeper programme did no harm – it just printed one message:

I’m the creeper: catch me if you can.

At first, this programme only moved from one computer to another; it didn’t duplicate itself. Another programmer, Ray Tomlinson, apparently modified it so that it created a copy rather than just moving on. In doing so, he unleashed the first computer worm: a self-replicating programme that could travel.

Now Ray Tomlinson was a good guy (he is said to have invented e-mail, which is still popular in some circles). I wonder if he felt a bit guilty about unleashing this spreading, expanding programme into the wild? In any case, he created a new programme called Reaper. Its function was to move between computers, duplicate itself, and destroy the Creeper. It did. Reaper is both the second computer worm in history and the first piece of anti-virus software in history.

4 Replies to “Creeper vs. reaper”

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s