One of the ideas behind Esperanto was supposed to be the abandonment of irregularities, especially the duality between sounds and glyphs. Esperanto was supposed to be a perfectly phonetic language.
As it turns out, no language can stay perfectly phonetic and in popular use at the same time. This is because as the language is used, we tend to optimize it, and the optimizations are not based on structure, because that's not how our brains work. Think about the optimizations as a kind of cache – caches are not structured, they are simply a way to throw some hardware into a problem.
Which leads to an important question. Can mankind use a single language? Not the way English is used now – English is more of a code than a language – a default option that many people agree on, due to its prevalence in the world (for both historical and cultural reasons).
I think there is something about language and distance -- just like you can only naturally interact with about one hundred and fifty people, you can only share culture with people closest to you. Despite globalization, the French have been, are, and will always be very different than the Chinese. Language will reflect that culture (why? Does it have to do with differing natural circumstances in the early history of the nations?) and so it will diverge if the cultures are divergent. It's clear even on a smaller scale, with various dialects being distinctly different, not just in sounds, but often in syntax and semantics.