Sorry to say this (and I might get some flak for this) but English is a pretty dumb language. I am no linguist and not even a native English speaker and thus this may be my ignorance speaking. I am happy to learn from you all and change my current opinion on English. I am native Hindi speaker and at no time in Hindi can you have a different pronunciations from how the word is written (cache, knowledge, repertoire...)…
I don't completely understand this. It's not a constructed language; it's a language that evolved and continues to evolve like other natural languages according to pressures exerted by a host of factors, practically none of which are consciously-decided. Exceedingly complex in some ways, vague and ambiguous in others; it's a stretch to classify English as "dumb" For natural languages, the idea of better and worse languages seems like asking whether a maple tree is better than an oak tree. Every natural language has its quirks. For English, pronunciation, as you point out is the most notable. But take Russian: its pronunciation is much more predictable, but the non-native speaker has to contend with declensions, verbal aspect, verbs of motion, etc. Chinese orthography is daunting. Trade offs abound...