Thoughts about multilanguage

10.0/10 rating (1 votes)

We live in a ruthless world where everyone wants to have a piece of it and get the nice and warm place under the sun. Development of web-apps demonstrates this fact in just one phrase: «We definitely need our own social network, a mobile application, adaptive design, a mobile website version. Oh, right and translation into 7 languages. Not even less since we are cooperating with the whole world».

Thoughts about multilanguage

Today I would like to touch upon the issues of languages and synchronous translation... After all, I do have something to say about every one of such typical wishes and wants and language problem «hurts» worst. I will meanwhile try to explain why we are not in a great hurry to implement it in JBZoo (although starting from 3.x. this feature will be there).

I would like to mention that the information below strongly relates to any CMS-system, any web-site type and state-of-the-art software ... anyway.

Let’s just imagine a typical situation. A customer (client) (well, who himself is not aware of that) wants to have the translation of his website. Why? For sure to make a quick conquest of as many markets as possible. At that, translation should be synchronous (each page can be switched to the corresponding one in a different language). And of course, no one wants to spend much money, if it does not really matter. You can just use free online translation apps and click the special link «add language» on the control panel.

Sure enough we receive a lot of questions about JBZoo coming from such people, if we have the multiple language support or not. In return we try to get more details, still it all ends up with the link to a page like this. There is just one simple question in the head: «What is the reason... why do you need that pain in the a.., man?!»

I do not want to keep you waiting and looking for a conclusion, here is my personal experience — each language should be realized on a separate, quite independent domain and website. And here are the reasons why...

Easy and comfortable operation with separate sites-languages

No needless functionality in the website engine

Often to create multiple language support you need to load up already heaped website with some additional amazing component totally substituting content in all extensions. And it all seems to be almost perfect, almost... Usually it spills over into the following things:

  • Such components as JoomFish, Falang, ZOOlanders are trying to replace the content by all available means (hacks, a bunch of plug-ins, overload of core functions etc). Inside it looks rather terrible and happens almost with all CMS (Only Drupal seems to implement it more or less easy and quick at the core level).

  • -1 to the speed of your website.

  • +10 to your pain when setting languages and each module.

  • Mess when contenting the site.

  • You might have some problems with files since they are not stored in the database. After all, sometimes you need to localize pictures. Do you have to make a separate folder?

Personally for me it all seems to be simply a dead load.

No problems with gathering visit statistics

Well, a separate domain is a separate counter so you don’t have to make any crutches and terms in the metric settings to unravel the activity of Spanish and English audience. Someone may ask why you would make this separation. I answer, it is necessary to understand why your website sells for English audience and doesn’t sell at all to Iberia when all other things being equal.

You use a"clean" control panel

Now when I enter the JBZoo.com admin panel, I am not disturbed by the content from websites in other languages. Quite comfortable as you don’t need to fix this or that on these pages day by day and I am not going to get myself out of the comfort in my daily routine.

No helter-skelter around the intricate website structure

Synchronous version of translation presupposes that the menu is the same for all languages. Nevertheless, they should vary since the company provides absolutely different services for different countries. What shall I do then? Clear! I wind up several menu groups, duplicate the functionality... And what if I have more than one language? Good luck in the control panel labyrinths...

Avoiding complexity of promotion

Please, SEO experts, go ahead and bombard me with rotten eggs. Oh, I am not afraid of that, even marketing experts may join. They will manifest that now they have lots of pages and now it is easier to promote etc. Just think about it, I am an ordinary user from the USA, why should I need the German language on the web page? So, I don’t know either... All right, let’s leave it like that and just imagine how the search engine sees your site. Ok, you have that German, still you don’t have that many visitors. Ok, you have English and you do have a lot of visitors. As a result, awry promotion of the German part pulls English towards the floor (yes, we may have some nuances). Money spent for advertising and resource promotion is a definitely a fly in the ointment.

Easy separation of social networks, widgets and other services

