Translation

Every page is written to live in four languages. English sits at the root; Spanish, Catalan and Tagalog mirror it, each under its own prefix. This page is the policy that keeps them in step.

Four locales

English is served at the root with no prefix. Spanish, Catalan and Tagalog each live under their own prefix. Dates and month names format per region: British English, European Spanish, Catalan and Filipino.

Locale Path Language
en (root) English
es /es/ Español
ca /ca/ Català
tl /tl/ Tagalog

What translates, and what does not

Prose, headings, alt text, interface strings and diagram labels are translated. Everything a reader would copy and run is kept exactly: code, terminal commands, file paths, URLs, code identifiers, and brand and product names. A translated post reads in its own language while its git commands and API names stay byte-for-byte the English.

Translated

  • Prose and headings
  • Image alt text
  • Diagram (Mermaid) labels
  • Interface strings

Kept verbatim

  • Code blocks
  • Terminal commands
  • File paths and URLs
  • Code identifiers
  • Brand and product names

Not every post exists in all four languages. Where a translation is missing, that language’s feed shows the English post rather than hiding it, and a first-time visitor to the site root is sent to their browser’s language.

One glossary per series

A long series decides its vocabulary once and reuses it in every part: the words a reader meets in part two must still be the words in part nine. Contested terms get an entry the first time they appear, and every later translation follows it.

English Spanish Catalan Tagalog
shell shell shell shell
seam costura costura seam
deployable desplegable desplegable deployable
boundary frontera frontera boundary
grid cuadrícula graella grid
release train tren de releases tren de releases release train

A change of mind has a rule of its own. When a better word wins mid-series (this site moved from cáscara and closca to shell), the new word is applied to every published part in the same edit, not only the parts still to come. A glossary that only points forward splits the series in two.

Fixed furniture

Recurring page furniture is translated once, recorded, and never improvised again. The sources heading is Fuentes in Spanish, Fonts in Catalan and Mga Sanggunian in Tagalog, in every post; test and step labels keep one form per language; series names stay in English everywhere. Three posts with three different words for the same heading is how a catalogue drifts apart.

Terms of art

A term the industry itself uses in English (inner source, code owner, pull request) stays in English in all four languages and is glossed in the surrounding sentence the first time it lands. A dictionary rendering of a term of art trades a name readers can search for a phrase they have never seen. Brand and product names are never translated and never shortened.

Voice across languages

A translation here is not a word-for-word rendering. Each language is written the way a senior engineer would write it natively: the same structure and the same facts, in its own natural phrasing. The test is structural: when the English skeleton shows through (a chained gerund, a borrowed passive, a verb pattern no native writer would reach for), the sentence is rebuilt rather than patched.

Hedges do not calque

The tone rules ask for steelmanning and for softened absolutes, and those cross the language barrier as content: the strongest version of the opposing view is translated in full. The softening itself is not copied word for word: a Spanish or Catalan mirror of an English hedge reads stilted, so those languages state the same argument in their naturally more direct voice.

Borrowed words stay

Spanish and Catalan keep the technical English that developers actually use: runtime, bundle, host, remote, build, deploy. Some of these are anglicisms no dictionary would bless, and they stay anyway. Translating runtime as “tiempo de ejecución” is dictionary-correct and reads like a textbook; the goal is to read like a colleague. The rule cuts both ways: a correct native word is replaced when it collides with a term of art. Rendimiento is a fair rendering of a payoff, and unusable in a technical article, where it reads as performance first.

Tagalog is Taglish

The Tagalog posts are idiomatic Taglish: Filipino sentence flow with the technical vocabulary left in English, the way Filipino developers talk shop. A fully translated technical Tagalog would be harder to read, not easier. Two boundaries keep it honest. Where spoken Taglish would keep the English word, the English word stays; reaching for a literary Tagalog synonym raises the register beyond the post. And a technical term never borrows an everyday Tagalog word that already owns another meaning: data plumbing stays in English, because the nearest everyday word, tubero, names the tradesman rather than the metaphor, and a git fork stays a fork, because tinidor sets the table.

Quotation marks

Spanish and Catalan quote with guillemets: «así». Tagalog follows the English convention. Each language keeps its own typography instead of inheriting English marks through the translation.

The same bans travel

The writing rules cross the language barrier, and one gets stricter still: the em-dash, already scarce in English prose, disappears entirely in translation; Spanish, Catalan and Tagalog reach for a comma, a colon or parentheses instead. Each language also bans its own marketing filler, the local cousins of the English list: in Catalan, for instance, d’avantguarda, sense fissures, holístic and disruptiu are out.

Spotted something wrong on this page? Email me