Tecnología


La función gettext() es la forma semi-oficial de manejar una localización y está muy bien integrado en los entornos del tipo Unix, lo cual es bueno y malo. Un grave problema es que depende del soporte de idioma que esté instalado en el servidor, lo cual puede hacer que una aplicación que funciona perfectamente en un servidor, no funcione en otro. Por otra parte, para su inicialización requiere una serie de llamadas a funciones que parecen un tanto caprichosas y que están pensadas más desde el punto de vista organizativo del servidor Unix que de la aplicación. Otros entornos, como Windows, esto puede representar un problema, por ejemplo, si se desarrolla en un ordenador Windows para usar en un servidor con Linux.

(más…)

Usar arrays es apenas un poco mejor que usar variables. Al menos no se ocupa mucho de la tabla de símbolos del intérprete y difícilmente se pueda crear un conflicto de nombres. Se puede incluir una instrucción global con el nombre del único array de traducciones en cada función que vaya a emitir una cadena localizada, en lugar de tener que mencionar cada posible variable de traducción individualmente. Es más lento que usar las variables directamente y su expansión dentro de cadenas encerradas en comillas dobles o cadenas ‘heredoc’ va a requerir encerrar la expresión entre llaves para evitar la ambigüedad de que el intérprete no pueda determinar dónde termina la expresión:

echo "debe usarse así: ${textos['aceptar']}, y no: $textos['aceptar']";

(más…)

Usar variables en el archivo de traducciones es quizás la peor de las opciones. Destinar un lugar dentro de la tabla de símbolos para cada posible cadena es un abuso. El uso de un prefijo reservado para traducciones, como se muestra en el ejemplo, al menos reduce la posibilidad de conflicto con otras variables que se usen en la aplicación, sin embargo, no impide que inadvertidamente se reutilice el mismo nombre para dos cadenas distintas y el intérprete PHP no dará aviso de error, como lo haría en el caso de querer redefinir una constante, quedándose con el último valor asignado. (más…)

Una forma simple de separar las traducciones del archivo ejecutable es definir archivos de traducción que contengan constantes con los textos a traducir. El ejemplo muestra la página generada y los archivos fuente que la componen. (más…)

Es difícil traducir un texto si no se entiende. Es difícil que se entienda si no está completo o si es críptico. Los textos deben estar preparados para que puedan ser traducidos. (más…)

Un problema que se ve con más frecuencia en las aplicaciones de web es la necesidad de internacionalización y localización. Dado que son palabras muy largas, es habitual que sean abreviadas como i18n y l10n refiriéndose, como si se tratara de un crucigrama, a las respectivas iniciales, la cantidad de letras intermedias y la letra final. Estas dos palabras no son sinónimos, la primera se refiere a la capacidad de una aplicación para que pueda ser traducida, la segunda a la traducción en si, que muchas veces implica algo más que simplemente traducirla, cosas como, por ejemplo, las representaciones y conversiones necesarias para las fechas o la moneda. Si una aplicación no está internacionalizada, es muy difícil localizarla. (más…)

Todos conocemos el impacto de la máquina de vapor y el ferrocarril en el desarrollo industrial del mundo moderno, pocos saben de la gran influencia que los canales navegables han tenido en el inicio de ese desarrollo, papel que han mantenido hasta fecha reciente. (más…)

Ya he comentado sobre ascensores espaciales y sobre globos aerostáticos separadamente, qué pasaría si los combinamos?

Un problema del ascensor espacial es que la parte más baja de su recorrido, cuando llega a la atmósfera, queda sometida a violentos fenómenos atmosféricos, o sea, tormentas. Por eso es deseable poder fijar el cable en una montaña, lo más alto posible. ¿Podríamos fijarlo en un globo flotando más alto aún que la más alta montaña?

(más…)

Hace unos 30 años leía en una revista sobre un estudio para construir globos aerostáticos de una milla (kilómetro y medio) de diámetro. Ya en esa época, el costo de enviar cosas al espacio parecía excesivo. Dado que el grueso de lo que enviamos allá arriba es para observar qué sucede aquí abajo, más de uno pensó que una forma de abaratarlo era evitar ir tan alto; ¿qué pasaría entonces en la alta atmósfera? (más…)

Arthur C. Clarke, en su libro Fuentes del Paraíso nos cuenta de un ingeniero (que no era Santiago Calatrava) que se especializaba en puentes. La gran limitación en los puentes es la resistencia de los materiales. Los primeros diseños del puente sobre el Golden Gate, en San Francisco, California, eran verdaderamente espantosos. El proyecto tardó años en ser aprobado por las entidades involucradas y en ese tiempo, la calidad del acero mejoró al punto que la masiva estructura original pudo reducirse a la elegante figura del actual puente. (más…)

« Página anteriorPágina siguiente »