According to Captain Obvious, each country is using its own favourite social network and apparently no one in Germany is using G+. For this reason, you need to customize the set of buttons for every language and even groups in the social networks. Once I stumbled upon one foreign website where they had Deutsche Post as the exclusive delivery provider. I bet, the website owner was wondering why the money spent on a high-quality localization was not paying off.

Typical language headache

To each language its own directory

I don’t think that’s the best idea ever, for example, having http://site.com/de/ and http://site.com/en/. On the one hand, you will have more pages on the site and seemingly everything independent, on the other hand, each page will get + 1 nesting and popular CMS may face some difficulties in separating design for different languages, leading to the following trouble.

Poor search results

See, the website sells the item «GFT739». If I google it, a page in which language will I have as a result? Are you sure?

Quite often, while searching the wrong page comes up even if everything is set in English. The robot could probably think that two pages in different languages about one and the same thing might be duplicates or one of these pages may have a better promotion. Why does it happen? I don’t know. And as a result such little things scare off visitors who simply turn to your competitors and read in their mother tongue. Modern Internet is a lazy being: if the search engine has forwarded you wrong, you just turn around and walk away, while the site should gently correct the first visit through Geo-targeting.

GUI Design and other nuances

Needless to say that each language has its «features», Arabic serving as the clearest evidence. Words go from the right to the left, in some languages they even flow from the top downwards. The list of differences and nuances is in fact endless. Here are only some of them:

  • Plural forms of nouns.

  • Designation of date, time, money.

  • Conversion of measuring units (automatic conversion of kilograms into pounds).

  • Direction of text and punctuation.

  • Addressing users.

  • Dependence on the gender (for some countries this point is quite important).

  • Stylistics of speech and terminology.

  • Let’s not even talk about dialects.

Fighting for the word length

As a rule, English and Chinese texts are pretty compact and translation from these languages is getting more bulky respectively. Sometimes, significantly more bulky. So, the length of one and the same phrase may expand three-fold. Is your current template ready for such dimensions? I rather doubt... My personal favourite is the word «views».

Language

Translation

Relation

Korean

조회

0,8

English

views

1

Chinese

次检视

1,2

Portugese

visualizações

2,6

French

consultations

2,6

German

-mal angesehen

2,8

Italian

visualizzazioni

3

Blended nouns

Some languages like Finnish, German and Dutch, have the possibility to make up one huge word, thus replacing sequences of several short words in other languages.

For example, English word group «Input processing features» turns into German «Eingabeverarbeitungsfunktionen». English text can be easily broken into two lines in case of limitation per block width, e.g. in the template entry fields and narrow columns, or in the inserts or buttons. German «super-word» cannot be automatically transferred and might create a big problem in the design.

We may also face such problems as width of symbols, height of letters, usual line spacing etc. As a result, interface correction goes as far as I just start getting consistent desire to drop everything and start over again rather than snail through the current design.

Special text for each site

Everyone who once developed a website is aware that the biggest problem is to create a high-quality content. Usually it is really hard to get some nice texts from the client (constant promises, too small, write by yourself, maybe parse?). Now with the synchronous translation you have doubled your job.

All of a sudden a page seems to be unneedful of translation into Spanish and you have the 404 page or at best redirect to the main page. The worst case scenario is when your users will get the original text and just go away. Why does they need to go through such tortures?

Tips for household — Manmade translation is always BETTER than any SkyNet-translate

ИдеяActually I am still wondering why you all think that machine translation is a good idea? Really, I can’t get it. Who actually means it, please, go ahead and play in traffic.

I guarantee that:

  • It won’t bring you native speakers and target traffic. Any native speaker, seeing that, will give a damn and leave never to come back again, even if you settle that.

  • It litters the Internet. Believe me, machine translation is easily recognizable even by natives who studied foreign languages at secondary school.

  • Search engines have long defined such content as garbage. I think, that Google is quite able to recognize a good text from its own translation.

  • Your visitors will laugh at you and no one will ever believe in the quality of your service or product.

  • You will get Chinese. They speak English like speak I Chinese. Don’t even start praying for good, they are just like that...

  • Oh, it’s nasty anyway! Please, don’t even start.

