Saturday, October 22, 2011

How Google Translate works

Using software originally developed in the 1980s by researchers at IBM, Google has created an automatic translation tool that is unlike all others. It is not based on the intellectual presuppositions of early machine translation efforts – it isn't an algorithm designed only to extract the meaning of an expression from its syntax and vocabulary.
In fact, at bottom, it doesn't deal with meaning at all. Instead of taking a linguistic expression as something that requires decoding, Google Translate (GT) takes it as something that has probably been said before.
It uses vast computing power to scour the internet in the blink of an eye, looking for the expression in some text that exists alongside its paired translation. 
The corpus it can scan includes all the paper put out since 1957 by the EU in two dozen languages, everything the UN and its agencies have ever done in writing in six official languages, and huge amounts of other material, from the records of international tribunals to company reports and all the articles and books in bilingual form that have been put up on the web by individuals, libraries, booksellers, authors and academic departments.
Drawing on the already established patterns of matches between these millions of paired documents, Google Translate uses statistical methods to pick out the most probable acceptable version of what's been submitted to it.
Much of the time, it works. It's quite stunning. And it is largely responsible for the new mood of optimism about the prospects for "fully automated high-quality machine translation".
Google Translate could not work without a very large pre-existing corpus of translations. It is built upon the millions of hours of labour of human translators who produced the texts that GT scours.
Google's own promotional video doesn't dwell on this at all. At present it offers two-way translation between 58 languages, that is 3,306 separate translation services, more than have ever existed in all human history to date.
Most of these translation relations – Icelandic to Farsi, Yiddish to Vietnamese, and dozens more – are the newborn offspring of Google Translate: there is no history of translation between them, and therefore no paired texts, on the web or anywhere else. Google's presentation of its service points out that given the huge variations between languages in the amount of material its program can scan to find solutions, translation quality varies according to the language pair involved.
What it does not highlight is that GT is as much the prisoner of global flows in translation as we all are. Its admirably smart probabilistic computational system can only offer 3,306 translation directions by using the same device as has always assisted intercultural communication: pivots, or intermediary languages.
It's not because Google is based in California that English is the main pivot. If you use statistical methods to compute the most likely match between languages that have never been matched directly before, you must use the pivot that can provide matches with both target and source.
A good number of English-language detective novels, for example, have probably been translated into both Icelandic and Farsi. They thus provide ample material for finding matches between sentences in the two foreign languages; whereas Persian classics translated into Icelandic are surely far fewer, even including those works that have themselves made the journey by way of a pivot such as French or German. This means that John Grisham makes a bigger contribution to the quality of GT's Icelandic-Farsi translation device than Rumi or Halldór Laxness ever will. And the real wizardry of Harry Potter may well lie in his hidden power to support translation from Hebrew into Chinese. GT-generated translations themselves go up on the web and become part of the corpus that GT scans, producing a feedback loop that reinforces the probability that the original GT translation was acceptable. But it also feeds on human translators, since it always asks users to suggest a better translation than the one it provides – a loop pulling in the opposite direction, towards greater refinement. It's an extraordinarily clever device. I've used it myself to check I had understood a Swedish sentence more or less correctly, for example, and it is used automatically as a webpage translator whenever you use a search engine.
Of course, it may also produce nonsense. However, the kind of nonsense a translation machine produces is usually less dangerous than human-sourced bloopers. You can usually see instantly when GT has failed to get it right, because the output makes no sense, and so you disregard it. (This is why you should never use GT to translate into a language you do not know very well. Use it only to translate into a language in which you are sure you can recognise nonsense.)
Human translators, on the other hand, produce characteristically fluent and meaningful output, and you really can't tell if they are wrong unless you also understand the source – in which case you don't need the translation at all.
If you remain attached to the idea that a language really does consist of words and rules and that meaning has a computable relationship to them (a fantasy that many philosophers still cling to), then GT is not a translation device. It's just a trick performed by an electronic bulldozer allowed to steal other people's work. But if you have a more open mind, GT suggests something else.
Conference interpreters can often guess ahead of what a speaker is saying because speakers at international conferences repeatedly use the same formulaic expressions. Similarly, an experienced translator working in a familiar domain knows without thinking that certain chunks of text have standard translations that he or she can slot in.
Translators don't reinvent hot water every day. They behave more like GT – scanning their own memories in double-quick time for the most probable solution to the issue at hand. GT's basic mode of operation is much more like professional translation than is the slow descent into the "great basement" of pure meaning that early mechanical translation developers imagined.
GT is also a splendidly cheeky response to one of the great myths of modern language studies. It was claimed, and for decades it was barely disputed, that what was so special about a natural language was that its underlying structure allowed an infinite number of different sentences to be generated by a finite set of words and rules.
A few wits pointed out that this was no different from a British motor car plant, capable of producing an infinite number of vehicles each one of which had something different wrong with it – but the objection didn't make much impact outside Oxford.
GT deals with translation on the basis not that every sentence is different, but that anything submitted to it has probably been said before. Whatever a language may be in principle, in practice it is used most commonly to say the same things over and over again. There is a good reason for that. In the great basement that is the foundation of all human activities, including language behaviour, we find not anything as abstract as "pure meaning", but common human needs and desires.
All languages serve those same needs, and serve them equally well. If we do say the same things over and over again, it is because we encounter the same needs, feel the same fears, desires and sensations at every turn. The skills of translators and the basic design of GT are, in their different ways, parallel reflections of our common humanity. This is an extract from 'Is That A Fish In Your Ear: Translation and the Meaning of Everything' by David Bellos.

Top Web Conferencing Software for Linux

In the age of globalization, working with people from different parts of the world is common for many industries. Employees often have to travel long distances, which are not only hectic, but also costly for the company. Thanks to the fantastic state of the current economy, companies can no longer afford to spend extra money on travel expenses and accommodation. Furthermore, since travel often involves shifting between different timezones, employees are jet lagged and they aren’t able to perform at their fullest potential. And finally, there’s the environmental crisis, which is forcing more and more companies to go green and to cut out any unnecessary activities that may affect the environment, which obviously involves travel too.

