contact@satumm.com+88 01749 334279Mon–Fri, 09:00–18:00 (Bangladesh time, GMT+6)LinkedInWhatsApp
Home / Insights / Artificial Intelligence
Artificial Intelligence

Shipping a learning platform in six languages

Translation was the easy part. The hard part was everything a language touches that is not text.

On this page

  • Translation is a content problem, not a code problem
  • The tutor has to answer in the language it was asked in
  • Money is part of the localisation
  • Right-to-left is a layout decision made on day one or never
  • What we would do the same way again

Sifu AI teaches people to use AI in their own language. That sentence took far more engineering than it reads, because a language is not a layer you paint over a finished product. It reaches into the database, the payment flow, the certificate, the tutor and the typography, and it reaches into each of them differently.

We built it in six: English, Bangla, Bahasa Malaysia, Arabic, Hindi and Chinese. Here is what that actually cost, and what we would tell anyone planning the same thing.

Translation is a content problem, not a code problem

The instinct is to wire up a translation library, extract every string, and declare the job done. That gets you a product where the interface is translated and the substance is not. A learner reading a course in Bangla whose examples are all American, whose payment screen quotes dollars, and whose certificate is in English has not been taught in their own language. They have been handed an English product with Bangla buttons.

So we split the work in two from the start. Interface strings are a translation task. Course content, examples, the tutor's voice and anything a learner reads for meaning are an authoring task, done per language by someone who would speak that way.

If the examples in a lesson do not come from the learner's own life, the lesson is in their language but not for them.

The tutor has to answer in the language it was asked in

Sifu AI's tutor speaks. That turns a text problem into a speech problem, and speech is where cheap multilingual support falls apart. A model that writes passable Bangla may read it aloud with an accent that makes a learner wince — and a learner who winces at the tutor stops asking it questions, which is the whole product.

Two rules came out of this, and we now apply them to any multilingual AI feature:

  • Detect the language from the learner's own message, not from a profile setting. People switch mid-conversation, especially between English and their first language. A setting cannot follow that; the message can.
  • Test the spoken output, not only the written output. A sentence can read correctly and still sound wrong. We listen to samples in every language before a release, which is slow and has caught things nothing else would.

Money is part of the localisation

A payment flow is not localised by converting the number. The learner needs to pay the way people in that country actually pay — and if the only route is a card most of them do not hold, the course is theoretically available and practically closed.

Sifu AI runs two payment systems side by side for exactly this reason: one international, one local. It roughly doubles the work in checkout, reconciliation and refunds. We would do it again, because the alternative is a product that is open to everyone and bought by the people who were never the point.

Right-to-left is a layout decision made on day one or never

Arabic flips the interface. If the design system was built with a left-to-right assumption baked into its spacing, icons and component logic, retro-fitting direction support means revisiting every component. If direction is a first-class property from the first component, it costs almost nothing.

This is the clearest example of a general rule in multilingual work: the expensive choices are the ones made implicitly, early, by someone who was not thinking about language at all.

What we would do the same way again

  • One visual master, many language exports. The layout, the spacing and the components are identical across all six. Only content changes. That is what keeps six versions maintainable by one team.
  • Author content per language; translate interface strings. They are different jobs with different skills and different review processes.
  • Treat payment, certificates and speech as localisation surfaces, alongside text. They are the ones users notice.
  • Pick the languages you will support properly, and stop. Six done well is a product. Twenty done by machine is a liability with a long tail of embarrassments.

Where this came from

Sifu AI is a SATUMM product — we designed it, built it, and we run it. The decisions above are the ones we live with in production, not recommendations from a case study we read.

Discuss this with us
More engineering notes

Related reading.

Is this a live problem for you?

If it is, we would rather talk it through than have you read another article about it.