Sorting a list of strings in a way that makes sense to a human is a very complex task. It's not just about comparing ASCII values. Usually, the case doesn't matter. You probably want "File 2" to be sorted before "File 11". In German, 'Ä' often comes at the beginning of the alphabet, whereas in Swedish it's towards the end. And what about encoding? The list of pitfalls is long.
So, fellow developer: what do you have to say about string sorting for human consumption? What are good techniques? What should be avoided? What are the correct APIs for your favorite platform?
Post your answers, and make this page the definitive reference about sorting strings for humans.