Great article. One thing to bear in mind with translating your apps is that it's a complex field, and you want to do it right the first time around.<p>For an example of possible pain, you can't simply pass a string such as <i>Welcome, Thomas, you have {number_of_messages} messages</i> to your translator and expect all to be OK. I speak a bit of Polish, and in this instance, the word <i>messages</i> will take one of three forms, depending on whether it's 1 message, the number of messages ends in 2, 3 or 4 (but isn't 12, 13 or 14), and another form for everything else.<p>The gettext library is works really well for handling pain points like these, and the "About" section in its manual gives some common examples like the above: <a href="http://www.gnu.org/software/gettext/manual/gettext.html#gettext" rel="nofollow">http://www.gnu.org/software/gettext/manual/gettext.html#gett...</a>
One thing to consider is that the users will expect support in that language as well. This may be much less of an issue for a game or mobile app, but much more for a SaaS offering for example.