Trying to settle a debate with a client. I didnt localize the strings and images in the application and it didnt come up during the 3 week define and discover. They seem to think its a basic best practice and that it should have been done by default. I disagree, especially if there are no planned languages otw.
Seems like you would leave this for demand by users
So, Id like to ask the community to chime in on this and tell me if you by default have localized your iphone app or not?
I ask this to not only help me understand where I might have missed something but also to help others in the future as to what is considered “default” and “best practice”
This question is going to spark a lot of opinion. Because Apple makes it ridiculously easy on iOS to localize strings, I personally feel you should set all apps up for localization by default. Anywhere you find yourself defining a literal string, substitute it with
NSLocalizedString(), until it becomes second nature. Then, if you decide you want to localize later, you don’t have to hunt and peck all over the place. If you never localize, you lose nothing except a few keystrokes.A true localization will probably have localized NIBs to (may have different sized buttons for different languages, for instance). Still, if you assign all strings that will appear in the NIB in code with
NSLocalizedString(), rather than in Interface Builder, you’ll likely save time in the long run.The fact that the AppStore makes your app visible in so many countries greatly increases the demand to localize. Read this post by Wil Shipley about the money you could be making by reaching many markets.