Achievements are both a de-evolution and evolution for games.
Somewhere along the way, devs forgot people like scores. Achievements are the only way to keep any semblance of a score in most games. Heck, Halo 3 has the option to keep score, and they call that a metagame instead of just "keeping score".
Achievements are an evolution of scoring because it categorizes what you've done instead of just giving you 1 number. "Got 1st place in a race with a 10 second lead" Achievement is different than just getting 1st place. However, they're also a de-evolution because once you get that, there's absolutely no reward for playing more & getting 1st place with a 30 second lead. The score only goes so high, and it doesn't matter how good you are, your score can never get any better. Friendly competition is stifled. (Sure, there's online play, but you can't play with all your friends every time you play.)
-------------------------------------
What I think makes more sense is a full collection of stats. Achievements could still be present, but the stats would keep detailed records. If you & your friend both get an Achievement for a stunt jump of 100 feet, how do you know who's better? You don't. If you have a stats sheet, it can tell you who jumped 105 feet, and who jumped 120 feet. You and your friends could compete much more with detailed stats. You would know who finished that race in 4min, 25seconds, and who finished it in 4min, 10seconds.
Also, I think stats, (especially racing games that track your best times,) should not only tell you when you beat your best time/distance/etc, but tell you by how much. Personally, I find that irritating to know I improved, but have no idea by how much. I've also played a few games less because I had no way of knowing if I did any better than my personal best.