Artículos sobre programación

Tutoriales prácticos de Python, Rust, Docker y herramientas de desarrollo. Guías paso a paso para configurar entornos, gestionar paquetes y dominar las herramientas que usan los desarrolladores profesionales.

  • 2026-04-18 - Ecosistema Rust en Python

    Durante años, el ecosistema de Python ha lidiado con el “problema de los dos lenguajes”: escribimos código en Python por su ergonomía, pero cuando el rendimiento es crítico, bajamos a C o C++. Esta transición siempre ha sido dolorosa, introduciendo riesgos de seguridad de memoria y una complejidad de mantenimiento considerable. Sin embargo, estamos presenciando un cambio de paradigma. Rust se ha convertido en el nuevo estándar para construir la infraestructura de Python.

  • 2026-03-07 - Marco de preparación para agentes de código

    Los agentes de código están aquí, y no van a irse. Pero después de meses usándolos —Antigravity, AmpCode, Opencode, el agente de Zed— he llegado a una conclusión incómoda: el problema no suele ser el agente, sino el proyecto. Un repositorio mal preparado derrota a cualquier agente, sin importar qué tan avanzado sea el modelo que tenga detrás.

  • 2026-02-24 - Buenas prácticas en Google Colab para compartir con equipos no técnicos

    En equipos de trabajo donde conviven perfiles técnicos y no técnicos, es frecuente que el equipo técnico desarrolle notebooks en Google Colab para procesos periódicos: reportes mensuales, análisis de datos, tareas recurrentes. El problema surge cuando estos procesos requieren ejecución periódica con pequeñas variaciones —un mes diferente, otro departamento, un nuevo archivo de entrada— y la responsabilidad de ejecutarlos recae siempre sobre el equipo técnico.

    image.png
  • 2026-02-21 - Error de autenticación en Antigravity y AmpCode en Windows

    Si has instalado Antigravity o AmpCode en Windows 11 y te ha resultado imposible iniciar sesión, no eres el único. Este problema de autenticación es más común de lo que parece y las soluciones habituales no siempre funcionan. Te cuento cómo lo solucioné.

  • 2026-01-18 - Herramientas de IA gratuita para desarrolladores en 2026

    Estamos en 2026 y la inteligencia artificial ya no es una novedad, es el estándar. Sin embargo, el cuello de botella sigue siendo el mismo para muchos desarrolladores independientes y estudiantes: el costo de las suscripciones. Mantener acceso a los modelos de frontera puede representar fácilmente cientos de dólares al mes.

  • 2025-05-04 - Conector MySQL para Python en Manjaro

    Ahora que uso Manjaro en lugar de Ubuntu, uno de los problemas que encontré para adecuar el entorno de desarrollo que uso en mi trabajo, es que el conector de MySQL para Python MySQLDb depende de libmysqlclient-dev, que no está disponible en Manjaro. Te cuento cómo solucioné el problema.

  • 2025-04-29 - Ecosistema Rust para la terminal Linux

    Se corrigió la instalación de utilidades con pamac, se añadieron detalles para la configuración de Alacritty y Zellij (modo “unlock first”), y se indicó cómo configurar Helix como editor predeterminado en la consola.

  • 2025-04-23 - Instalar Docker en Manjaro

    En el pasado publiqué un artículo de como instalar y usar Docker en Ubuntu con Snap y ahora que uso Manjaro vale la pena revisar los pasos para instalar Docker en Manjaro.

  • 2025-03-31 - Aprendiendo Rust: Parte 1 - Uso básico de cargo, variables y flujos de control

    Hace casi dos años me propuse aprender Rust, pero no tuve tiempo o realmente tenía poca disciplina para seguir adelante. Ahora, estoy en firme con el propósito para este 2025 y aquí estoy tomando notas, haciendo algunos ejercicios e iniciando un proyecto. Respecto a estas notas, deben considerarse como notas personales, y bueno cubro detalles de lo básico para iniciar con un proyecto con cargo, imprimir en consola, asignar variables, tener claros los tipos de variables y hacer flujos de control (todavía sin manejo de errores).

  • 2025-03-27 - Zed: un editor rápido y moderno de código abierto

    Se agrega ejecución de script oficial de instalación.

  • 2025-01-26 - Módulo pkg_resources no encontrado en ambientes UV

    A partir del 8 de febrero de 2026, setuptools v82 eliminó el módulo pkg_resources. Si experimentas este error después de esa fecha, la causa probable es la actualización de setuptools. La solución es fijar la versión a la anterior, por ejemplo, setuptools<82.

  • 2025-01-06 - Configuración de proyectos y herramientas Python con UV

    Crearemos un proyecto Python con uv, el cual usa el formato pyproject.toml para su configuración, facilitando la portabilidad del mismo. Adicional, este formato ya es un formato común con otros gestores de paquetes de Python, y usado para la configuración de utilidades.

  • 2024-12-10 - Conecta con una instancia de Cloud SQL en Manjaro

    Se han actualizado las dependencias del Google Cloud SDK (ahora dividido en tres paquetes), se ajustaron comandos para no requerir confirmación interactiva ni uso de sudo, y se actualizaron las recomendaciones de clientes SQL.

  • 2024-10-20 - Unir video y audio con ffmpeg y bash

    Recién mi novia me pidió el favor de ayudarle a descargar los videos de un curso antes de que se venciera el acceso a la cuenta, y tocaba descargar los videos de Vimeo. Pero el truco de descarga de estos videos, hace que luego toque unir el audio y el video, así que les contaré como hacerlo con FFMPEG y Bash.

  • 2024-06-30 - UV, alternativa rápida a PIP y VENV

    UV es un gestor de paquetes y entornos virtuales alternativo para Python, desarrollado en Rust y que nos promete ser muy rápido en los procesos que pretende reemplazar de PIP y VENV. En este sentido, solo es añadir uv antes de las instrucciones habituales y debe funcionar (salvo algunos casos particulares de compatibilidad o de no existir implementación).

  • 2024-06-15 - Instalar Rust en Linux

    En mi proceso por aprender Rust, iré compartiendo algunos pasos con ustedes. En esta ocasión, como instalar Rust en Linux, y prepararnos para usarlo en VSCode y en Notebook.

    Diagnóstico de rust analyzer sugiriendo el uso de let para asignar una variable
  • 2020-06-29 - Instalar Anaconda Python

    En los últimos años, una herramienta se ha popularizado no solo como una base para el ecosistena de la analítica de datos («ciencia de datos» como llaman también algunos) sino también en general para el desarrollo en Python (científico, web o de propósito general). Esta herramienta es Anaconda, que no solo nos facilita un sistema de distribución de paquetes multiplataforma, un repositorio principal con amplio soporte multiplataforma (canal default o anaconda) sino un gestor de ambientes para permitir aislar nuestras dependencias facilitando la reproducibilidad y evitando los conflictos.

  • 2020-06-13 - Determinar intersecciones en el diagrama de Venn con R

    Esta entrada es mi primera entrada asociada al lenguaje R y sobre mi primer paquete en R: venn.compute. Este paquete surge por un caso de uso particular que estaba ayudando a automatizar de determinar los elementos (no solo el dibujo ni la cantidad) de las intersecciones y específicos de un diagrama de Venn, útil en bioinformática para comparación de genes.

    Diagrama de Venn generado para los 3 conjuntos.
  • 2020-05-10 - Calcular distancia geodésica con Python

    Aunque una de las cosas que más ha rondado en mi desarrollo académico y laboral es la programación, y buena parte de los años en ello con Python, nunca había realizado una entrada al respecto en el blog (lo más cercano ha sido una entrada sobre Crear documentación de un proyecto Python con Sphinx y Crear contenedor Docker aplicación GUI - EALite).

  • 2020-01-06 - 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).

  • 2019-12-31 - Usar Anaconda Python en Git Bash

    Recientemente, por motivos laborales he tenido que trabajar en Windows y es por esto que tuve la necesidad de buscar una opción cómoda de usar Git en Windows, con soporte de Bash a lo que estoy acostumbrado en Linux y con Python Anaconda reconocido. De alguna manera, la versión mínima de como usar Windows sin morir en el intento.