Ir al contenido

Ahí vamos Entradas

Traducción de aplicacion con gettext (parte 2)

En la publicación anterior vimos una introducción a los conceptos de internacionalización (i18n) y localización (l10n) y en esta segunda parte explicaré los conceptos que utiliza la herramienta gettext para permitirnos realizar dicha tarea en nuestro software además cubriré temas como la instalación y configuración de dicha herramienta. Para este demo estaremos usando Linux y PHP pero en realidad gettext y las demás herramientas que usaremos como PoEdit pueden ser utilizadas en cualquier sistema operativo y con cualquiera de los lenguajes de programación mas populares.

Traducción de aplicaciones con gettext (parte 1)

Hace unos días escribía sobre la importancia de utilizar el inglés como la lengua de facto en proyectos de software. Para mi, tener convenciones es muy importante sin embargo, como lo comentaba en la publicación del enlace, hay casos donde queremos proveer un lenguaje diferente al inglés en nuestro software y, de hecho, si nuestro target o mercado de usuarios será diferente al de habla inglesa pues esto se vuelve un requerimiento. Aunque existen varias herramientas diferentes para internacionalizar nuestro software me enfocaré en gettext en una serie de 3 artículos, siendo este el primero, para mantenerlos cortos, sobre como manejar varios idiomas en nuestras aplicaciones y mantenerlas actualizadas.

¿Por qué usar inglés en proyectos de software?

Pocas cosas me incomodan más en mi trabajo que ver un proyecto en spanglish, es decir, con partes en inglés y otras en español. La naturaleza del origen de la mayoría de la tecnología moderna hace que el inglés sea la “lingua franca” entre ingenieros, particularmente entre los que desarrollamos software, sin embargo, en México en particular, parece existir un complejo de identidad que no nos permite decidirnos por uno o por otro, o peor aun, mezclarlos terminando con resultados que dan pena.

Tu imagen sí es importante

Nunca fui particularmente seguidor de tendencias. Con temor a escucharme pedante diría que siempre he sido diferente; a mi hermano le gustaban las tortugas ninjas y G.I Joe mientras yo prefería jugar con trascabos y bulldozers. Siempre tuve una tendencia a preferir las cosas técnicas y más sofisticadas que los demás. Como muchos, estos patrones probablemente definieron no solo mi profesión sino mi personalidad.

De relojes, alarmas y distracciones

Hace algunos meses compré un reloj despertador, un hermoso marathon que se asemeja mucho a aquellos aparatos de la época de finales de los 50s y principios de los 60s. A un “Braun Americano” diría mi primo José Carlos, que también comparte mi gusto por la horología y la parafernalia americana. Me había decidido por un modelo de color negro pero pensé que sería más legible uno con “cara”  blanca. Al final del día terminé escogiendo el modelo dorado que se ve en la foto porque Yari mi esposa, que es arquitecta, tiene la última palabra en cuestiones de decoración del hogar, es como un pacto que tenemos.  Pero esta publicación no es acerca del reloj sino de la razón por la cual lo compre: liberarme de una distracción; el teléfono.

Service objects en Ruby

Uno de los errores más comunes que cometemos los desarrolladores es creer que un patrón de diseño va a solucionar todos nuestros problemas. A lo largo de mi carrera he utilizado (bien y mal) varios lenguajes y frameworks lo cual me ha permitido digamos tomar las mejores ideas de cada uno y por otra parte, tratar de no arrastrar las malas prácticas.

Sincronizar repositorios en github y bitbucket

En un post anterior hablé sobre mi preferencia sobre bitbucket para llevar mis proyectos sin embargo no puedo negar que github como herramienta no solo técnica sino social es muy útil, sobre todo como parte de nuestra carta de presentación para los que nos dedicamos al desarrollo de software, es por ello que hace tiempo pensé como podría seguir utilizando bitbucket pero al mismo tiempo tener presencia en github y esto es lo que hice.

Razones por las que prefiero Bitbucket sobre GitHub

Mentiría si digo que fui un early adopter de git. Cuando comencé a utilizar un sistema de manejo de control de revisiones de código (Dios que largo nombre!) o SCM fue por allá en el 2007 y no fue precisamente la mejor experiencia; ya que todo el stack con el que trabajabamos en ese momento era Microsoft era solo natural que utilizaramos Visual Source Safe, una de las peores herramientas de manejo de control de versiones por cierto.

2017 en resúmen

Hace casi exactamente un año que no escribo y la verdad es que además de que han sido falta de tiempo sobre todo han sido falta de ganas. 2017 fue particularmente un año digamos complicado; trabajo en exceso, enfermedades propias y ajenas y en general poca energía para escribir. Aunque no todo fue malo por supuesto.

Escribir un blog o llevar un “diario” parecería una actividad inútil en tiempos de microblogging, twitter, medium y otros medios de comunicación donde usualmente las personas sintetizan contenido porque simplemente vivimos en tiempos donde consumimos tanto contenido digital que no nos podemos dar el lujo de leer un buen artículo y preferimos lo fácil, algo así como cocinar en casa VS comida chatarra. Ojo, que no infiero con ello que sea escritor o mi contenido sea de alta calidad editorial pero es que se que la brevedad no es lo mio, aunque sigo trabajando en ello.

Ser agradecido en tiempos de abundancia

Hoy mientras hacíamos fila para cruzar al otro lado, probablemente a comprar cosas triviales, recordé lo afortunado que soy al ver (como es usual en la frontera) la cantidad de gente no solamente pidiendo “limosna” sino “pasando el trapo” por los carros, vendiendo dulces u ofreciendo algún tipo de servicio para ganarse la comida del día, aquellos con suerte están mas o menos sanos, sino es por las marcas físicas de las drogas son también mas o menos afortunados, los menos, en sillas de ruedas sin piernas o hasta en patinetas como modo de transporte para discapacidad improvisado y moviéndose como pueden.