sudo localize & make me-a-sandwich [Free PseudoLocalizer class makes it easy for anyone to identify potential localization issues in .NET applications]

This blog has moved to a new location and comments have been disabled.

All old posts, new posts, and comments can be found on The blog of

See you there!

Comments (8)
  1. Tom says:

    This is a great idea.  I'd seen examples of Microsoft's pseudo-localization before (Device Manager anyone? :)) but hadn't thought about integrating it into my WPF app.  I already use a RESX approach with a custom ResourceManager that can read and write .resx files at runtime for in-app localization (editing strings in the app), override resources, and on the fly language switching.  I also created a LocalizedViewModel base class with an indexer that returns localized strings for the most concise code and XAML, for example {Binding [btnEditLanguage]}.

    Anyway, it seems like it should be easy to add pseudo-localization to my system… I'll definitely give this a shot when I get back to localization (someday).  Thanks for the tip!

  2. David Anson says:


    Cool – sounds pretty advanced! Thanks for sharing. 🙂

  3. Tim says:

    Pseudo Localization is definitely a great helper during localization and i highly recommend it for any localization project.

    We are doing a huge Silverlight game project since 2 years (over 1000 XAML Files) and we did the localization during the final development process, for that we have developed an ASP.NET application which reads XAML files and shows you all text components (like Textblocks, Content of Buttons, etc. ) which weren't extracted. Then it creates for every string a new record in an database of our translation system and saves back in the XAML the correct binding, which is web based because we need to translate it in many languages which is done by many people. This system helped us to reduce the localization process to 5% of the planned time, so i highly recommend it to everyone to invest time in some tools for your workflow if you are doing a big project which needs localization. I will pick up some of your reflection ideas to extend our translation system, so thanks for the article.

    But my initial point for writing this comment , is that our system also creates all resource files for all languages automatically and we have one language, which is our pseudo-localized language, there we create resources not with random values but instead with the resource key. So if one of our translator doesn't know which resource string is used on a particular screen , he simply starts the game with the pseudo language and sees which resource string is used where. This is a very valuable help if you have more then 5000 strings, and you can see at the same time which wasn't localized but also which string goes where. Perhaps that would be a great addition to have the possibility to add such a mode in your pseudo localizer.

    Thanks, for the article,


  4. David Anson says:


    That's really interesting! I'm going to think about something like that for a future update. 🙂


  5. Do you know if it's possible to use AppResources for translating an app to a a language different of Spanish, Italian, German, english and french?

    I would like to have my application in "ca-ES"

  6. David Anson says:

    Roger VaDeJocs,

    That should work fine. 🙂 I think the following two MSDN pages may be helpful here:…/s9ckwb4b.aspx…/sb6a8618.aspx

    Hope this helps!

  7. slyi says:

    BTW: There is a basic pseudiser sample on…/cc163991.aspx and custom ploc culture on…/647915.aspx

  8. David Anson says:


    Thanks for the references!

Comments are closed.