Youtube user xlbiofxe4 has taken it upon himself to destroy the magic behind Missingno, the secret Pokemon that dominated all conversation in the schoolyard when I was a young plucky child of 9 or 10. No, it wasn't an act of God, nor was it a sign of an alien invasion – instead it was a mix of the limitation of the system and the lack of foresight on behalf of the developers.
In short (the video will explain it far better than I can), when you talk to the Old Man that teaches you how to catch a Pokemon, your character's name is put into the only place it can go: the part of the memory which chooses which wild Pokemon is going to attack you. Since the fight is scripted to always be against a Weedle, that portion of the memory isn't needed and as soon as you walk into tall grass everything returns to normal.
That is unless you happen to fly away before stepping into tall grass. So when you fly to another city in which you can swim and encounter wild Pokemon, the game isn't equipped to give you an actual Pokemon to fight. Instead, Missingno appears and the legend begun.
It's an interesting glitch and one that I'm sure nobody my age would particularly want to not be there. However, if you're going to put a move into the game that allows you to fly from place to place, it amazes me that this glitch wasn't picked up in testing.