Growing in the wild is different than growing in a controlled aquarium. The plants grow in the mud because there are more nutrients and it the plants to become rooted very well. Some have to be rooted well to prevent from being uprooted but in a tank with little or no water flow what's the point? As for the nutrients, you could just use fert. Lots of people use sand because it looks better and can help plants root better but just because sand is on the top doesn't mean it's all sand. Many planted tanks will have layers of gravel underneath a top layer (sand) so it will look better. I'm not saying large grain gravel is best, that's too large, but sand is too small. Small grained gravel is the best in my opinion. Using sand for better rooting is good but you have to aerate it to keep from anaerobic bacteria from forming which defeats the purpose. Many people use sand because it LOOKS better.