Since this question pops up after pretty much every announcement and/or bug-fix release, I’ll try and answer it a bit more in-depth here and now. We… oh, the question first, of course:

When will you add localization, and why haven’t you already?

The first batch of localization is slated for the first big update: Ulysses III 1.1, due this summer. It will most likely cover German, Spanish and French along some additional languages that have not yet been decided.

As for why we didn’t ship localized — it’s fairly easy: Localization takes time, and it needs to be done on a finished product. Else it takes even more time. There’s no sense in localizing an app that’s 90% done, since the missing 10% may very well require 50% of all in-app text to be modified.

While we tried to keep the UI as minimal as possible, there are still lots and lots of strings to translate. Dialogs, of course, menus, but just look at the introduction. Look at the info text for each markup definition. Look at the default titles in the sidebars and all that stuff. And once you’ve got localizations in place, you can no longer design freely (aka for a single language), but need to take into account longer strings or different spacing. Which, I’m repeating myself, takes more time.

Localization also adds another layer of complexity, which means a new layer of stuff that can break. E.g., if something went wrong when injecting the localized strings into, say, French, the app may no longer launch on French systems. Or, let’s say some string was translated wrongly. Suddenly, a certain feature may not make any sense in the localized version. Since we are only fluent in German and English, we can’t guarantee the quality of most localizations ourselves, which takes me to…

Localization costs money. We want great quality (and you want that, too), so we hire professional localizers. In our case, we’re estimating a month’s worth of Ulysses’ sales to go into the localization process upfront. From a purely economical standpoint, that’s risky business, since there’s no guarantee that this investment will ever return a positive. Especially given that once a certain localization is out, it needs to be updated with every subsequent app release, which again means time, which again means money, which again… you get it.

And time we didn’t have. And money we didn’t have. Not much at least. And so 1.0 released English-only, and it will stay like that until 1.1 comes along.

Good? :)