A Pokemon's ability to be Shiny - which is a rare, alternately-colored form of the Pokemon, like the Gyarados at the Lake of Rage - is determined on a Pokemon's DVs. These conditions must be met which normally at a 1 in 8,192 chance at random:
In generation 1, Gyarados learns Mimic through TM. If you transfer your Shiny Gyarados to a Generation 1 game and teach it Mimic, you can essentially get free Shiny Dittos. But the setup is key to this strategy. Your Gyarados should know Mimic and all other moves should have 0 PP remaining. Go to where Ditto can be found, and start the battle. Immediately use Mimic to copy Ditto’s Transform. Ditto will now transform into Gyarados. Wait another turn and let Ditto use transform a second time. Once it has transformed twice, it is now effectively a Shiny! Transfer it to your generation two game and awe at the glistening blue Ditto. You now have a parent that can get you any Shiny that you want (minus the obvious non-breedables such as Lugia and Mewtwo.) Since the Ditto is owned by a different trainer, Eggs will hatch faster as well! Once you transfer your Gyarados back, it will retain its Shiny majesty as well.