What does a good L10n engineer need in their tool kit? The most important tool is a good text editor. There are a lot of good ones out there, including some that are free or shareware. Which editor you get depends a lot on how you use it. Some handle various languages better than others. Make sure your editor supports Unicode (UTF-8). We recommend using one with syntax highlighting. Syntax highlighting renders different things in different colors, so that your text strings are one color, the computer instructions are a different color, and the comments are still another color.
Don’t use an editor that adds the UTF byte-order mark (BOM) or allows you to turn the BOM on and off. The BOM is a supposedly non-printing character that tells the client application which flavor of Unicode that you are using. The problem is that the BOM is only invisible if it is the first character in the file. A lot of the files you will be working on will be merged with other files, either before production, or at run-time. Then you end up with weird characters in your output that are really hard to find and get rid of.
If you’re working with a lot of string translation, a translation memory (TM) can be a time saver. If you already have a favorite CAT tool, this will continue to be useful for you. If shopping for new software, make sure it can handle a variety of file types. It’s important that it can edit XML files. (There are also XML editors out there designed specifically for this purpose.)
If you’re going to be modifying things like dialog boxes, page layout, and menus, you’ll want to use a Software Development Kit (SDK) or a resource editor. (A good SDK includes one or more resource editors.) Most languages have a specific SDK for that language. Microsoft Visual Studio is useful if you’re working with a lot of Windows software. If you are working with a variety of computer languages you might try something like Eclipse that is language-generic but has packages available for working with different languages. If you will be working directly on binary files, you need to use a resource editor or a software localization tool.
Software localization tools are designed to allow you to work directly on software. You can use them to translate strings, but they give you a lot more. A good tool will allow you to resize elements, change fonts and colors, find and fix hotkey conflicts, and more. If you’re working with a lot of binary files this is a critical tool.