Escritos e Ideas
Reflexiones sobre ingeniería backend, IA y desarrollo de software escalable.

Migraciones de Postgres Sin Tiempo de Inactividad: Una Guía Completa
La migración que tumba producción casi nunca es la que preocupaba a todo el mundo. Rara vez es un DROP TABLE: todos revisan esas con cuidado. Es la …

pgvector vs. Base de Datos Vectorial: Cómo Elegir Correctamente
Cada comparación de “pgvector vs Pinecone” en internet termina convirtiéndose, tarde o temprano, en una gráfica de benchmark de consultas …

Connection Pooling de Postgres en Python: Una Guía Completa
“Solo agrega PgBouncer delante” es la respuesta automática a casi cualquier problema de conexiones de Postgres, y acierta con suficiente frecuencia …

Consultas N+1 en Django ORM: Encuéntralas y Elimínalas
La mayor fortaleza del ORM de Django es también su mayor trampa: order.customer.name parece un acceso a atributo gratuito, pero detrás de ese punto …

Tipos de Índices en Postgres: Cuál Usar y Cuándo
Pregunta a la mayoría de los desarrolladores qué es un índice de Postgres y la respuesta será “un B-tree que hace rápidas las cláusulas WHERE”. Eso es …

Postgres EXPLAIN ANALYZE: Entender y Optimizar Consultas
La mayoría de los desarrolladores ejecutan EXPLAIN ANALYZE del mismo modo en que revisan un stack trace de un error que no entienden: lo pegan en la …

SSE vs. WebSockets en FastAPI: ¿Qué Elegir?
Todo equipo que crea una funcionalidad respaldada por un LLM llega al mismo punto de decisión: el modelo transmite tokens a medida que se generan, y …

FastAPI y Sesiones Async SQLAlchemy: Una Guía Completa
sqlalchemy.exc.MissingGreenlet: greenlet_spawn has not been called es el error que recibe casi todo equipo que migra una app de FastAPI de SQLAlchemy …

FastAPI BackgroundTasks vs. Celery: Cuándo Usar Cada Uno
BackgroundTasks parece resolver el mismo problema que Celery: ejecutar trabajo después de que se envía la respuesta, sin hacer que el usuario tenga …

FastAPI Dependency Injection: Una Guía Completa
Depends se presenta en todos los tutoriales de FastAPI como “la forma de obtener el usuario actual”, y la mayoría de los desarrolladores …

Estructura de Proyectos FastAPI: Organizando Apps Grandes
Todo proyecto de FastAPI empieza igual: un archivo main.py con un puñado de rutas, uno o dos modelos de Pydantic y una llamada a la base de datos en …

Event Loop Bloqueado en FastAPI: Diagnóstico y Solución
“Simplemente hazlo con async def” es el consejo que todo desarrollador de FastAPI escucha primero, y es la razón por la que tantos incidentes en …