This Slate article explains how names become popular:
"Once a name catches on among high-income, highly educated parents, it starts working its way down the socioeconomic ladder. Amber, Heather, and Stephanie started out as high-end names. For every high-end baby given those names, however, another five lower-income girls received those names within 10 years."