Swedish is amazing! Norwegian and Danish too, by the way.

A while ago, I wrote in Swedish about an interesting localizability bug I saw while working on Windows XP. The gist of it is that in Home Edition, there's a user account called "Owner". There's also a group called "Owners". These correspond to "Administrator" and "Administrators" on other flavours of Windows. During setup, the group is created, then the user account is created, and finally the user is added to the group. All is peachy. But not in Swedish.

The word "Owner" happens to be one of those nouns that have a null-plural in Swedish. That is, "owner" is translated as "ägare" and "owners" is also "ägare". In the first Swedish build of XP, the group "Ägare" was created correctly, but the user "Ägare" could not be created since there was already a principal with the same name. The end result was that after setup, there was only one user account on the machine - Guest. Not very useful. My fix? I changed the translations of "Owner" to include the definite article - "Ägaren".

Now that I have the solution at hand, it's all pretty obvious. Seems to me that this was a bug I should have been able to avoid. Seems to me that one should never ever have to see bugs with this cause again. And I never did.

Until last week.

An absolutely unrelated product had the same kind of bug. In it, the word "form" had been correctly translated as "formulär". The word "forms" had also been correctly translated as "formulär". The software got confused.

I guess it's just a question of time until I see the same bug again. It's really unavoidable - there are plenty of nouns in the Scandinavian languages that have null-plural: egg, office, room, table*, index, loudspeaker, teacher, painter, murderer to name but a few. On top of this, there are other English words that are absolutely unrelated but that happen to get the same translation. I guess that all I can do as a localizer is try my best to understand how each resource I localize will be used at runtime. I'm really back to square one again - like so many localization bugs before, this is all about context.

There are of course plenty of examples of the opposite of this bug, where one single English word may need more than one translation depending on context. Here's one of my pet peeves, taken straight out of Service Pack 2:

The problem I have here is that the English words "enabled" and "disabled" can take different translations depending on what is enabled or disabled. In the header used to group entries, it should be "Aktiverade" (plural). In the status column, the text should be either "Aktiverat" (singular, neuter) or "Aktiverad" (singular, non-neuter) depending on what is enabled. But naturally, there's only one resource - any translation I pick will be wrong sometimes.

When it comes to this, I don't have any great advice to developers except for to not to make assumptions based on your own language. All languages are different; they all have their own quirks. Not very helpful advice, I know, but there's no way to summarize all differences between all languages in a useful way. What we can do however is to remember that there will be freak bugs like these and therefore make sure not to skimp out on testing your localized software.

*as in Ikea, not as in Access


This posting is provided "AS IS" with no warranties, and confers no rights