Version 3.1.3 brings 16 enhancements, but this video focuses on just four most important ones.
Enhancement in the area of alternative translations
Previously, each alternative translation was rigidly attached to a specific file name. OmegaT would only insert alternative translations when the file name in the translation memory matched the actual name of the translated file. If you forgot about this and change the file name, OmegaT would not insert the alternative translation.
Now you can disable this behavior by unchecking Ignore file context when identifying segments with alternative translations under File Filters. OmegaT will save alternative translations without file names and will insert them in any file as long as the context of the segment is the same, of course.
Although this improvement does not sound exciting, everyone who ran into the issue with alternative translations after renaming files will appreciate it.
project_save.tmx created automatically in team projects
In the past, you had to create the project_save.tmx file in a repository for each team project. Otherwise, you would get an error about the project_save.tmx file that did not exist. Now OmegaT is supposed to create this file automatically.
Navigating to selected fuzzy matches
If you want to jump to the segment that displays in the Fuzzy Matches pane, you can do so by right-clicking it and selecting Go To Source Segment. OmegaT now also makes it possible to do the same through the Go To menu. Simply select the fuzzy match and click Source of Selected Match.
File names displaying for search results
OmegaT now conveniently displays file names for each search result. All you need to do is enable the file names checkbox in the Text Search window.
If this blog helped you in some way, please share a link to this post on your site or through social media.
I know this is a review of an old version, but better late than never!
Join me for another video review of OmegaT—this time it is my pleasure to review most of enhancements introduced in version 3.1.2.
Notes from orphan segments and external TMXs display in search.
Previously, OmegaT could find segments with notes from TMXs placed in the tm subfolder of the project, but it did not display the actual text of notes. Now, it displays this text right below the target part, preceded by the equal sign. And it does the same for orphan segments.
Aggregation of search results
Similarly to the Fuzzy Matches pane, the Text Search window now displays several identical results as one and also shows the number of other results that are not displayed. This makes it much easier to use.
Alternative progress bar
You can now click the progress bar in the lower right corner to switch to the alternative one that shows the percentage of translated text and the number of words left for the current file and the entire project.
Sortable errors in QA output
The main QA script now displays the errors sorted by error type by default, making it easier to check errors efficiently.
Spelling errors included in QA output
Instead of running both the QA script and the spellcheck script when you finalize the project, you can now run just the QA script, because it will include spelling errors as well.
Stripping tags only in selection
Kos Ivantsov improved the “Strip tags” script by making it delete tags in the selected text only, provided some target text is selected.
Connector to TaaS
OmegaT now includes the ability to connect to the EU termbase project. You can download the glossaries (collections) for the project’s language combination to the glossary subfolder of the project or access the termbase in real-time. While public collections are freely available, access to private ones requires an API key that you can get on the API key page.
In addition to inserting suggestions by hitting Enter, you can do the same by double-clicking.
OmegaT detects the type of repository automatically in team projects.
No need to select between Git or SVN anymore.
Two labels in the Text Search window renamed for clarity
Number of matching segments and Display all matching segments instead of Number of results and Display all results, respectively.
Word bug fix
In the past, OmegaT failed to include the text placed before leading tags in target files. This bug is fixed in the latest version, allowing you to rearrange the text with regard to leading tags as necessary.
If this article and video were of value to you, please support this blog by posting a link to it on your site or social media (the sharing buttons are below this post).
A reader, Alena, offered an interesting perspective on marketing translation services when you already have enough work. In our post, we suggested that it was strange for translators with big-name clients to look intensively for more. Alena replied that it was not a matter of having enough clients, but of ensuring that you have a constant stream of work in the future. I think that perspective may represent an ethical issue, which I consider in this new post.
A common-sense recommendation
Marketing your services even when you are already busy is a common recommendation from freelance translation gurus. It makes a lot of sense, because it helps you flatten out your work curve by eliminating periods of little or no work. Put simply, you prepare for winter during summer. Unless you market your services, a day will come when your existing clients go elsewhere or even out of business, leaving you with no work whatsoever.
The other side of the coin
What some people seem to forget is that there is always someone on the receiving end who might not be happy about your policy. Imagine that you have found new clients, but now they come to your door, and you do not have the capacity to service them, because you are too busy. This is the ethical dilemma I am talking about: on the one hand, you want to protect yourself from downtime by finding new clients, but on the other hand, you disappoint your new clients who have come to rely on you. You are extending an offer that you have limited capacity to fulfill. Look at this from clients’ standpoint. After receiving your offer, clients invest time and energy into evaluating you, and then contacting you with work and waiting for your reply. However, what they hear back from you is a refusal to work. No wonder they feel you let them down, especially because you made the offer yourself.
We have run into this situation many times. A freelance translator contacts us with their services, but when it comes down to first projects, she is constantly busy with other work. This looks completely illogical from a client’s standpoint. Moreover, the process may halt even at the evaluation stage, with the candidate not having enough time to provide samples or complete a questionnaire.
I would try to strike a balance between marketing your services and your translation capacity. Too little marketing is obviously bad for your business. However, too much means misrepresenting your capacity to clients in an unethical way.
Remember that the worst thing you can do is to refuse the evaluation stage and the first project. This strikes clients as illogical and unethical. It is more or less okay to turn down second and future projects, but make sure you take the first project, because otherwise, the marketing effort just does not make sense.
It is a good idea to market yourself in an ethical manner, offering your translation services only when you have capacity to provide them. Otherwise, your prospective clients waste time on someone who does not have the ability to service them in the first place.
No one likes to correct the same mistake twice, because it usually means wasted time and may also cause embarrassment. Translators and translation buyers are no exception. The good news is that they do not have to rely exclusively on their memory to remember the corrections, since they have a translation memory—a database that stores all previous translations. Keeping this TM current ensures that mistakes will not repeat. This post explains when and how to do it.
Once corrected in the past, mistakes can reoccur when translators use outdated translation memories. A TM becomes outdated when someone makes changes to the translation directly, bypassing the TM. Usually, this is either the translator or the client revising the translated files. Let’s look at these two scenarios in detail.
Changes made by clients
Clients typically revise translated files in their final form, i.e., without any TM running in the background, and send the changes for the translator to approve. Now, whether they ask the translator to reproduce the changes in the TM as well or not, it is the translator’s responsibility to do so. The translator should review the changes and implement them in the TM. Not only will he keep the TM updated for future projects, but he will also learn from the corrections.
Changes made by translators
Just because translators work with a TM does not mean they will not make changes to translated files directly. A translator may find it easier to proofread translated files in their final format and make adjustments there. There can also be technical reasons to bypass the TM. However, regardless of why translators choose to bypass the TM, they must make it a habit to mirror each change in the TM as well. Having the discipline to do so will make things easier in future work for the same client.
A useful perspective to approach the process of making such changes is putting the TM first; that is, translators force themselves to make all changes to the TM and then re-create translated files from the TM instead of tampering with translated files. Doing otherwise means lower productivity. Firstly, you spend time unproductively mirroring the changes in the TM. Secondly, by “decoupling” your translated files from the TM, you lose all the benefits that CAT (computer-aided translation) tools provide. For example, if you need to make global changes later, you need to struggle with doing this directly in the translated files, which is suboptimal compared to making changes globally in a CAT tool.
You can take this even further by committing yourself to make no corrections in translated files at all, meaning, for example, that if you encounter formatting problems in the translated files, you will try to prevent them by modifying the source files and then re-creating the translated files.
What happens if you do not keep your TM current
The worst thing that can happen is a client telling you that you made the same mistakes they had corrected in your previous translation. Not only is a mistake bad in itself, but a repeated mistake sends a clear message to the client that you did not listen to their feedback and do not take quality seriously.
Another consequence is time wasted on both ends. Your clients will feel you do not respect their time, because you force them to make the same corrections again—sometimes caused by your errors in the first place! You spend time unproductively, too, mainly because you have to rely on your memory to recall which changes were made last time.
Failure to update the TM with the client’s changes also means that you are not learning from your mistakes as much as you should, missing the opportunity to serve your client better next time.
I cannot think of any good reason for translators not to commit to keeping their TMs updated with the latest translations, whether those come from themselves or their clients. Not only does it help avoid clients’ complaints because of repetitive errors, but it also makes translators’ work more efficient. Read more about why people fail to use TM properly.
There are three categories of translation requests, in relation to when a translator can start working on them. Firstly, there are projects that can begin right away; this is the most common. Secondly, there are requests to confirm availability for a potential project, asking a translator to state how much time will be needed to complete the project. And then there are requests to reserve capacity, telling a translator to wait for a project on a specific date and complete it within an agreed time frame. It is this third type that I want to discuss in this article, because such requests may end up being harmful.
Suppose on Friday, a client tells a translator that a translation project will be sent to her on Monday and will be due next Friday. The translator confirms availability and waits patiently. However, the project does not arrive either on Monday or Tuesday. In the meantime, the translator has to reject work from other clients for the same time period, because of the prior commitment. Wednesday and Thursday are also spent in fruitless waiting. Finally, on Friday, the client lets her know that they are experiencing delays and expect the project to be sent only the next week. The translator lost five business days waiting for the project that never came. Those five days generally represent one fourth of her monthly income—quite a hefty sum. The question is, who takes responsibility for this lost profit? The common-sense answer is the one who created the problem, but this is not how things are in the real world of the translation industry, not at all.
One major reason is that many people have a hard time meeting deadlines, in particular today, when almost everyone is under stress from having too many things to do and not enough time. Delays on the client’s end result in wasted time for translators. Unless translators don’t mind this, they must exercise caution with this type of requests.
It is okay to forgive once.
When such a request comes from a particular client for the first time, the best strategy is to trust the client. Doing otherwise, e.g., asking for a retainer fee, can be viewed as too unfriendly—not a good result, unless you are prepared to lose this client. If everything works out fine, you can continue trusting this client unless the client proves unworthy of that trust.
After the client lets you down once …
After the client makes it clear that respecting your time is not their priority, even if this is the first time, there is no reason to trust them any longer. Next time they have a similar request, ask for a non-refundable retainer fee. If the project does not arrive on time, you keep the fee. It it does, you deduct it from the invoice. Make sure to explain that the reason you are asking for a fee is the history of failed reservations. The added benefit of doing so is that your client will likely respect you more and get more disciplined.
Dealing with inherent risk
Obviously, there is a risk of losing the client. But look at the other side of the coin: if the project does not arrive, the client “walks away,” and you are the one absorbing the entire loss. If you do not protect yourself the next time, the client will think that is fine with you. Letting clients stomp all over you by accepting initially win-lose conditions is the wrong way to run a business to begin with.
A note about agencies
Agencies tend to exacerbate this problem in two ways. Firstly, even more projects become “potential,” because some agencies send the same request to several translators at once. However, only one translator gets selected. Secondly, by virtue of being a middleman, the agency can create additional delays. Of course, there are good translation agencies, but there will be less of them, since agencies are increasingly under pressure to provide more value while cutting costs. This a global trend that drives middlemen out of most industries. The first reaction for some agencies is not to optimize its processes, but to pay less to freelance linguists and start treating them like toilet paper. This means that you should be particularly aggressive with retainer fee with agencies—more than with direct clients.
Agencies: To build healthy relationships with your translators, it is important to respect their time. Thinking “Oh, well, there is nothing wrong in keeping Joe waiting another day, this is a good project for him anyway,” is not acceptable. Translators: Just as it does not make sense to work with agencies that treat you like a commodity, it is also unwise to reserve capacity without some kind of a warranty from a client that has a history of broken promises. Unless you take steps to protect yourself from lost profits, you will continue to be walked over.
In my latest webinar, I looked at three important scripts that you can use in OmegaT. Watch this video to learn how to use them.
Written by Piotr Kulik and called spellcheck.groovy, this script makes it possible to check spelling in the entire project, thus complementing spell checking that happens on-the-fly in the Editor pane. After you run the script, you get a list of potential errors that you can ignore (write to the project’s ignored_words.txt file) or learn (write to the project’s learned_words.txt file). Normally, you want to “learn,” i.e., add to your custom dictionary, those words that are actually correct. By reusing this custom dictionary across projects (large learned_words.txt file), those words will no longer come up as errors in future projects. And you want to “ignore” those errors that are no good for your dictionary, because in a different context, they might be errors. For example, an English abbreviation such as “ISE” in an English to Russian translation is fine as long as it is untranslated as an abbreviation. However, when this is a part of the English word “RISE” that the translator forgot to delete, the spell checker should detect it. But if you add “ISE” to the dictionary, the spell checker will ignore it whether it is correct or not.
To make running spell checking more intuitive, you can configure the shortcut Ctrl+Shift+F7 for this script.
OmegaT provides two scripts for checking the translation for untranslated segments. You need to run these scripts one after another.
Finding genuinely untranslated segments
First, you need to run the script called show_untranslated.groovy written by Kos Ivantsov. This will open a window with all untranslated segments. Browse this window to make sure nothing was erroneously left untranslated.
Finding segments with identical source and target
If you enabled the Allow translation to be equal to source option under Options => Editing Behavior, the above script will not show you those potentially erroneous segments that are formally translated, but have the same text in both the source and target part. To find them, you need to run another script called show_same_segments.groovy, also written by Kos. This will open a window with all segments where the translation equals the original.
Running these two scripts before finishing each project is a very good practice, because it may alert you to segments where you removed the translation by accident. It would be a good idea to combine these two scripts into one for greater convenience or, better yet, combine all OmegaT’s quality assurance scripts into one in the future.
Open current file
This indispensable script contributed by Yu Tang opens the file currently active in the Editor pane in its native application instantaneously. For example, if you are translating a DOCX file, by running the script, this file will open in Microsoft Word. This script makes opening the file for reference or making changes very easy.
Sending a translation job all at once and sending the same job in batches over a period of time are two very different scenarios. This article lists some of the advantages and drawbacks of the batch approach.
Pros of splitting a translation project into batches
Ensuring timely delivery. The single most important advantage is having an interim delivery schedule that dramatically reduces the risk of late delivery, compared to receiving the entire translation on the last day. By breaking a project into batches with interim deliveries, you help your vendor overcome Parkinson’s Law more easily; that is, you combat the natural tendency to procrastinate. Batches also allow you to monitor progress more closely and intervene early if you encounter problems, such as the vendor’s not following your instructions.
Lower cost. If you calculate, or ask your vendor to calculate, translation memory match statistics for each batch using the TM from the previous batches, you are likely to benefit from the so-called internal fuzzy matches, i.e., pieces of text that are very similar to other text in this project. When you analyze the entire project against a TM initially, they appear as new words, because there are no matches yet. But as translations are added to the TM with each new batch, more matches appear and those matches become eligible for hefty discounts.
Shorter deadline. Internal fuzzy matches can also shorten project turnaround. A project that originally looked like 100,000 new words may eventually turn into a project with just 50,000 new words and many internal fuzzy matches, making a shorter deadline possible.
Cons of breaking a translation job into pieces
Lower quality. Unless you have a technology or a process that allows your vendor to make changes to the already delivered batches, quality takes a hit. With each new batch, the translation team understands the project better and almost invariably realizes that some translations in the previous batches need revision. If you do not make it possible for them to make revisions, errors in the already delivered files will remain.
Making the project more challenging for the vendor. Although an interim delivery schedule is good for you and lessens the risk of procrastination, your vendor may not see it as positively as you do, because interim deliveries can be a challenge. One example could be a project with closely related files that are split into different batches, making it more difficult to translate the related files coherently.
Delays. If you are going to send each new batch after the vendor delivers the previous one, you will likely create delays between batches, causing inconvenience for your vendor. No one is happy waiting for another part of the project that is delayed.
Lower profit for the vendor. Every dollar you save thanks to internal fuzzy matches is a dollar saved at the cost of your vendor’s profit. Personally, I believe that it is fair to let the vendor benefit fully from internal fuzzy matches. However, analyzing each new batch against the TM from the previous ones so as to cut costs is sometimes unavoidable, such as with projects that contain a very large number of internal fuzzy matches.
Lower vendor availability. When you send the entire project to your vendors, you have them commit to the entire project. However, if you send a project piecemeal over a longer period of time, that commitment will not necessarily be possible. Your vendor will likely ask for longer deadlines than you expected or may be unavailable. It is unreasonable to expect from vendors the same level of commitment in this case as they would have with a large project sent all at once.
Breaking a translation job into batches is a very practical approach as long as you think it through and mitigate the drawbacks. Your main goal is not to make partial deliveries too problematic for your vendor. Your reward will be timely delivery of the project or even lower costs.
This video about a minor release of the translation memory tool OmegaT focuses on just three changes.
Ignore type and ctype attributes when building tag shortcuts
Available under Project => Properties => File Filters => XLIFF => Options, this new option makes it possible to ignore the two attributes, for example when you want ph tags to be equivalent to the tags in the TMX file. Whenever you have different ph tags (represented by x in OmegaT) and in TMX, you can try to enable this option. This new option is an alternative to adjusting tags in TMX files.
Chinese segmentation rules
The default segmentation rules now include a Chinese set with three basic rules.
Improvements in the Text Search window
The Translated item now has the Alt-T shortcut assigned to it, and the Files item has the Alt+L shortcut.
For other videos about OmegaT, check out our YouTube Channel.
Do you want to charge higher rates and provide your clients with translations that will bring them the results they want? Then read this article, which lists five of the most important things you can do as a translator to make the shift from good to great.
Stop translating literally
This is a must unless you limit yourself to technical texts where literal translation is more or less okay. But if you aspire to go above this basic level, since you crave the higher rates paid for texts that call for a more creative approach, then you need to start thinking and writing differently. An important reason to do so is machine translation, which is getting better by the day. If you translate literally and so does the machine translator, not everyone will be happy to part with their money for your service.
You often come across something in the original that you do not understand. This is the moment of truth for you as a translator. If you try to guess the meaning, you might be right, even more often than not. But if you are wrong translation, you will make the worst possible error. Unwillingness to research phrases that are new to you is an obstacle to your growth as a translation professional. Not only do you miss the opportunities to develop your knowledge of the source language, but you also turn away clients, as no one wants to pay for work with critical errors. Further reading: “How to Increase Your Rates as a Freelance Translator.”
Perform QA on every project
Make it a habit to run automated quality assurance for common error types on every translation. It does not matter which tools you choose to do it with; it is the consistency in doing it that matters. Although QA may be tedious, your clients will appreciate it, because it makes a measurable difference. Your translations will look more professional, and you will be sending a clear message to your clients that you take translation seriously.
Maintain project-specific and general glossaries
Keeping glossaries has several advantages. It makes you more disciplined and organized. Glossaries increase the consistency of your translations and help reduce omissions, especially if you use a QA tool to check translations against glossaries. You can also reuse glossaries in other projects in the future, so that you do not have to research terms again.
Maintain a list of problem words. Check each project against it.
Make it a habit to keep a list of words associated with a higher risk of error, such as mistranslation or omission. For example, if you notice that you tend to translate “form” as “from,” add the former to this list. Whenever you make a mistranslation or omission, add the word or phrase to your list. Use your automated quality assurance tool to check against this list after each translation. By doing this consistently, you will significantly reduce the amount of errors that you make.
Since most of the recommendations in this article are difficult or downright boring, you will need perseverance to follow them at first. But as you keep on doing so with your teeth clenched, they will gradually become habits.
Version 3.0.8_3 is another minor release of the free translation software OmegaT. It brings several improvements, and in this video I review two of them.
Insert Next Missing Tag Pair
Available in the Missing Tags view of the Auto-completer, this function makes it possible to insert a pair of tags at once instead of one by one. After insertion, the cursor is placed between the tags, allowing you to type the translation. If you use the Auto-completer to insert tags, this might be a valuable addition. Those who use the Insert Next Missing Tag command (Ctrl+T) will likely continue using this function, even with tag pairs.
New project shortcut
OmegaT now provides the Ctrl+Shift+N shortcut to create a new project. Unless you create projects using templates, this shortcut will save you some time.