I normally always purchase both versions. HeartGold and SoulSilver are no exception, but I have different reasons that just the figurines and collecting. I'm really buying both so I can capture all the Pokémon in the PokéDex, but technically the SoulSilver file will be mines, while the second file is for my sister to take care of.
If you wanted to get a full PokeDex, you can just trade with people. HG/SS don't have that many version exclusives that are hard to get.
Im sorry but this is a really narrow minded point of view. Not everyone has access to trading. I live at college right now so I have ethernet internet and there are no hotspots in the area making GTS trading impossible. Plus 99.9% of college students Ive met are not Pokemon Players and the ones who are have less pokemon than me or the same version. Trading with people is a great option IF you have it availible to you.