The system is very dependant on the user telling it when two pages are in synch. But humans are fallible, and they may:
- Label pages as being in-synch when in fact they are not.
- Forget to label two pages as being in-synch.
The result of the first event is that a change gets lost in the target language, because once the user has labeled the two pages as being in-synch, no one will get a chance to translate the leftout change.
The second event is less traumatic, but it does mean that pages look they are out of date when they're not. It also puts a bit of an onus on the user to remember to check the "in synch" check box.
I suggest that we should have some sort of automatic sanity check on the alignment of the two pages.
For example, when the user saves a page, there would be some sort of page alignment checking algorithm that would try to guess whether or not the translation is completed.
If the user checked the translation complete box, but the system figures that something is fishy, i.e. the translation does NOT look like it's done, it would display a message saying something like this:
The highlighted text below does not seem to have been translated. Are you sure you want to label this translation task as complete?
Conversely, if the user did not check the box, but the system thinks that the translation is done, then it would display something like this:
It looks like you have completed this translation task. Is that the case? Yes | No
I think it shouldn't be too hard to implement this kind of sanity check on translation completion. In fact there are people in my group who have implemented something like that. And it's something that can lead to a cool paper. I'll investigate.