So, what’s the solution to this? Should we stop globalizing? The answer is No. Thanks to the marvelous advancement in modern computing, people from different parts of the world can now communicate without even leaving their own office. The technology I’m talking about is web conferencing. Web conferencing allows you to hold meetings, seminars (called webinars), annotate whiteboards, training events, lectures and more using the power of the Internet.

To hold a web conference at your own office, you’ll need decent web conferencing software. If you’re looking to buy/ download one, there are plenty of options out there. However, if you’re on Linux, your choices are a bit limited. Don’t worry though, read on as we cover the best web conferencing software out there for Linux.

OpenMeetings is an open source web conferencing application that allows you to instantly set up a conference on the web. This browser-based tool lets you use your webcam and microphone to hold meetings over the Internet. Other features include the ability to share documents on a whiteboard as well as screen sharing. If you need to review your meetings, you can also record those using OpenMeetings. Licensed under EPL, OpenMeetings is free to download and install on a hosted server.

FastViewer Confered
Here’s another propriety yet feature-laden web conferencing tool that works on Linux. FastViewer Confered offers great features like web collaboration, online training sessions, encrypted communication, mobile device support and more. Furthermore, the software also allows users to record meetings. One advantage that FastViewer has over other web conferencing software is that it allows AES 256-bit coded encrypted communication. FastViewer is proprietary and works on Linux in viewer-only mode.

Adobe Connect
Adobe Connect is Adobe’s web conferencing software that runs across almost all popular platforms. Despite being entirely Flash-based, Adobe Connect comes with an impressive set of features, which include: unlimited and customizable meeting rooms, breakout sessions within a meeting, VoIP, Video conferencing, polling, notes, chat and whiteboard. Adobe Connect runs on Windows, Mac OS X, Linux, Solaris, and mobile. For Linux, the presenter/host has to be an Ubuntu 10 (or above) machine. The attendees on the other hand, can choose between Ubuntu, RHEL or Novell SUSE. Another important and annoying requirement is that the computers need to have Adobe Flash player 10.1 or higher. Even though it’s proprietary and Flash-based, Adobe Connect deserves a worthy mention on this list simply because of the impressive features it comes with.

WebHuddle is a Java-based cross-platform web conferencing application. The open source web application runs on any Java-based computer and transfers data encrypted by HTTPS. During installation, the client applet which is about 75 to 175 KB makes sure that it takes almost no space at all. Then, web conferencing can be started using the easy to use web-based tool. With a conveniently low set of requirements, WebHuddle makes it easy and economical for small businesses to carry out web conferencing. Since the tool is in beta, it is free to install and try out. Once out of beta, the company might charge for the service, though the model still remains open source.

Zoho Meeting
Zoho Meeting is a web-conferencing service from Zoho, the company that develops popular cloud-based office solutions. The application allows participants to see the screen of the presenter by using ActiveX, Flash or Java. A unique thing about Zoho Meeting is its Embed feature that allows corporate users to embed meetings into their webpage. For those concerned about security, Zoho encrypts all data that is transferred. Though Zoho Meeting works on Linux, its only limitation is that the presenter should be using a Windows computer. The service starts at $12 per 5 participants. The site also offers users to watch a free live demo before buying the service. Source:

10 things to do before attending a conference

The following list of items are taken from Adventures in Freelance Translation by Lingua Greca blog with some edits from site staff:
  • Sightseeing: If you’re traveling to a city you’ve never been to before, make sure to leave some time for sightseeing. Arrive a few days early or stay a bit longer. Research beforehand the places you want to see, which travel card or city pass is more suitable for you, based on the Points of Interest (POI) or attractions you want to visit. So yeah, sometimes I also research and plan for sightseeing, the rest of the times I barely see the new city I’m visiting…
  • Business cards: Review your business cards well before the conference. Maybe it’s time to update them or print a new batch of your existing cards. You should have at least 100 cards with you, more if you’re planning to attend several networking events or you’re a speaker at the conference. Most importantly, don’t forget to take them with you before you leave home!
  • Promotional material: By promotional material I mean flyers, brochures etc. about your translation business. Freelance translators don’t usually bother bringing such promotional material to big translation conferences, because there aren’t many direct clients there, but mostly translation agencies. The latter will be more impressed by a well-prepared resume than any other promotional material.
  • Résumé: Review and update your résumé. Make sure it’s not more than 1-2 pages and print it to check how it looks on paper. Then, choose a nice quality paper, preferably white or ivory, and print at least 50-100 copies. Keep some resumes at hand in case you meet someone (probably a translation manager) who asks you for one.
  • Elevator speech: Read this article “Promoting Your Practice in 60 Seconds or Less: Mastering the Elevator Speech” by Lillian Clementi, and then prepare and practice your elevator speech, which will be indispensable during networking events.
  • Contact existing friends and clients: Find out if colleagues you’ve met in previous conferences or representatives from translation agencies you already work with are attending the conference. But how do you check if they’re attending? Sometimes people mention attending a conference in their social media networks and agencies might include it in a newsletter. The easiest way is to email all the colleagues you want to meet and find out if they’re going to be there. If you get an affirmative reply, arrange to meet them at a scheduled networking event, during the conference or for lunch, coffee etc.
  • Contact new people you want to meet: If you want to meet folks you’ve interacted with on social networks, a translation manager you’d like start working with etc. – arrange to do so beforehand. You can also check the full list of attendees, which you receive upon registration one day before or on first day of the conference.
  • Organize your time:  To make sure you’ll make the best of the conference, study the program and choose the sessions you don’t want to miss by creating an hourly schedule, along with backup options in case the sessions is canceled.
  • Clothing and accessories: Check the weather at your destination and pack accordingly. You’ll probably spent most of your day in the conference hotel, so bring an overcoat but don’t dress too heavily underneath because you’re going to be hot and uncomfortable. The ‘dress-code’ for the conference is business casual. You don’t have to wear a suit, but leave your flip-flops at home. Check if the hotel has a pool and/or a spa and if you’re interested, pack your swimming suit (the hotel usually offers everything else, such as robe, slippers, towels etc.)
  • Inform your clients you’ll be OoO: It’s next to impossible to work during the 3-day conference, so don’t forget to inform your clients well before you leave (at least 1-2 weeks) about your out-of-office dates. Also, write a nice OoO message to be sent to anybody that sends you an email during that period. If you have a smartphone, you’ll probably be able to check your inbox during the conference, but avoid spending too much time with your phone/tablet/computer when there are so many interesting things to learn and people to meet.

