Crear documentación de un proyecto Python con Sphinx.

Sin duda, una etapa importante en cualquier proyecto de desarrollo (y no solo de software) es la generación de la documentación. En el caso de software es posible asistirse de herramientas que ayudan a automatizar la generación de la documentación mediante extracción de comentarios en el código, usar palabras claves y lenguaje de marcado para modificación de estilo en el texto o inclusión de otros elementos que no sean solo texto plano (imágenes, ecuaciones, enlaces entre otros).

Leer más…

Crear contenedor Docker aplicación GUI - EALite

Dando continuidad al uso de contenedores que inicie en la publicación anterior, Crear contenedor LXC para aplicación GUI - EALite, reproduciré la instalación de Enterprise Architect Viewer (EALite) con Docker (y por supuesto, Wine). Si deseas reproducir el ejemplo de este caso, requieres reproducir la el artículo mencionado para extraer el directorio de Wine.

A diferencia de LXC, Docker está más orientado al aislamiento de aplicaciones y no de sistema operativo (LXC cumple una función más cercana a una máquina virtual) lo cual ayuda a un mejor despliegue de aplicaciones y la estandarización de las etapas de desarrollo y de pruebas.

Común a LXC tenemos imágenes base que podemos usar, disponibles en DockerHub. A partir de estas podemos completar nuestras necesidades especificando en el archivo Dockerfile.

Leer más…

Crear contenedor LXC para aplicación GUI - EALite

El uso de contenedores en la industria del software se ha extendido ampliamente y no es de extrañar, ofrece a los desarrolladores la posibilidad de mejorar el aislamiento de sus servicios y de ahí hacerlo menos susceptible a errores por colisiones con otros servicios o conflictos de dependencias. Al mismo tiempo, son una alternativa más amigable en recursos respecto a las máquinas virtuales.

Múltiples proveedores de infraestructura para nube ofrecen la opción de desplegar los servicios a partir de un contenedor, y sin duda, facilita la distribución de entornos de desarrollo y aplicaciones.

Leer más…

¿Nos atraemos gravitacionalmente?

La interacción gravitacional o mal llamada fuerza gravitacional (hablamos de dos cosas diferentes), suele verse en nuestro imaginario como una interacción dominante, finalmente, controla el movimiento de los grandes astros y nos ata a la Tierra. Pero, esta interacción no es exclusiva de los astros, existe entre todos los cuerpos con masa, y si es así, ¿por qué no somos atraídos gravitacionalmente por otras personas?

Leer más…

Instalando paquetes en Linux (Mint)

En Linux ahora tenemos muchas más opciones para instalar nuestros programas favoritos y de uso diario, según los intereses personales en reducir espacio en disco, aumentar estabilidad, mejorar seguridad, disponer siempre de la última versión, tener muy buena integración con el sistema operativo o no requerir permisos de administrador. Algunas de las estrategias, incluso facilitan que el mismo mecanismo podemos usarlo en más de una distribución Linux y así disponer de una transición más simple.

Leer más…

Recuperar el arranque de tu Moto G5 en Linux

Recientemente, aunque cambié a un Moto G7, pensaba restaurar el celular de fábrica pero salió mal el proceso (no siempre es fácil si pretendes eliminar el acceso a administrador -root- y el recovery personalizado -TWRP-).

A raíz de esto, no funcionaba play service y por ende no era posible llegar a la pantalla de ingreso de usuario ni omitirlo. Esto es un tipo de fallo denominado soft brick, en el cual el celular es inservible a nivel de sistema operativo (se distingue de un hard brick, en el cual el daño es físico).

Leer más…

Audiolibros con Overdrive y Biblioteca EPM

Vuelvo después de un largo tiempo al blog, con el fin de compartirles una excelente recomendación para aprovechar sus tiempos de espera en transporte o en las eternas filas. Se trata de aprovechar el tiempo escuchando audiolibros.

Para esto, se requiere de dos elementos, uno es tener una aplicación instalada en nuestro móvil y adicional tener acceso a los recursos de la Biblioteca de la Fundación EPM.

Leer más…

Cumple 28: perfecto, triangular y hexagonal

Bueno, después de algún tiempo vuelvo con entradas que por fin se relacionan con algo que no sea tecnología. La motivación de esta publicación es el particular mensaje de cumpleaños que me dejo mi hermano, y que dice así:

¡Felices 28 años! El 28 es un número perfecto, literalmente. Por serlo es también hexagonal y triangular. Es verdad que es el segundo número perfecto, pero también es el último que vas a cumplir. El siguiente está cerca de 500 ¿sabrías encontrarlo?

Leer más…

La experiencia de PyCon Colombia 2018

Tras mi primera participación en PyCon Colombia (segunda versión del evento), me encuentro con una comunidad bastante amplia y que hace honor a una de las características más importantes del lenguaje, y es lo extensa y variada que es su comunidad. Colombia no es la excepción a esto.

Como cualquier evento, presenta elemento para mejorar pero se encuentra un equipo de organizadores dispuestos a escuchar a la comunidad para mejorar y aprender de las dos versiones realizadas para llegar a una tercera versión aún mejor. Puedes enviar tu retroalimentación a feedback@pycon.co.

Llamó en particular mi atención el aspecto humano del evento. Creo que las conferencias de los invitados (keynotes) nos recordaron que en todo momento llevamos una responsabilidad sobre como se pueden afectar otros por nuestro trabajo y no desde una perspectiva de ser nuestros clientes, sino en las consecuencias éticas de algunas decisiones durante nuestros desarrollos como la selección de datos en procesos de aprendizaje automático (que pueden estar sesgados) o la exclusión en nuestros equipos de trabajo.

Leer más…