It's a hassle. Every string displayed in your site (aside from the user created stuff) now becomes a bundle of strings, one for each language. Also, how are you going to organize the different versions of your site? Will you just use the same URL for each page and just have some global user language preference that makes each page render accordingly? Now the smallest change in the text of your site will now require consulting with your translators, which in practice means that you no longer do small changes. You accumulate lots of changes and send them off to your translators in one chunk, then update them when all the translations get back to you. Slowing down the iteration cycle can be fatal to a startup.
To avoid this, you can instead maintain a different site for each language and bring your non-English (well, non-whatever you're comfortable with) sites up to date with the English as you do translations. Now you have forked your code.
URLs aren't a big deal. Most people bookmark anyway, they don't type them in. I mean are we going to complain about the character set for domain names next?
I surf sites that are natively in other languages and seeing words in URLs that aren't in English doesn't bother me. It reminds me the world is a big place :)
> Every string displayed in your site (aside from the user created stuff) now becomes a bundle of strings, one for each language.
That's good practice anyway, from the standpoint of being able to make changes without touching the code.
> Hassle.
Web development is a hassle in the first place. But being able to handle other languages isn't any more complex than separating presentation from code.
I'm not sure what you're talking about with URLs. I was talking about the implications of implementing this in different ways and saying that there's no easy way.
It's not the unicode. That's easy. It's "how are you going to separate the English, French, Hindi, etc. versions, from each other?" Will you have different URLs or the same URLs with a global preference, or something else?
A good system would be automated though -- making adding the Russian language equivalent site at startup.ru scalable in software.