Thursday, October 13, 2011

Add new file extension to right click context menu

For some reason, the "New" option when right-clicking in Explorer did not show the .doc file anymore. Here is how to fix it. Create a simple text file, copy this content

Windows Registry Editor Version 5.00

@="Word Document"



And then rename the file with the extension .reg and run it.

To delete the entry, repeat the procedure with the following content:

Windows Registry Editor Version 5.00

@="Word Document"



Unfortunately this method creates just a text file with a .doc extension, no real Word document, so beware!

Friday, October 7, 2011

How to split a single flac file into multiple tracks

This tutorial will guide you through the steps required to split a single large .flac file into multiple tracks/songs.
  1. If you’ve downloaded an album in .flac format, and it’s one big file, you can split it into multiple tracks (songs) via the .cue file that should be included in the download. There are a number of reasons for wanting to do this, the most common is to create individual MP3s of each track, rather than one long MP3 of the entire album. Once you’re done splitting the .flac file, you can use this tutorial to convert them to MP3s.

  2. To get started, download and install Medieval Cue Splitter. The installation is very straight forward – you’ll click “Next” a few times and then you’re done. Launch it by double-clicking its Desktop icon, or from its entry in your Start menu. If .cue files are already associated with a program on your PC, you’ll be prompted with a message asking if you’d like to associate all .cue files with Medieval Cue Splitter. Click Yes or No based on your needs.

  3. And now Medieval Cue Splitter will launch.

  4. click to enlarge

  5. From the top navigation window, select File and then Open CUE file… from the drop-down list.

  6. Navigate to your .cue file, select it, and click the Open button.

  7. click to enlarge

  8. Medieval Cue Splitter will populate all the fields with the appropriate information. When you’re ready to split the large .flac file into individual tracks, click the Split button in the bottom right corner of the window.

  9. click to enlarge

  10. When prompted for a location to save the .flac files, select the location of your choice. I opted to save them in the same folder as the original large flac and its .cue file. Click OK

  11. And now Medieval Cue Splitter will do its thing. The time it takes to split the file depends on the speed of your PC, but generally it’s a fast process. The green ’status indicator’ in the bottom right corner of the window will display the progress.

  12. click to enlarge

  13. Once completed, a small pop-up window will appear. Click OK.

  14. And now you’ll have each track on the album as an individual .flac file. The original .flac file will remain as well – it’s not deleted. Source:

Wednesday, October 5, 2011

Speaking more than one language may slow the aging process in the mind

Children who speak a second or third language may have an unexpected advantage later in life, a new Tel Aviv University study has found. Knowing and speaking many languages may protect the brain against the effects of aging.
Dr. Gitit Kavé, a clinical neuro-psychologist from the Herczeg Institute on Aging at Tel Aviv University, together with her colleagues Nitza Eyal, Aviva Shorek, and Jiska Cohen-Manfield, discovered recently that senior citizens who speak more languages test for better cognitive functioning. The results of her study were published in the journal Psychology and Aging.
However, Kavé says that one should approach these findings with caution. “There is no sure-fire recipe for avoiding the pitfalls of mental aging. But using a second or third language may help prolong the good years,” she advises.
Exercising the Brain
A person who speaks more languages is likely to be more clear-minded at an older age, she says, in effect “exercising” his or her brain more than those who are monolingual. Languages may create new links in the brain, contributing to this strengthening effect.
The research was based on a survey taken in 1989 on people between the ages of 75 and 95. Each person was asked how many languages he or she knew, what his or her mother tongue was, and which language he or she spoke best. The researchers compared bilingual speakers to tri- and multilingual speakers.
Analyzing the results, the researchers found that the more languages a person spoke, the better his or her cognitive state was. A person’s level of education was also strongly associated with cognitive state, but the number of languages contributed to the prediction of cognitive fitness beyond the effect of education alone.
A Matter of Words, Not Degrees
Although the easiest way to explain the findings was to point out the relationship between higher education and number of languages, this was not the whole story. In fact, Dr. Kavé says, “We found that more languages were most significantly correlated with cognitive state in those people who had no education at all.” Source:

Pros and cons of free tests

