Creation of Variants
The author of the original virus or worm may make changes to their original creation. Often, a self-spreading program will contain bugs that inhibit its spreading or destruction ability. Even if the coder is ethical and only sends their code to antivirus vendors, they will want to fix the code. Sometimes a coder creates a virus or worm deliberately with a bug that prevents it from being destructive or spreading, but as a second thought creates a bug-free version. An example is the message on the Mars Land version of Span-ska, where the message was glitched beforehand.
Many first-time virus/worm coders will either disassemble a spreading program or find its source code in some other way in order to get an idea of the kind of coding necessary to create their own self-spreading program at a later date. They may reassemble or compile the source code. Even if no changes were consciously made to the code, the original code may be altered slightly during disassembly, assembly or compilation, producing a mostly similar program to the original, but with a few features that make it distinct from the original. However, "script kiddies" are known to (and may get their name from) take someone else's code, make a few small changes to it and call it their own, giving rise to many variants. They are also known for calling themselves "Hackers", although they have no experience about it. An example is Blank font, where both of its variants are completely unchanged.
It has been suggested that a virus or worm could change more or less naturally. Possible ways they could change would likely be a slight surge or drop in power affecting a computer while the virus or worm is in memory, or slightly damaged disks, producing altered but still functioning viruses and worms. A number of virus/worm coders have experimented with mutation engines, that give their code the ability to change themselves with each generation. More often than not though, a variant is consciously created by a human creator.