While I didn't agree with everything he said, I think everyone will find this talk by Kirk Durston fascinating. The one thing that I don't think he properly took into account was that the "fitness function" on computers is necessarily finite, while the "fitness function" in real life does not necessarily have to be either specified nor finite.
Kirk paints the problem as having a smart enough fitness function - therefore Darwinism is only plausible if the fitness function of life has sufficient information to form life as we know it. However, I think the key he misses is that natural selection is not a fitness function in the same veing as a genetic algorithm fitness function. Natural selection requires that something be usable now, while an appropriate fitness function could select for future optimality (Dawkin's WEASEL is an excellent example, but there are also much more subtle ways of doing this). While Durston makes some great points, the problem, as I see it, will always be the generation of diversity, not its selection.