“An issue comprising two key points, namely a) why do tests and b) should they be paid for? Plus a third, subsidiary point which irritates yours truly beyond all reasonable measure, so we’ll come to that last.
So, a) “why do tests?”
I confess, I think “why do tests” is probably a little simplistic – it should be “what need drives clients to ask for tests and do tests meet that need?” – but I was looking for a short sub-heading.
Three reasons justifying requests for tests
The obvious first point is that clients ask for tests in order to test (naturally enough) that translators can deliver what they say can deliver. If you claim to be a legal translator, that you can translate a paragraph or two from a contract. If you claim engineering knowledge, that you can translate the description of a cable stay for a bridge, say. And so on. Unfortunately, the translation business is full of people with a misplaced confidence in their abilities, or who deliberately mislead clients, and anything in between. Your exams and credentials may be perceived as not having examined the specific subject area to the depth that a client may need. Or maybe the information about you in the public domain doesn’t really indicate much one way or the other. So they ask for a quick couple of paragraphs to prove capability to deliver.
The second point is that clients may ask for a test to check translators can follow simple instructions. I have limited outsourcing experience, and even I can tell you that some translators will get the document, and just jump into translating that document, before they have read the accompanying email all the way down to the inevitable “Regards….” bit. So asking people to start at the third paragraph (say), can just be used to test how much attention the translator pays.
Third, they may ask for test to see if you are actually able to meet technical or ancillary requirements. Can you handle XML? Provide a TM in TMX format for the client? Giving the translator a handful of HTML pages and receiving a nice Word document back, even if translated perfectly, may not be what is required.
Counter-arguments – valid
A common counter-argument to that first point is that samples demonstrate the same thing. True to an extent, and more so for a specialist. As a counter-counter-argument, I would say that I would expect a sample made available to be as near to perfect as a translation ever gets, and all it demonstrates is the ability to hone that particular text to the nth degree. It does not necessarily demonstrate the ability to deliver the specific type of text the client requires. And it in no way demonstrates the important additional ability to follow instructions. And neither do credentials, certificates, diplomas, membership of professional organisations, or indeed paid membership of popular translation websites. Some of these can indeed be easily forged, faked or presented in a misleading way, and also be a bit of a bugger to check, particularly from another country.
A more reasonable but conversely less universally-applicable counter-argument is that if you are being asked for a test, you probably don’t know the potential client from Adam, and the potential client also does not know you from any other character from the religious text of your choice. So we should be careful. It is certainly safer to acquire new clients by personal recommendation and referral, and the same is partly true of agencies using new translators. I have also heard the viewpoint that a client who is testing several people (not that we usually know how many are being tested at once) is likely to view each of them as interchangeable or disposable, initially at least, until they prove otherwise. Once again, a spot of (demonstrable) specialisation is your friend.”  Source:

10 rules for writing numbers and numerals

How do you express numbers in your writing? When do you use figures (digits) and when do you write out the number in words (letters)? That is, when do you write 9 and when do you write nine?
1. Number versus numeral. A number is an abstract concept while a numeral is a symbol used to express that number. “Three,” “3″ and “III” are all symbols used to express the same number (or the concept of “threeness”). One could say that the difference between a number and its numerals is like the difference between a person and her name.
2. Spell small numbers out. The small numbers, such as whole numbers smaller than ten, should be spelled out. That’s one rule you can count on. If you don’t spell numbers out it will look like you’re sending an instant message, and you want to be more formal than that in your writing.
3. No other standard rule: Experts don’t always agree on other rules. Two-word numbers should be expressed in figures. That is, they say you should write outtwelve or twenty. But not 24.
4. Using the comma. In English, the comma is used as a thousands separator (and the period as a decimal separator), to make large numbers easier to read.
5. Don’t start a sentence with a numeral. Make it “Fourscore and seven years ago,” not “4 score and 7 years ago.”
6. Centuries and decades should be spelled out. Use the Eighties ornineteenth century.
7. Percentages and recipes. With everyday writing and recipes you can use digits, like “4% of the children” or “Add 2 cups of brown rice.”
8. If the number is rounded or estimated, spell it out. Rounded numbers over a million are written as a numeral plus a word.
9. Two numbers next to each other. It can be confusing if you write “7 13-year-olds”, so write one of them as a numeral, like “seven 13-year-olds”. Pick the number that has the fewest letters.
10. Ordinal numbers and consistency. Don’t say “He was my 1st true love,” but rather “He was my first true love.” Source:

5 ways to earn a full-time income freelancing part-time

This article is intended for freelance writers but it can also be useful for freelance translators:
Here are five tips for maximizing your working hours:
1. Never start the workday without a plan. When your hours are limited, you can’t afford to waste a minute figuring out a to-do list for the day. Before you even sit down to work, have a task list ready to go. I always make my list the last few minutes of the previous workday, when I’m in the zone and know the status of each project. The next time I start work, which depending on my schedule could be several days later, my list is ready and so am I. I dive right in and get a ton more accomplished.
2. Set revenue goals. Many freelancers hesitate to set revenue goals because income is so unpredictable. But the up-and-down nature of freelancing makes setting goals even more important. You’ve got to have a clear idea of how much money you want to make so you have something to aim for. Set a yearly goal, and then break it down by quarter and month. If your monthly goal is $5,000 but one month you make $4,000, you know you’ve got to ramp up marketing to make up the slack. If you don’t set and actively monitor revenue goals, your could get a surprise at the end of the year – and rare is the freelancer surprised at how much more she brought in than she realized. Revenue goals are even more important for part-timers. It’s too easy to think of freelancing income as grocery money or gravy. Take your work, and the amount you want to earn from it, seriously.
3. Develop anchor clients. Anchor clients, editors and corporate clients who use you again and again, are the foundation of a part-time freelancer’s house. Work you can count on helps make meeting revenue goals that much easier, which means you can spend less of your precious time marketing and more writing, and earning.
4. Be the best professional you can be. How do you get anchor clients? Editors and corporate clients will come back repeatedly if you turn in good work, make yourself available for and amenable to revisions as necessary and generally make their lives easier. Anticipate how to do that, or ask. I try to remember that my clients have their own pressures from bosses, clients and advertisers, and may have different goals for my copy than I do.
5. Set your sights high. If you don’t believe you deserve the big projects, the highest per-word rate, the feature stories, who will? Be humble, build up your body of work, and then go for the good stuff. Source:

Lack of language skills costing British firms £21 billion

