Julián Mejio
XX
Desarrollador full stack
/>
Python 3.9

Estamos ad portas de la nueva versión de Python, y desde ya tres características se han hecho notar: operadores de fusión y actualización de diccionarios, incorporación del tipado fuerte de colecciones genéricas, y el uso de un nuevo analizador sintáctico. Además hay cambios en múltiples módulos y como suele ocurrir con cada versión, mejoras en el rendimiento.

Continue reading
Fotografía de un estoraque, tomada en el Desierto de la Tatacoa

Una columna desgastada en medio del desierto. En la cima tenía un árbol ya marchito que luchaba por aferrarse agarrándose a la poca tierra que podía tomar entre sus secas raíces, mientras que algunos cactus y otros arbustos descansaban en la seguridad de las alturas. 15 metros más abajo me encontraba yo. Me había separado del grupo principal porque quería toma algunas fotografías; quería separarme del afán colectivo, de las rutas que todo el mundo hace. Ir saltando de un punto a otro, volver luego al mismo punto y descubrir cosas nuevas por segunda vez.

Continue reading

WordPress es una plataforma muy potente para la creación de sitios y aplicaciones web de todo tipo. Grandes marcas como BBC, MTV, Sony, Disney e incluso Facebook la usan para publicitar sus productos y servicios. La ventaja de WordPress es que con muy poco esfuerzo puedes montar un sitio web completamente funcional, y con los plugins disponibles a un par de clics la personalización y características con las que puedes interactuar es virtualmente infinita.

Continue reading

En los últimos días compré una tableta gráfica Huion HS64 ya que la cultura a distancia –teletrabajo, tele-enseñanza, telepresencia, etc.– ha exigido soluciones creativas, por lo que un ratón y un teclado ya no bastan. Es económica, buena y puede incluso conectarse a un teléfono Android. Lo único malo de todo este es que el fabricante no tiene controladores oficiales para Linux.

Continue reading

Las miniaturas de Chrome han sido una característica bastante llamativa, pero las opciones para controlarlas están ocultas. Incluso luego de explorar todas las configuraciones de Chrome, es posible que no encuentres nada que las habilite, o deshabilite. La razón principal es que estas opciones se encuentran en un lugar especial y poco conocido dentro del navegador.

Continue reading

El día de ayer publiqué la nueva versión de mi sitio web, pero antes de publicarlo tuve problemas con el CDN –Content Delivery Network, o Red de distribución de contenidos en español– de Cloudflare: los subrecursos CSS y javascript de la página estaban disponibles, pero por alguna razón el navegador no los cargaba.

Continue reading

Aun recuerdo la primera vez que borré de manera accidental el trabajo que debía entregar ese mismo día. Sucedió aproximadamente 15 años atrás. Yo trabajaba en Flash, hacía contenido interactivo para el sector de la educación y para ese entonces me habían solicitado hacer un menú que iría como parte de un SCORM. El menú era sencillo: los datos del índice se cargaban desde un archivo XML local y enlazaban al contenido que iría dentro del paquete. Había terminado el prototipo y lo había exportado. Alcancé a mostrárselo a mis jefes y cuando todo estuvo bien procedí a limpiar el espacio de trabajo. Yo me acostumbré a borrar de manera permanente los archivos. Estaba borrando los archivos intermedios y temporales, además de los archivos con versiones alternativas del menú. Luego, en un segundo, me di cuenta que había seleccionado el que era el archivo final y sin embargo presioné Ctrl + Shift + Supr, luego Enter, y ahí acabó todo. Media jornada de trabajo había desaparecido y debía recuperarla ahora en tiempo récord. Nada funcionó, solo volverlo a hacer desde cero. Para mi fortuna era un trabajo que ya había aprendido a hacer, y pude entregarlo luego sin tanta demora.

Continue reading

Quería escribir la siguiente parte de la serie de DevOps, pero me di cuenta de que no puedo hacerlo, al menos hasta el 12 de marzo. Me encuentro en Colombia y no cuento con una conexión a internet rápida para realizar las instalaciones ni descargar las imágenes de Docker, entre otras cosas. Seguimos con la serie después del 12 de marzo. Au revoir!

Ya hemos visto modelos de desarrollo tradicionales como el desarrollo en cascada y el desarrollo en espiral. Ahora veremos en qué consiste el modelo de desarrollo ágil.

Antes de continuar debo aclarar que este paradigma comprende numerosas metodologías y técnicas. Para no desviarme del objetivo de esta serie –presentar DevOps como técnicas de fácil integración en los flujos de trabajo– solamente voy a hablar de un par de puntos muy específicos y vagos sobre este paradigma.

Continue reading

En la introducción hablé sobre los aspectos generales del desarrollo en cascada y cómo podría integrarse DevOps en su ciclo de desarrollo de software. Sin embargo hay un punto importante a tener en consideración:

El desarrollo en cascada tiene tres etapas de diseño: levantamiento de requisitos, análisis y diseño. DevOps no puede integrarse a estas etapas y por lo tanto solo la mitad del modelo es aplicable. No es óptimo, los ciclos de desarrollo siguen siendo largos y los artefactos numerosos. Dado que la premisa principal de DevOps es acortar los ciclos de desarrollo por medio de la automatización y el monitoreo, resulta difícil llamar DevOps cuando se implementa este modelo. Por definición hay tres capas incompatibles, y solo las otras tres son monitoreables y automatizables.

Continue reading