Si has traducido software, lo sabes: es harto complicado.
Traducir bien un software es como dar en la diana con el dardo, al primer lanzamiento y a una veintena de metros, porque suele haber errores en la traducción. En este artículo veremos los orígenes de los errores en la traducción de software.
¿Por qué hay errores cuando se traduce el software? En este artículo veremos los orígenes de los errores en la traducción de software.
Errores con origen en el procedimiento
Muchos de los errores de traducción de software se entienden mejor si vemos cómo se traduce el software y vamos desgranando los errores.
Así pues, a la pregunta ¿cómo traduzco el software?, tienes dos posibles escenarios:
- Traduces una lista desordenada de menús, botones, mensajes de error y frases. Casi seguro que has traducido software en Excel, ¿verdad?
- Traduces con alguna herramienta de traducción asistida especializada en software, como Passolo, que te muestra los menús y los cuadros de diálogo en contexto, de modo que traducir es mucho más fácil.
También hay escenario híbridos, pero veremos estos dos casos extremos con más detenimiento.
1. Traducir una lista desordenada de cadenas
Traducir software de la primera forma, una columna de cadenas de texto, es un engorro, aunque ya va siendo demasiado habitual. Es un engorro para quienes lo hemos sufrido por muchas razones:
- La lista está desordenada, ¿verdad? Un cuadro de diálogo puede tener las cadenas de texto aleatoriamente repartidas por la columna de Excel.
- Los mensajes de error tienen un problema tremendo: ¡Están cortados en 2 o más trozos igualmente distribuidos por la columna de Excel!
- Los malditos gerundios en inglés; no sabes si de verdad corresponden a un gerundio en español (por una acción que se está realizando («Eliminando archivos…») o a un sustantivo, como («Eliminación de archivos»).
- No tienes contexto, no tienes ni la versión original para ayudarte a hacer hipótesis de si esta cadena va aquí o allí. Por supuesto, asegúrate de que tu cliente sabe que necesitas trabajar con contexto. Si te pones a traducir una lista de cadenas sin haber pedido la versión en inglés, mereces que te cuelguen por los pulgares. Si es una aplicación en la nube, te basta con que el cliente te dé un acceso temporal (al terminar la traducción te borran la cuenta). Si el cliente es reticente a darte acceso a su bendita web, entonces pueden servirte unas capturas de la pantalla, aunque es improbable que cubran todos los detalles que vas a necesitar traducir. Si es una aplicación de software con licencia de toda la vida, pídele el ejecutable. Cualquier ayuda es buena con tal de no traducir a ciegas.
- ¡No sabes si tu traducción saldrá cortada!
- Relacionado con el anterior punto: te da rabia el límite de caracteres que te da el cliente, porque sabes, lo intuyes, que ese límite es solo un valor aproximado y que con dos caracteres más tu traducción sería muchísimo mejor.
Un irónico aplauso para los programadores que cortan los mensajes de error y asignan una posición aleatoria a los trozos dentro de la lista de cadenas. Alguna vez fui testigo de trozos separados de una o dos palabras para formar un simple título de un cuadro de diálogo. En idiomas menos flexibles que el español, como el alemán, recuerdo que fue imposible dar una buena traducción por este motivo y en más de una ocasión. Creo que al traductor todavía le duele la cabeza de la angustia que pasó…
No sé tú, pero siempre me llamará la atención que para traducir una interfaz preciosa recurramos a las espantosas listas de Excel. Si hablamos de juegos, el contraste ya es abismal.
Vamos a decirlo clarito para todos: traducir en Excel no es la mejor manera de traducir software, por más sencillo que sean para el informático las operaciones de exportar a Excel y luego importar a Excel. Lo importante es la traducción, así que hay que facilitar en lo posible esa etapa. Que exportar los textos para traducir e importar la traducción sean operaciones directas y fáciles no significa que esta sea la mejor ruta posible. Es más: no es la mejor, como veremos en la siguiente sección…
2. Traducir con una herramienta de traducción de software
Si traduces software con una herramienta de traducción como los dioses mandan, entonces estás de enhorabuena. Ayuda muchísimo traducir los cuadros de diálogo o los menús si trabajas en modo WYSIWYG (una vista en la que ves el resultado final). Tienes contexto y hasta puedes cambiar el tamaño de los controles para que quepa el texto. Con suerte, hasta los controles se ajustarán al tamaño para que su texto no quede cortado.
Con toda la ayuda que proporcionan estas herramientas, en el mundo real lo habitual es lidiar con listados de cadenas de texto, cosa normal, porque todo software necesita sus mensajes de error. Para complicar más aún tu labor, no todos son mensajes de error, sino que también te encuentras con adjetivos sueltos, no sabrás a ciencia cierta ni el género ni el número. En general, cuanto más breve es la cadena de texto para traducir, más indeterminación en la traducción. Esa es la vida del traducir de software, no la he inventado yo…
¡Ah, y los queridos huecos «%s»! Se rellenan en tiempo de ejecución y, como traductor, tienes un buen trabajo tratando de descifrar cómo aparecerá esa cadena con el «%s»… No desesperarás si en la misma cadena hay varios de estos huecos.
¿Existe la misericordia en la traducción de software? Al menos, la hay a veces. Lo digo porque algún programador inteligente añadió una cadena en la que decía «Atención, localizadores de todo el mundo: en la anterior cadena, el hueco “%s” se refiera a […]», algo en lo que no habrías caído jamás. En fin, estas ayuditas ayudan mucho, así que un aplauso para estos programadores que conocen su trabajo.
Además, vuelves a la infancia a hacer puzles:
A veces sucede que los programadores colocan textos de una o dos palabras que, según el estado del programa, se insertan o no en los menús. Es decir, que no solo careces del contexto para traducir la microcadena que tienes delante, sino que no sabes dónde va a aparecer. A veces no te quedará más remedio que apuntar la cadena y esperar que aparezca en una compilación del programa.
Un ejemplo frustrante es el que vimos en el artículo Fallos en la traducción de software y ejemplo de Excel.

Ya vimos que no es Duplicar valores, sino Valores duplicados. Puedes leer el artículo en este enlace.
Por último, errare humanum est, nadie es totalmente infalible, ni si quiera el mejor traductor del mundo. Para cazar los inevitables errores están los testers. ¿Existe en el procedimiento una etapa para probar el programa y registrar los errores? Si no hay ese momento para comprobar el programa de software ni la oportunidad de corregir los errores, tenemos un gran problema: Es más fácil enhebrar una soga marinera por una aguja de coser que traducir un software medianamente grande y sin ningún error. Dedicaré el siguiente artículo al testing, así que no le dedicaré más tiempo por ahora.
Errores con origen en el mismísimo traductor
No todos los problemas se deben al proceso… Evidentemente, un mal día, un momento sin concentración del traductor, y la traducción quedará coja.
Lo mismo si se trata de un traductor con poca experiencia y formación.
Pero hoy me toca ser el más corporativista del mundo y, por el momento, correré un tupido velo y pasaré rápidamente al siguiente origen de los errores de software.
Eso sí: ¡volveré algún día!
⁂
Errores con origen en el programador
![]()
Pues sí: ¡vamos a echar las culpas a los demás!
¡Una estrategia que funciona muy bien en cualquier faceta de la vida!
Los programadores con experiencia en la internacionalización de software saben que tienen que dejar espacio suficiente para los idiomas, como el español, que de media resultan un 20 % más largos que el texto original en inglés. Pues bien, hay programadores que siguen dejando espacios ajustados en el idioma original; del texto traducido ni te cuento...
Otro problema con el programador, sobre todo si es anglosajón, es pensar que con el antiguo código ASCII se van a poder codificar todos los caracteres de los idiomas a los que se va a traducir el software. Cualquier idioma, excepto el inglés, tiene un montón de caracteres especiales que saldrán como cuadraditos blancos si el programador no ha hecho bien su trabajo. El programador experimentado utiliza funciones compatibles con Unicode, no con ASCII, porque lo último que quiere ver son cuadraditos blancos en la versión traducida.
Ya hablamos del afán de cortar cadenas sin motivo aparente, así que no lo repetiremos aquí.
¡Qué demonios, es mi blog! Prohibido cortar las cadenas de texto.
Hay veces que tienes que traducir frases que nadie diría en su sano juicio. Recuerdo que en la traducción del sistema operativo Windows, hace ya muchos años, me encontré con una breve cita filosófica muy personal y sin ningún sentido. El motivo subyacente es que el programador pensó que esa cadena de texto nunca saldría a la luz. Ese día, el programador aprendió que los traductores lo vemos todo y tuvo que cambiar ese texto. Ahora me pesa: Siento que negué al mundo la remota posibilidad de leer algo profundo y trascendental mientras copiaba archivos en Windows.
Estos son los errores externos más habituales a los que me he encontrado, pero no quiero dejar de lado otro problema externo creado por el programador. Se trata de creer que su visión del mundo es compartida en todo del mundo. Por ejemplo, las señales de tráfico son diferentes casi en cada país; hay algunas señales que un usuario en otro rincón del mundo no sabría identificar, así que lo ideal sería no utilizar imágenes que no estén claras o, al menos, permitir que se puedan cambiar por otras imágenes. Otro ejemplo sería un texto dinámico que apareciera por la derecha y se moviera hacia izquierda; perfecto en español o en inglés, pero no en árabe o hebreo. En fin, como traductor de software, deberás estar muy atento a estos problemas culturales.
⁂
Conclusiones
Hemos visto que los orígenes de los errores en la traducción de software son:
- Debidos al proceso:
- disponer del software ayuda a traducir con contexto;
- traducir listas de cadenas sin contexto no ayuda;
- traducir con un modelo WYSIWYG ayuda mucho a trabajar sin errores;
- Internos del traductor. Nadie es infalible ni omnisciente.
- Externos al traductor: software no preparado para la internacionalización. Malas prácticas con las cadenas de texto, como:
- cortar las cadenas de texto para unirlas después en tiempo de ejecución;
- desordenar las cadenas.
- programar sin tener en cuenta la futura internacionalización del software es fuente segura de problemas;
Querido traductor: Espero que veas todo lo dicho como un motivo para subir tu tarifa de traducción de software respecto a la de documentación normal, ya que es una tarea mucho más compleja y lenta que la traducción de texto corrido.
Por todo lo dicho, lo habitual es que en el proceso de traducción de software haya unas etapas adicionales a continuación de la primera traducción. Es un proceso iterativo de aproximaciones sucesivas a la calidad que el cliente quiere conseguir. Es un tema que veremos en un próximo artículo.
Un par de recomendaciones si no te quieres perder los artículos de esta serie que faltan, suscríbete al boletín del blog, o sígueme en LinkedIn o Twitter (@jssprt). De esta manera, serás el primero en enterarte de la publicación de los artículos.
Por último, si tienes alguna experiencia o gajes del oficio traduciendo un programa de software y suponiendo que ya ha pasado el suficiente tiempo y que todo el mundo implicado sigue siendo anónimo, te animo a que nos lo cuentes a todos en la sección de comentarios.