The Forum of Private Business is warning that poor foreign language skills cost British businesses £21 billion per year, leaving them behind large companies which are increasingly investing in multilingual staff.
Cardiff University’s 2007 ‘Costing Babel’ research revealed that UK businesses miss out on £21 billion annually in lost contracts.
It followed an earlier study showing that the demand for non-English language skills in large European companies is greater than the demand for English — often seen by UK small and medium businesses (SMEs) as the international ‘lingua franca’ of business.
The 2006 ELAN Project survey, which emerged from the European Commission’s 2000 Lisbon strategy to stimulate economic growth and employment, said there was evidence of ‘Anglophone complacency’ within small firms.
The report highlighted the importance of language skills, as well as an awareness of cultural differences, to export success.
Four elements of language management were found to be associated with successful export performance: having a language strategy, appointing native speakers, recruiting staff with language skills and using professionally qualified translators or interpreters.
An SME investing in these four elements was calculated to achieve an export sales proportion 44.5% higher than one without these investments.
The not-for-profit Forum has responded by launching a new language service for SMEs in conjunction with a translation agency.
Expert translators in all major languages with experience in a wide range of industries will be on hand to help translate tenders, contracts, manuals, corporate literature and websites, localised to suit specific markets, and provide face-to-face and telephone interpreting services.
In all, 73% of large companies responding to the ELAN survey had an established scheme for recruiting language-skilled employees, while a further 20% said recruiting these workers was common practice.
However, the report found that demand for skills in non-English languages over English was ‘significantly higher’ in these large companies compared to SMEs, which it found lose a ‘significant amount’ of business as a result, hindering both their existing and future export plans.
Many respondents viewed English as a key language for gaining access to export markets as a lingua franca for international business. However, the survey found that, while English might be used for initial market entry, the picture is far more complex and geographically variable. For example French is commonly used in trade negotiations in Africa and Spanish in Latin America. Source:

Internationalization versus localization

i18n and L10n
Internationalization (also known in various circles as i18n — the 18 denoting the number of missing letters from the middle of the word) is designing a site, a piece of software or an application that can be adapted for many different cultures. It is a process that is generally only performed once during the creation process. In a sense it’s sort of a one-size-fits-all solution that paves a neat path towards…
…Localization (often abbreviated to L10n… the same rules apply), which is the actual adaptation of your design, interface, software, etc. for a particular area or culture. This includes translating the text into other languages, making sure pictures are culturally acceptable and removing references that may not be relevant. Where internationalization is a process that is done only once, localization is performed each time you want to target a particular culture/language set.
To internationalize, you need to be one step ahead. What features might you want to implement in the future? Even if you haven’t even thought about breaking into China or India yet, these are both up-and-coming countries with languages that are non-Latin script. Unicode is pretty much essential these days and can support all manner of scripts, languages and characters for when the time comes.
And this also involves the ways in which languages are read. Some scripts, like Hebrew or Farsi are read from right to left, which will affect all of your text, text entry controls and scroll bars. You can add markup in your DTD which will support bidirectional text (and thankfully Unicode automatically supports it too).
To this end, separating specific elements from your source code that you may need to localize later is certainly a must. By isolating these localizable elements, you can ensure that when you change these, the rest of the code remains untouched. Examples here might involve date and time formats or name and address inputs. Source:

Good proofreaders and bad proofreaders

Your translation often needs to be checked to ensure its good quality. A person who checks a translation done by someone else can be called a reviewer, an editor, a proofreader or simply a checker. In this article, by the term ‘proofreader’ I mean the one who is usually hired by a translation company to check a translation against the source text for accuracy, completeness, linguistic and stylistic appropriateness, grammar, and spelling, although I am aware that some experts in our field may contend that a proofreader is only expected to check the spelling, grammar and style of the target document while an editor is expected to do more.
In some cases translations are checked by experienced and professional proofreaders. However in other cases, the work is corrected by bad and unfair proofreaders. These proofreaders often waste the time of the project manager, of the translator and even of themselves. They also bring about unpleasant feelings for both translator and the project manager.
Correcting approach
The job of a proofreader is to correct a translation, but good proofreaders and bad proofreaders have different approaches to doing it. Except spelling or typo issues that require immediate changes, a good proofreader will hesitate to change anything until he is sure that the change will serve a purpose, such as help clarify a certain meaning, fit the client’s style sheet or terminology, avoid misunderstandings or enhance the naturalness of the message. A bad proofreader usually hurries to change anything that he thinks does not match his own stylistic preference. Many bad proofreaders even tend to rewrite everything in their own words, falsely believing the more changes they make, the more competence they can show, at least, to a project manager. While a good proofreader tends to focus on errors that can obfuscate the clarity of meaning or result in misunderstanding of a text, a bad proofreader often concentrates on the minor details. Needless to say, a good proofreader often reviews all the changes he makes before submitting the edited work to the client. A bad proofreader does not review changes or does this in a careless way. Not long ago, I received back an edited version of my translation in which I realized that the proofreader used the ‘find and replace’ function so carelessly that he replaced many correct terms including the original name of company and its original website address! Source:

Freelancing stress

Some stress has always been a part of freelancing and will likely always be a part of freelancing. Here are some of the usual suspects that cause freelancers to experience stress:
  • Project Deadlines (crunch time)
  • Finances (or lack thereof)
  • Finding Work (also known as the feast or famine cycle)
  • Illness (sometimes caused by stress)
To be honest, many of these stressors exist for non-freelancers too. For example, non-freelancers may face project deadlines, have trouble with their finances, or get sick. Everyone, whether they are freelancing or not, has to deal with some stress in life.
The usual suspects have been stressing us out for a long time and aren’t likely to go away any time soon.

The New Players

In the past year, or so, global factors have emerged that may cause freelancers to experience additional stress that they may not have experienced in the past.
  • The Economy. It’s no secret that the global economy is floundering. The effects of a weakened economy can be felt in the freelance marketplace. I am seeing more and more “freelancers” state that they have been forced to turn to freelancing after losing a traditional job. (I hate to think of someone being “forced” to become a freelancer if they don’t really want that lifestyle for themselves.) A weakened economy also means more freelancers competing for fewer opportunities.
  • The Technology. Technology is changing more rapidly than ever before. Not only are there constantly new software tools a freelancer must learn to use and master, but also new hardware and new platforms as well. In fact, things are changing so rapidly that it is nearly impossible to keep up. Plus, we are constantly being bombarded with information that we can’t use and don’t need and it takes time to filter through everything we are exposed to.
  • The Social Clutter. One of the greatest relational changes that humankind has faced has occurred in the past ten years. I’m talking about social media. Before social media, must adults were lucky if they met two dozen new people in a year. Maybe, if they really worked at it, they could meet three dozen new people in a year’s time. Suddenly, through social media magic, all of us are getting to “know” not dozens, but possibly hundreds of new “friends” each year from all over the world. This sudden access to the multitudes has stretched and strained what friendship really means. Source:

