¿Cómo gestionar la tarea de revisar cadenas localizadas por un no desarrollador?

9

En .NET Framework, las cadenas localizadas se encuentran en un archivo XML (o varios archivos). Esos archivos son parte del proyecto y están comprometidos con el control de origen como cualquier otro archivo de código fuente. Por lo general, Visual Studio se usa para mostrar esos archivos como una tabla y editar las cadenas localizadas.

Trabajo en un pequeño equipo en un producto que debe tener una interfaz multilingüe.

  1. Como desarrollador, redacto las cadenas localizadas en ambos idiomas, dado que la traducción puede ser inexacta,

  2. Otra persona del equipo (no desarrollador) revisa el contenido en ambos idiomas y lo corrige si es necesario.

El problema actual es que la persona que no es desarrollador no usaría ni el control de fuente ni un IDE, ya que sería demasiado engorroso y difícil (el control de versiones es difícil para los no desarrolladores) para esta persona.

Una solución alternativa sería para mí exportar las cadenas localizadas como un archivo de Excel, esperar a que esta persona revise el Excel y luego volver a importar las cadenas modificadas. La advertencia aquí es que puedo estar creando otras cadenas, renombrando las existentes, etc., lo que dificulta la diferenciación de la versión local con la revisada.

¿Qué hacer?

¿Cómo sucede en otros equipos?

Arseni Mourzenko
fuente
17
No creo que el control de versiones sea difícil para los no desarrolladores. He tenido diseñadores gráficos, analistas de negocios, ingenieros no informáticos, escritores técnicos y gerentes que usan el control de versiones antes. ¿Has tratado de enseñarle a tu no desarrollador cómo usar el control de versiones?
Thomas Owens
¿Por qué no exportarlos / importarlos como un simple archivo de texto para que el revisor pueda trabajar en cualquier editor aleatorio? ¿Son los datos más complejos que simples pares clave / valor?
Kevin Cline
1
@kevincline Corre el riesgo de que cualquier editor de texto aleatorio no pueda leer caracteres UTF-8. La importación resultante de cambios podría ser un desastre.
Adrian J. Moreno
1
@iKnowKungFoo - Solución simple: elija un editor de texto que PUEDE leer caracteres UTF-8. También hay muchos buenos editores XML y muchas buenas herramientas que pueden comparar documentos XML como Beyond Compare.
Ramhound
Lo siento, mi pregunta era ambigua (la edité ahora), pero los archivos con cadenas localizadas se editan con Visual Studio, que los muestra como una tabla. Dado el esquema de esos archivos, no se puede modificar el XML a mano.
Arseni Mourzenko

Respuestas:

6

La localización es mucho más compleja que simplemente editar XML en Visual Studio, específicamente:

  1. Aunque lo que KateGregory dice es correcto, Visual Studio es costoso y la compra de copias para localizadores a menudo es prohibitiva.
  2. A menos que el localizador sea también un desarrollador, no puede ver las cadenas en el producto y probar que las cadenas se muestran correctamente (caracteres no europeos como los idiomas asiáticos o texto de derecha a izquierda como el árabe), se ajustan / ajustan correctamente (el alemán es largo palabras) y no causan ataques de inyección (como el uso de apóstrofes por parte de los franceses)
  3. Aunque el control de versiones no es una herramienta compleja, es un riesgo dar acceso al control de origen a localizadores remotos o contratados. Podrían copiar el código fuente sin el conocimiento del equipo o cometer cambios importantes (ya sea intencionalmente o no).
  4. También supone que lo único que está localizando son los archivos RESX. Algunos productos pueden tener datos localizados como nombres de informes.

Por lo tanto, lo mejor que puede hacer es crear un sitio web simple que exponga las diversas cadenas, ocultando la sintaxis subyacente. El proceso de compilación incluye cadenas proporcionadas por los localizadores después de una comprobación rápida de sanidad y la compilación compartida con los localizadores para la prueba. El sitio web puede usar inicios de sesión para diferentes localizadores (y rastrear y facturar el trabajo si desea llegar tan lejos). Esto es más trabajo pero una mejor solución a largo plazo.