Actually, a unique product or a variant-lacking user could be an exception to the rule. Buying from you, such user is dealing with a matter of life and death. Still, is it worth casting a slur on yourself? Moreover if you are a monopolist on the market :)

The only right decision is to hire a professional translator who preferably lived abroad for more than one year. Nowadays it is pretty easy (foreign languages are in trend). The advantage goes to the experts in your field.

And what shall you do if you have texts about a synchrophasotron (a sort of cut can with magnets)? You still can translate it using your own pre-intermediate and it is better than to trust your text to the machine anyway.

Believe me, even in 10 years there will appear no good machine translation. As for me, this is somewhat unbelievable as if the Turing test had been successfully passed.

Life story of one project

All right, we are developing a Spanish website. Everything’s just perfect. Fit and filled in with content, the site is done and we are peacefully collecting some positive feedback. The client is thrilled to bits. As time goes by, he wants to add up French. No problem at all. Linguists translate all texts and localization constants and here we go...

  • In French version, we don’t need banners in the right column. Not a big deal, we establish a condition and trudge through the admin panel.

  • Product range and upper menu should be slightly different. Yeap! + 1 section to the main menu and +7 to the categories and their new nesting.

  • Page title doesn’t fit for the promotion in France (the system is different and your sape-spam won’t fly). Still, a little condition in PHP will do its dirty business.

  • The width of the news block is distorted due to the change in the text length. Not much, just in 10px. Such an ugly view. Ok, we insert in CSS an unbeatable «important» through the parent html [lang=fr].

  • Oops, additional 26 places distorted. The testing department is anyway up to everything. Lol. Just to re-compose and we simply have three hundred lines in styles changed.

  • OMG! Bugs in French version! For what and where is the end of it?

  • Bingo! The project is ready!

  • ...

  • Now the client wants to have his site translated in German, moreover, he has already prepared all the texts.

  • Lol. Ok, it is just an easy deal. I am aware of all underflows and going to quickly add up a new localization in our super-duper CMS and fill it up with texts.

  • Testers are wide awake. Oh no, the design is distorted both in German and French sites simultaneously. What? Extra 146 bugs?

  • Voices from the programmer’s office: «Blame it all on you designer, layout expert and the bloody client with his stupid languages... and don’t forget the manager who found this client, dammit!»

  • Bingo! The project is ready!

  • ...

  • The client wants Finnish and testing guys are on the watch.

  • The lead developer won’t have this anymore and finish.

  • The client looks for a new contractor and, wow, he finds.

  • Humph, this shit is damned disgusting. We should do an absolutely brand-new website. Your ex-programmer has messed it all up like hell.

To cut a long story short

Do what you gotta do.

And to be honest with you...

The main purpose of localization is to make your user feel comfortable in your app/site, regardless the language and place of residence. Often, it requires unevident and complex solutions, so it is absolutely undoable within the framework of one CMS/component or you will be one of those who is shooting at his own feet.

If you set your teeth for the separate language on the site, deal with it at your best. Otherwise, your efforts will go to waste.

From where I stand, the most of abovementioned issues can be troubleshooted through the simple execution of two separate sites, preferably located at different domains (jbzoo.ru and jbzoo.com) or subdomains (en.jbzoo.com and ru.jbzoo.com). Note that they should not depend on each other (databases, files, pictures). Code between the sites is easily synchronizable through Git or SVN. At least, you will have fewer troubles when developing and contenting and as a result- qualitative product and less expense for its maintenance and tech support.

I don’t claim my solution as a sole right one, still as for me- it seems to be the easiest one. What do you think about it?

By the way, beans to you all, oh, peace to you all! =)

10.0 31019
Leave a comment