Translator/interpreter becomes top profession for 2012

In today's information society, communication is more than just important. It's crucial. Every business and political message runs the risk of being misinterpreted, especially when it comes to complex ideas, and the results of misinterpretation can range from a failed business agreement to the collapse of government talks. In short, there never has been more demand for specialists in translation and interpretation, which makes these two jobs hot prospects for the coming years.
If you're fluent in two or more languages, you may find this career area of great interest to you, perhaps as you explore an entirely new vocation or if you're just starting your career after college. According to the Bureau of Labor Statistics, translators and interpreters will experience faster-than-average employment growth through 2018.
What's the difference between translators and interpreters? Translators work with the written word, whereas interpreters work with the spoken word. Many corporations are in great need of professionals in both aspects of the field, as are government agencies and other employers.
For instance, the American Translators Association is composed of more than 11,000 members -- including translators, interpreters, teachers, project managers, Web and software developers, language company owners, hospitals, universities and government agencies -- in more than 90 countries.
Dawn Rosenberg McKay, the career planning guide for, says, "Most employers will only consider candidates who have bachelor's degrees, as well as specialized training from a formal program."
Visit to find out income ranges in your region.
Should you decide that your language fluency, education and experience make you a suitable candidate, visit the American Translators Association's website ( for information on taking the test to become a credited member of the organization. You can take practice tests before paying the $300 test fee and signing up to take your exam.
You will need to provide proof of your education and work experience to qualify to take the test, which is a three-hour proctored exam in a specific language pair of your choice. The ATA currently offers exams for your proficiency in translating into English from Arabic, Croatian, Danish, Dutch, French, German, Japanese, Portuguese, Russian and Spanish, as well as from English into Chinese, Croatian, Dutch, Finnish, French, German, Hungarian, Italian, Japanese, Polish, Russian, Spanish, Swedish and Ukrainian.
Be aware that the test is challenging. The current overall pass rate is less than 20 percent, but when you do pass, you earn entry into the ATA, as well as your designation as a certified interpreter or translator, ready to launch into your new field.
How Will You Work?
The next consideration is this: Do you wish to work for a company or organization, or do you wish to be an independent contractor? The former requires that you locate in-house job opportunities -- a perk of belonging to the ATA -- and go through the process of interviewing in order to land your dream job.
Some companies maintain their employees in an office, and some send their employees into the field to interpret and translate. Consider the travel implications as an important factor in your job search.
If you wish to be an independent contractor, you will need to establish your own business, with resources from the ATA and the U.S. Small Business Administration, set up your home office, apply for a state license (if required), pay quarterly taxes, set up an organized bookkeeping system, market yourself and set your own prices, among other requirements for the self-employed. The ATA reports that it can take up to two years to fully establish your own business.
Ongoing Training
Just as with any other job, you will need to take smart steps to maximize your career's potential and advancement. According to the ATA's website, here are some advised steps:
- Take courses to keep up-to-date on trends in your field and learn new terminology.
- Join professional organizations to find out more about and network within your chosen specialties.
- Travel abroad, if at all possible.
- Read often, in all your languages, to hone your skills.
- Subscribe to trade magazines in your areas of expertise.
- Add to your hardware/software collection and learn new programs.
- Check your local community college for classes in accounting, taxes, business management, marketing, etc.
- Check out assistance from women's or minority business organizations if you fit those categories. Source:

Sunday, October 2, 2011

What are localization and other scary words people use?

Newbies in translation and localization industry may be fascinated  or scared  by the terms pros use, like localization (or localisation in British English), globalization, internationalization etc. What exactly do these fancy terms mean and how are they different?
Localization (commonly abbreviated as l10n, first and last characters of the word plus 10 characters between them) means not just translating software but making it look and feel like it was originally written for the target market. Apart from the translation, the following issues must be taken into account.
  • Date formats; for example, for December 8th 1994 in United States we write 12/08/94, in Spain 08/12/94, in Germany 08.12.1994, in Japan 94/12/08. We should watch this very carefully, as these issues may lead to user confusion.
  • Time formats; in USA the AM/PM format is used but in most of European and Asian countries the 24-hour format is preferred.
  • Number formats; for example, in USA the thousand separator is a comma (2,244), in Germany it’s a period (2.244) and in Russia a space (2 244)
  • Address formats
  • Currency, telephone numbers, paper sizes, units of measurement
  • Cultural peculiarities; for example, some colors or signs/symbols may have different meaning in different Countries and cultures: white in Japan symbolizes death whereas in Western cultures it symbolizes purity.
  • National symbols and flags, appropriate country information
  • Idioms and proverbs of the local culture
  • Web links and addresses; for example changing to for France
  • Product and brand names. Note that most software applications are developed in English and when translating products names in most cases trademarked names are left in as-is (e.g.MicrosoftNikonNokia). but service names may need to be translated, for example Google Books is translated into German as Google Bücher, into Spanish as Google Libros etc.
Locale indicates the combination “language_country”, for example “en_us” is English language for US users, “en_gb” is English language for Great Britain. Other examples are Spanish for Argentina (“es_ar”), Urugay (“es_uy”) or Spain (“es_es”). When it comes to software development, language codes usually follow the ISO 639-1 standard, while Country codes follow the ISO 3166 standard. Language and Country codes are separated by a dash or by an underscore, depending on the development platform.
Software localization consists in the translation of all UI items and help information, if available.
Internationalization aims to make the product more general and support usage in multiple languages and different cultural environments, ready for localization. In most cases it is recommended to be done during the software development phase. Read more. Source:

How to assign a Word command or macro to a toolbar or menu

  1. Choose Customize on the Tools menu.
  2. On the Commands tab, where it says Save In, select the template in which you want to save the changes you are about to make; or accept the default, which is usually to save them in your template (which will make your customisation global). If you are new to this, you will probably want to accept the default:

