Jan 31, 2014

Re-importing reviewed translations in memoQ server projects.

One of the unexpected benefits of testing the memoQ cloud server is that it gives me a good opportunity to reproduce and test some of the disaster scenarios encountered when working with project managers not fully aware of the implications of their choices when setting up server projects. Many of the problems that come to my attention relate to revision workflows that many experienced translators like to use.

For various reasons, exporting bilingual formats - XLIFF, Wordfast Classic-compatible DOC or RTF tables - is a popular review method. Sometimes these are checked by others who do not use memoQ, sometimes they are convenient for QA with third-party tools or have other perceived advantages. As far as I know, translators can always do bilingual exports from a local installation of memoQ connected to a server project. (I haven't looked for ways to block this, because I find the notion of doing so extremely counterproductive.)

The trouble comes when they want to re-import the corrected and/or commented bilingual file to update the translation. This is possible only by the project manager working in the management window. There's no way for the translator to import a bilingual reviewed document. I asked Kilgray Support about this and was told that this is intentional because of the difficulties which could result in the project. So basically if you edit a bilingual, someone with project manager privileges for that project has to re-import it for you.

Well, not always. Sometimes it works, just a bit differently than one might imagine.


If the project manager sets up the project to use "desktop documents" (as opposed to "server documents"), then it is possible to export bilingual files and re-import them. This cannot be done directly with documents in the Translation list. But it will work with Views of these documents. Or with the full bilingual exports of the documents themselves!


The screenshot above is from a server project with configure for desktop documents. For these two project types (with or without web translation enabled), when working from a memoQ desktop client you are able to import any bilingual to update a translation file from this interface.

But wait, that's not all!

or is it? That command says "Import" and so devious minds might wonder if it is possible to import something other than a bilingual export from one of your translation documents. Indeed, the dialog that appears for file selection tantalizingly offers all supported formats. So I grabbed a DOCX with a financial text and gave it a try:


SWEET SUCCESS! A mere translator, I've cracked the memoQ server and uploaded another document to my project. Visions of Caribbean beach vacations in the warm sun dance through my head as I contemplate all the extra work I can upload to certain client projects and bill because it is, well, right their on that server project they assigned to me.... then I get this message:

General error.
TYPE:
System.NullReferenceException

MESSAGE:
Object reference not set to an instance of an object.

SOURCE:
MemoQ.Project

CALL STACK:
   at MemoQ.Project.ProjectDocument.TranslationDocumentProjectContext.UpdateDocumentDivisionInfos(TranslationDocumentCore doc)
   at MemoQ.Translation.Storage.SqlCeStorageService.SaveDocument(TranslationDocumentCore document, SavePreferences savePref)
   at MemoQ.Translation.Storage.SqlCeStorageService.SaveDocumentAndAllInfos(TranslationDocumentCore document, ICompactSerializable workflowInfo, ICompactSerializable tagDefinitions, ICompactSerializable lqaModel, SavePreferences savePref)
   at MemoQ.Project.TranslationDocImportExport.LocalImportController.doImportOrReimport(ImportTask importTask, String targetLangCode, String docStorageDir, Boolean reimport)
   at MemoQ.Project.TranslationDocImportExport.LocalImportController.DoJob()


That's Geek for "Nice try, buddy... an automated report has just been sent to the NSA and our agents will be at your door shortly." I click again, and that message self-destructs and I am given a second warning:


A knock on the door, then after a stern interview, I sink back into my desk chair and click Continue. Next time I'll stick to importing bilingual exports of documents or views from the project. That works beautifully from the View tab and allows me to work as I prefer, since by now most of my clients with memoQ servers know to use the desktop documents options for my projects. Perhaps in the future, Kilgray's programmers might tighten up the code to trap errors from fools like me who do the unexpected.



But of course, as of memoQ 2013 R2, when translating with the desktop client in server projects, one can usually update a translation with minor edits using the reviewed monolingual target document and the Import reviewed document command in the Translations menu of the project. This won't let you bring in comments, and it does have some (but increasingly fewer) quirks, but in many cases it works quite nicely. A video demonstration of this feature can be seen here.

Jan 29, 2014

Finding resources on Kilgray's Language Terminal

Kilgray’s online platform for translation, Language Terminal at https://www.languageterminal.com/, may be a game-changer in many ways. Not only does it offer affordable, on-demand memoQ translation server capacity for small teams on demand, it provides free InDesign server availability to users of any tool for converting InDesign formats to XLIFF and PDF for translation and review, back-up features fully integrated with recent versions of memoQ, some evolving project management and invoicing tools and a growing library of light resources shared by users. This post discusses how to find and use these resources, which can be useful in all supported versions of memoQ.

Accessing your account
The user menus of Language Terminal can be accessed in two ways: in a web browser from the URL above or from the link on your memoQ Dashboard.


If you are not already a Language Terminal user, a free account can be set up in just a few minutes.

Looking for resources
The current user interface for finding resources on Language Terminal is confusing to some users. The Resource menu link in the orange navigation bar shows a list of resources you have uploaded yourself to Language Terminal. The dropdown list indicated by the arrow filters your own resources. To find resources from other people, click the Advanced Search button.


There is nothing “advanced” about this search. It simply allows you to use four fields to find resources which are publicly available on the site. Be careful of your selection criteria for language as some resources (like auto-translation rules) are not language-specific by definition even if they might have been created for use with a particular language.


The result of the search for English stopword resources to be used in terminology extraction to filter out “noise” words (like prepositions, pronouns, articles and common vocabulary) looked like this at the time I performed the search:


Download the resources you want by clicking on their names in the Resource column. The shared library of filters, QA profiles, auto-translation rules, stopword lists and more on Language Terminal continues to grow. Why not contribute something yourself?

In any case, Language Terminal is a useful place to archive one’s valuable light resources, such as segmentation rules developed over time with great effort, and these are not shared with others unless you specifically release them. Given the occasional unfortunate “disappearances” of light resources known to occur with some memoQ upgrades, this is a very useful backup option to have, and it would be nice if future integration of Language Terminal and memoQ were to facilitate more complete, automated resource backups from desktop systems.

Jan 28, 2014

On a role with memoQ!

This morning I finished off a job I shared with another colleague, sent him the target document and a memoQ MQXLZ file for any edits he might want to make before dumping it in his TM or LiveDocs archive. I went on to other things and didn't see his message until about six hours later. He could not edit my bilingual file! What was wrong?!

I was "on a role" you might say. But not on a roll. Not today. I had not stopped to think that although the method I had used to review my work is popular with some freelance translators using memoQ, most of us do not use roles in our own projects, and few understand what they actually do. But roles can be an effective addition to our workflows and enable us to keep a better overview of a translation's status.


When working in a local memoQ project, you can assume one of three roles at a time: translator, first reviewer or second reviewer. The default role is always "translator".

Each role applies a different status when segments in the translation grid are confirmed:
  • Translator = Confirmed
  • Reviewer 1 = Reviewer 1 confirmed
  • Reviewer 2 = Proofread
The confirmation settings you choose under Project home > Settings determine which of these three roles you work in. You can also set your role in recent versions of memoQ using the dropdown menu in the far right section of the translation window's toolbar. The icon for the dropdown menu reflects your current role:


When segments are confirmed in different roles, the status icon will be different:


The screenshot above shows four segments confirmed with three different roles. Someone in the Translator role or Reviewer 1 role cannot change segments which have been confirmed by someone working in the Reviewer 2 role. These "proofread" segments are protected and can only be modified in the Reviewer 2 role. However, the Translator role can change unwanted edits made in the Reviewer 1 role.

What use is that to a translator working alone? For a long time, my instinct was to say "none at all" and think of this as a feature of interest only to team processes. Too often I'm a team of one these days.

But on a number of jobs lately, I've found myself scribbling Post-It notes about which parts of a long job I had already checked, and it occurred to me that these roles might help. I've also grown fond of the X-Translate feature for new source text versions, where I usually protect content which has been carefully reviewed before if it has not changed. So the idea of doing a "final review" of some sections and protecting them by confirming in the Reviewer 2 role was appealing.

So, like some others, I have begun to switch roles in memoQ when I am carrying out different tasks. And the different confirmation icons - the check, check+ and double-check - give me a simple visual clue as to where I have worked with what purpose.

Another nice feature I use a lot is the Row History in the context menu. It shows me the translation of that segment for each minor version. If I am making a lot of edits and want to remember a particular translation, I use Operations > Create Snapshot... to make a new minor version for later reference. Minor versions are also created automatically with various operations such as target text export and exporting bilinguals. The row history shows all versions of the translation for the current source text (major version):


Text of previous translations can be copied to restore using Ctrl+C. Unfortunately, despite  requests, Kilgray has not yet seen fit to do the obvious and add a button for conveniently inserting other versions of a translation in the row history.

So what about my frustrated colleague who couldn't update the text in my "proofread" bilingual? How can he, a mere Translator, override my work in a superior role? By giving himself a "promotion" and choosing the Reviewer 2 role from the toolbar or his confirmation status in the project settings to Proofread.

For a discussion of how roles can affect what is written to a TM, see this old article on memoQ TM settings. The defaults have now been changed so that roles are no longer automatically stored in the TM, so if you are working with the default TM settings for memoQ 2013 R2 Build 53 or later, you don't have to worry about changing the defaults as I discuss in the old article.