Ayman Elbadawy
Nov 4, 2019
  1814
(3 votes)

Bidirectional Languages and User Experience

The process of localizing a CMS into Arabic is not simple. It requires additional steps before and after the translation process.  This first article will be an introduction and will include an agenda about the main topics to follow.

This is a comprehensive introduction to this large topic as I will identify some related terminologies like Internationalization (i18n), Localization (L10n) and Globalization (g11n):

Briefly, both Internationalization and Localization represent the overall process of adapting a product to work efficiently in different languages. While the Internationalization (i18n) process concerns the design and the structure of the product. Localization (L10n) is the process of adapting already internationalized content into a specific language. One more difference between these processes is that internationalization has to be done only once as the localization can be done several times.

As defined by LISA, Internationalization (i18n) is the first phase and includes the Design, Development, and Testing of a product. Then the second phase is Localization (L10n) which covers Translation, Testing / QA and Local Marketing of the product.

Bidirectional Languages and User Experience (UX):

For several years I have been working on localization Episerver projects for MENA countries. The dominant language spoken in this region is Arabic. A language that confuses many non-Arabic speakers who are working here. Especially the marketing and sales departments who work with Content Management Systems. These countries mostly rely on foreign expertise with their ambitious mega projects. It has become crucial to understand this language in-depth as it affects important business aspects such as content management, digital marketing, sales and most importantly customer experience.

We know that almost all languages worldwide write from left to right (LTR). Only a few languages that write from Right to Left (RTL) like; Arabic, Aramaic, Azeri, Dhivehi/ Maldivian, Hebrew, Kurdish, Persian, and Urdu.

When we say Right to Left language this means that the writing starts at the right-hand side of a page and concludes at the left-hand side as seen below:

As in the above screen, an Arabic word consists of a set of contiguous characters. An Arabic sentence is a set of words with a space between them and ends by a full stop.

One point that confuses non-Arabic speakers is that despite the text is written from right to left, the numbers stay exactly like the English: From Left to right. This fact has a great technical impact during the developing of Episerver templates. If you do not apply this concept correct, numbers like phones, prices, etc… will not be able to display correctly, which is crucial. In the next article, I will provide more examples and solutions on how to solve these issues.

Furthermore, Companies in the MENA region may choose to use Hijri or Gregorian Calendar: A question that must be asked during the Internationalization phase of the product.

Also, you must consider Culture-specific content during the early phase of development. And in some cases, not all content in English is suitable to be displayed for the Arabic audience. This means that an Arabized application must provide options to manage such cases. Such as Admin or Author options from within the application, that doesn’t require the need for any future re-engineering.

And before concluding this article, I have to mention one more important feature which is Episerver Search. A good search option provides a better User Experience. Usually, The search feature handles queries in English or other Latin Languages. But searching using bidirectional keywords requires technical adjustments that need to be anticipated during the design phase for the Front end as well as the Database layer.

Feel free to leave a comment or to Contact Me for an open discussion!

Nov 04, 2019

Comments

K Khan
K Khan Nov 4, 2019 07:35 PM

Thanks Ayman for sharing, I understand well these due to my Urdu/Punjabi background. Wondering have you done any Epi implementation in Arabic, what were your main challenges? How is CMS market in MENA?

Ayman Elbadawy
Ayman Elbadawy Nov 4, 2019 08:06 PM

Hello Khurram,

Thank you for reading my post.

Yes, I did several implementations for Episerver for the Arabic language since version 6R2 till 11.

And, regardless of the version, the challenges are almost the same: When non-Arabic developers, develop the CMS custom components they ignore BIDI languages special characteristics. Or maybe the CMS owner didn't target the MENA region countries from the early beginning. A bad Internationalization practice.

As a result, CMS templates are not customized to display the content (Right to Left). Or the Phone numbers are displayed from right to left which is wrong (should be like the English from left to right) as well as the Hijri Calendar. Another issue when you try to localize the name in the URL field (some clients ask for this localization for SEO purposes). The CMS considers any non-Latin text as a special character and you will receive an error like the print screen below.

What I learn from these challenges is that we need to work closely with the dev team since the early beginning of the development life cycle and to understand well the clients' requirements.

About the CMS Marketing in the MENA region, there is an increasing demand for CMS these days with mega-companies (for .NET based licensed CMSs).

Thank you

Please login to comment.
Latest blogs
Preview multiple Visitor Groups directly while browsing your Optimizely site

Visitor groups are great - it's an easy way to add personalization towards market segments to your site. But it does come with it's own set of...

Allan Thraen | Sep 26, 2022 | Syndicated blog

The Report Center is finally back in Optimizely CMS 12

With Episerver.CMS.UI 12.12.0 the Report Center is finally re-introduced in the core product.

Tomas Hensrud Gulla | Sep 26, 2022 | Syndicated blog

Dynamic Route in ASP.NET Core When MapDynamicControllerRoute Does Not Work

Background Creating one of the add-on for Optimizely I had to deal with challenge to register dynamically route for the API controller. Dynamic rou...

valdis | Sep 25, 2022 | Syndicated blog

404 Error on Static Assets Within an Optimizely plugin

Background With the move to CMS 12 and .NET 5/6, developers are now able to build Plugins and Extensions using Razor Class Libraries (RCL).  These...

Mark Stott | Sep 23, 2022