For the sake of older hands: the Save in box defaults to, unless the current document is another template or add-in, in which case it defaults to that template or addin. If the current document is attached to a template other than, then you will be able to select that template by pulling down the Save in List, thus allowing you to make your customisation specific to documents based on that template, if that's what you want.
If you want to make the changes in an add-in, you need to open the add-in as the current document before you start.
If you want to create a new Toolbar, click on the Toolbars tab, click New, give the new toolbar a name, and choose which template you want to store the toolbar in:

Figure 1
Or, if you want to create a new menu, click on the Commands tab. In the Categories list, click New Menu. In the Commands list, drag the New Menu item onto the Menu Bar (or onto a toolbar – any toolbar can act as a menu bar):

Figure 2
  1. Then right-click on your new menu, and rename it.
  2. Put an ampersand (&) just before the character which you want to be the shortcut key (the underlined character) – for instance if your menu is called “/font>My macros, and you want the user to be able to invoke it using Alt+M, you should name it  My &macros or &My macros.
Or, if you want to assign the command or macro to a shortcut menu (otherwise known as a right-click menu), click on the Toolbars tab, and select Shortcut menus in the list of toolbars. The Shortcut menus toolbar will be displayed, and you can modify the menus on that in the same way as any other menu:

Figure 4
  1. Once you've done that, select the Commands tab
  2. In the Categories list, choose All Commands to assign a Word command, or choose Macros to assign a macro. Then in the list on the right, choose a command or macro and drag it onto the menu or toolbar you want it to be part of.
  3. If you are customising a menu (including a shortcut/right-click menu), you will need to hold the mouse still until the menu drops down. Then position it, and only release the mouse when you have the command where you want it:

Figure 5
Note: If customising shortcut (i.e. context-sensitive right-click) menus, you may be surprised by how many menus you actually have to customise! For instance, if you want to add a command to the context-sensitive Table menus, you may well need to amend all of the menus shown in Figure 6. The trick here is, customise just one menu to start with. Then, when you're sure you've got it right, you can drag your new button, with your Ctrl key held down, to copy it from one menu to another. That way, you won't need to rename your buttons, or assign Tooltips or button images to them, more than once.

Figure 6
For a more detailed illustration of how to modify a shortcut menu, see also:
How to fix the Word 2000+ Cell Alignment buttons
  1. Right-click on your new menu or toolbar button, and rename it (see Figure 3).
If you've dragged the command or macro onto a toolbar and only want an icon to appear, right-click on it, and change it from Text only to Default Style.
Then you can select Edit button Image, or Change button image; or Paste button image. In order to paste a button image, obviously you have to copy one first: You can copy an image from the document, or from another button; or from a graphic in a graphics package. For much more detail on this, see the article: Assigning custom button images to your toolbar and menu buttons.
If you've dragged the macro onto a menu, put an ampersand (&) just before the character which you want to be the shortcut key (the underlined character) – for instance if your button  is called Heading Numbering, and you want the user to be able to invoke it by pressing N, you should name it  Heading &Numbering”. And again, see also: Assigning custom button images to your toolbar and menu buttons.
  1. Click Close.
Hold your Shift key down and select File + Save All, in order to save the changes in your template or add-in.
If it is a macro that you're assigning, and if you capitalise your macro name so that  the first letter of each word is capitalised and the rest is lower case, then the Tooltip will automatically have spaces between the words; so that a macro called HeadingNumbering would automatically have a Tooltip of Heading Numbering.
Whether it's a macro or a command that you're assigning, if you want to change the Tooltip text which appears when a user hovers over the button, you have to run a line of code such as the following – but this is a one-off –  you only need to run the code once (you could run it from the Immediate Window – press Ctrl+G, or select View + Immediate Window): 
CommandBars("MyCommandBarName").Controls("NameOfMyNewButton"). _
        TooltipText = "My tooltip text"
Or if your button is on a menu you'd use something like:
CommandBars("MenuBarName").Controls("NameOfMenu"). _
        .Controls("NameOfMyNewButton").TooltipText = "My tooltip text"
  1. Then select b> File + Save All again.
If it is a macro that you're assigning to a menu button, and if you want the menu to display the keybaord shortcut that's been assigned to your  macro (in the same way that the File + Save menu button displays Ctrl+S, over on the right), see: How to get a menu button that is assigned to a macro to display the keyboard shortcut on the menu.Source:

How to Find Anything Under Linux

The Linux find, grep, and awk commands are amazing power tools for fine-grained file searches, and for finding things inside files. With them you can find the largest and newest files on a system, fine-tune search parameters, search for text inside files, and perform some slick user management tricks.

Find Largest or Newest Files

The find command can do nearly anything, if you can figure out how. This example hunts down space hogs by finding the 10 largest files on your system, and sorts them from small to large in human-readable form:
# find / -type f -exec du {} \; 2>/dev/null | sort -n | tail -n 10 | xargs -n 1 du -h 2>/dev/null
1.2G	/home/carla/.local/share/Trash/files/download
1.3G	/home/carla/sda1/carla/.VirtualBox/Machines/ubuntu-hoary/Snapshots/{671041dd-700c-4506-68a8-7edfcd0e3c58}.vdi
2.2G	/home/carla/.local/share/Trash/files/dreamstudio.iso
These results remind me why I don’t like having a Trash bin, because when I delete something I mean it, by cracky. This command is a brute-force search of the entire filesystem and may take a few minutes to run, so use it as an excuse to go have a quick healthy walk outside. Of course you can modify the command to search whatever directories you want; for example, use find /var/ to hunt down obese logfiles.
Let’s dissect the command. find / -type f means “search all files in the entire root filesystem.” The -exec option is for incorporating other commands, in this case du, the disk usage command. -exec du {} \; means “run the du command on every file to get its size in bytes.” 2>/dev/null sends all error messages to the bitbucket, so they don’t clutter up your results. You can delete both 2>/dev/null occurrences and rerun the command if you’re curious about what you’re missing. sort -n puts all the files in order by size, and tail -n 10 displays the last 10, which thanks to the sort are the largest. You could stop there, and then your output would look like this:
1206316	/home/carla/.local/share/Trash/files/download
2209784	/home/carla/.local/share/Trash/files/dreamstudio.iso
xargs -n 1 du -h adds the final refinement, converting the file sizes from bytes to an easy-to-read format.
You can easily find all files on your system that were changed in the last five minutes:
# find / -mmin -5 -type f
This command finds all files changed between 10 and 20 minutes ago:
# find / -mmin +10 -mmin -20 -type f
+10 means more than 10 minutes ago, and -20 means less than 20. If you do not use a plus or minus, it means that number exactly. Use -mtime to search by 24-hour days. If you want to find directories, use -type d.