akton
fuente
@KateGregory Disculpas si eso sonaba confrontativo. No fue intencionado. Publicación editada.
akton
8

La edición de XML apesta. Visual Studio tiene una vista que puede usar para editar recursos:

recursos de edición

Creo que el check-out-on-edit combinado con un minuto de demostración de la ventana de "cambios pendientes" debería permitir a su no desarrollador usar tanto control de fuente como sea necesario.

Kate Gregory
fuente
1

Me gustaría buscar un editor XML * para que lo use el que no sea desarrollador.

Luego, deberá proporcionar extractos versionados al no desarrollador para su revisión.

Una vez que hayan terminado con la revisión, puede volver a ingresar el archivo.

Cuando haya realizado cambios, simplemente necesitará diferenciar los archivos XML antes del check-in y enviar las secciones actualizadas por usted a los no desarrolladores para su revisión. Sus actualizaciones son la razón por la que necesita mantener versionados los archivos de revisión.

Intentar usar Excel hará las cosas extremadamente difíciles ya que las herramientas diff para Excel dejan mucho que desear. También corre el riesgo de comentarios adicionales que se arrastran en las celdas adicionales dentro de la hoja de cálculo. Esos comentarios requerirían un manejo adicional de su parte para fusionarlos nuevamente.

En una vida anterior, utilizamos un proceso bastante similar para varias traducciones de organizaciones externas. Nuestros archivos eran esencialmente archivos de texto con una forma similar pero diferente a XML. Y tuvimos toneladas de cambios mientras los archivos estaban en revisión, así que agradezco la diversión de su situación.


* He usado el bloc de notas xml y es tolerable, sospecho que hay mejores por ahí


fuente
1

Una opción es crear una aplicación auxiliar donde el traductor pueda ver la lista de cadenas en un panel e ingresar el idioma específico en otro. De esta forma, los datos se almacenan de nuevo en el XML y luego puede hacer que esa aplicación exporte el archivo.

Si procesa las claves en una base de datos y almacena cada idioma allí, permitiría integrar los cambios y que el traductor vea qué necesidades se actualizan. Luego, puede exportar al archivo XML específico del idioma que vuelve a poner en el control de versiones o el traductor podría.

Utilizamos un método similar a este con nuestro código Rails, nunca editamos o incluso proporcionamos los archivos específicos del idioma, todos son mantenidos y luego exportados por la aplicación externa que utiliza nuestro equipo de traducción. Lo siento, no sé si su software es personalizado o listo para usar, pero no debería ser tan difícil armar algo simple.

Bill Leeper
fuente
-1

¿Cómo sabes que tienes todas las cadenas y que están formateadas correctamente en la aplicación? ¿Cómo sabe que los números, la moneda, la zona horaria y otra información regional están formateados correctamente? ¿Que todo está cargado y que la serialización multibyte funciona correctamente?

No. La localización es una característica como cualquier otra. Compruébalo. Haz una compilación. Deje que el probador obtenga la compilación y verifique que la función se realice correctamente como cualquier otra. Cuando realiza una nueva compilación, puede realizar pruebas de regresión en la localización, como cualquier otra característica.

Telastyn
fuente
-1 ¿Entonces quieres que el chico del lenguaje sea un probador de usabilidad? Mejor espero que no se pierda un camino y luego se pierda una mala traducción en alguna parte por eso.
SoylentGray
@chad - ¿Quieres contratar a un chico dedicado solo para verificar la traducción de cadenas? Los probadores de idiomas nativos nunca se ejecutarán en X locale. Hay muchos más problemas locales que la simple traducción.
Telastyn
Sí, no se trata de una localización completa, sino de asegurarse de que el idioma sea el correcto.
SoylentGray