Searching Multiple Directories

You can list multiple arbitrary directories in which to search like this:
# find /etc /var /mnt /media -xdev -mmin -5 -type f
- xdev limits the search to the filesystem you are in and will not enter any other mounted filesystems. By default find does not follow symlinks, so you only need to include -xdev to stay inside a filesystem and not go wandering through network shares and removable devices.

Excluding Directories

You can narrow your searches by excluding directories with the prune option. prune is a little weird; you have to think backwards. This example searches the whole filesystem except for the /proc and /sys pseudo-directories:
# find / \( -name proc -o -name sys \) -prune -o -type f -mmin -1
First you name the directories to exclude, where -o means “or,” and escape the parentheses. Then -prune -o means “don’t look in the previously named directories.”
I like to use prune to exclude web browser caches, because they clutter the results. The following example does that, and also prints the date and time for each file:
$ find / \( -name proc -o -name sys -o -name .mozilla -o -name chromium \) -prune -o -type f -mmin -10 -printf "%Ac\t%p\n"
Wed 28 Sep 2011 10:34:54 AM PDT	/home/carla/.local/share/akonadi/db_data/ib_logfile0
Wed 28 Sep 2011 10:34:54 AM PDT	/home/carla/.local/share/akonadi/db_data/ibdata1
Wed 28 Sep 2011 05:21:48 PM PDT	/home/carla/articles/findgrep.html
The printf option is “print format.” Use printf when you want to control the formatting of your output. You get to specify newlines, date and time formatting, and file attributes such as permissions, ownership, and time stamps. %Ac prints the date and time, \t inserts a tab, %p prints the full filename, and \n inserts a newline.
As you can see, find has a lot of built-in functionality that people often add the ls command for.

Finding File Types

Searching by file extension is easy too. This example searches the current directory for three different types of image files:
$ find . -name "*.png" -o -name "*.jpg" -o -name "*.gif" -type f
Use the -name option to search on any part of a filename; either the extension or part of the name. For example, to find mysong.ogg you could search for mys*, or any part of it, using normal shell wildcards. Use -iname for a case-insensitive search.

Finding Duplicate Files

You can find duplicates files in a couple of ways. This command checks MD5 hashes:
$ find . -type f -exec md5sum '{}' ';' | sort | uniq --all-repeated=separate -w 24
This calculates an MD5 hash for all the files, sorts them by hash, displays them on separate lines, and matches the first 24 digits of each hash.
The second way is to match files by file size:
$ find . -type f -printf "%p - %s\n" | sort -nr -k3 | uniq -D -f1
MD5 hashes are more accurate, but matching file sizes is faster.

Finding Text Inside Files

The grep command is endlessly useful for searching inside text files to find things. Suppose you have a directory full of configuration files for a server, and you want to search all of them to find all of your test entries. If you were foresightful you used the word “test” in all of them, so this command will find them:
# grep -inR -A2 test /etc/fooserver/
This tells grep to do a case-insensitive recursive search for “test” in all the files in the /etc/fooserver/ directory, and to print the next two lines following the line that matches the search. The n option prints line numbers, which is a nice bonus in large files.

Finding Blocks of Text

The awk command can find blocks of related text in a way that grep can’t, using this simple syntax: awk '/start-pattern/,/stop-pattern/'. Suppose you want to see expanded information from lspci for just your Ethernet device:
$ lspci -v | awk '/[Ee]thernet/,/^$/'
08:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 03)
        Subsystem: Lenovo Device 2131
        Flags: bus master, fast devsel, latency 0, IRQ 46
        I/O ports at 3000 [size=256]
        Memory at f2004000 (64-bit, prefetchable) [size=4K]
        Memory at f2000000 (64-bit, prefetchable) [size=16K]
        [virtual] Expansion ROM at f2020000 [disabled] [size=128K]
        Capabilities: <access denied>
        Kernel driver in use: r8169
        Kernel modules: r8169
You need to know the beginning and end of the block that you want to see, so it’s a great tool for quickly snagging sections of configuration files.
This example takes advantage of configuration blocks delimited with curly braces, and homes in on the listen directives in radiusd.conf:
# awk '/listen {/,/}/' /etc/freeradius/radiusd.conf
listen {
	    ipaddr = *
#	    ipv6addr = ::
	    port = 0
	    type = acct
#	    interface = eth0
#	    clients = per_socket_clients

Managing Users and Files

Employees leave, and file ownership and permissions get messed up on an organization’s system files – but don’t worry, find can help you set things right quickly. You can find all files that belong to a specified username:
# find / -user carla
Or to a group:
# find / -group admins
You can also search by UID and GID with the -uid and -gid options. You can then move all of a user’s files to another user by either username or UID:
# find / -uid 1100 -ok chown -v 1200 {} \;
# find / -user carla -ok chown -v steven {} \;
Of course this works for changing group membership as well:
# find / -group carla -ok chgrp -v admins {} \;
The ok option requires you to verify each and every change. Replace it with -exec if you’re confident about your changes.
When employees leave you may have a policy of deleting their files, which find can do with ease:
# find / -user 1100 -exec rm {} \;
Of course you want to be very sure you have it right, because find won’t nag you and ask if you are sure. It will simply do what you tell it to.
find, grep, and awk – with tools like these, and maybe a little help from their man pages, you can find just about anything on your Linux systems. Source: