Blog

Notas de un builder

IA aplicada al desarrollo, arquitectura serverless en AWS y frontend moderno. Todo aprendido construyendo productos reales.

Destacado
IA 9 jul 2026 · 10 min

Cómo sobrevivir como programador en la era de la IA (sin volverse cínico ni ingenuo)

La IA no viene a por tu trabajo: viene a por tus tareas. Qué cambia de verdad, qué habilidades suben de precio y cuáles se están devaluando.

Leer artículo →
IA 9 jul 2026 · 8 min

Embeddings más baratos: recortar dimensiones y cuantizar sin perder recall

Cómo decido cuántas dimensiones guardar y en qué precisión, y por qué casi siempre acabo en un esquema de dos fases con vectores pequeños arriba y precisos abajo.

Leer artículo →
IA 9 jul 2026 · 13 min

Qué va a pasar con el desarrollo de software: predicciones con fechas (julio 2026)

Qué esperar en los próximos meses, en 2027 y hacia 2030: agentes, el futuro de las webs y las apps, y qué pasará con los programadores. Con datos, no vibes.

Leer artículo →
IA 9 jul 2026 · 10 min

Cómo sobrevivir como programador en la era de la IA (sin volverse cínico ni ingenuo)

La IA no viene a por tu trabajo: viene a por tus tareas. Qué cambia de verdad, qué habilidades suben de precio y cuáles se están devaluando.

Leer artículo →
IA 9 jul 2026 · 12 min

El stack para startups en julio de 2026: qué usaría hoy para construir un SaaS

Mapa honesto del ecosistema: agentes de código, modelos, frameworks, infra y la capa de IA. Qué elegiría hoy y por qué, con precios reales.

Leer artículo →
IA 9 jul 2026 · 11 min

Startups hechas con IA en 2026: los números reales detrás del hype

Cursor, Lovable, Cognition, Base44, Cal AI y los datos de YC: cuánto facturan de verdad, con cuánta gente, y qué patrones se repiten. Con gráficas.

Leer artículo →
Frontend 9 jul 2026 · 7 min

Formularios que funcionan sin JavaScript (y mejor con él)

El patrón de mejora progresiva que uso en formularios: la plataforma resuelve el caso base, el JavaScript solo añade capas, y ninguna de las dos rutas es de segunda.

Leer artículo →
AWS 9 jul 2026 · 8 min

El NAT Gateway que nadie pidió: la factura silenciosa de tu VPC

Por qué el componente más caro de muchas cuentas de AWS es una pieza de red que nadie recuerda haber diseñado, y cómo los VPC endpoints cambian esa ecuación.

Leer artículo →
AWS 8 jul 2026 · 8 min

Step Functions: cuándo un orquestador le gana a encadenar Lambdas

Por qué muevo la lógica de coordinación de procesos largos fuera del código y dentro de una máquina de estados, y los trade-offs que eso implica.

Leer artículo →
Frontend 8 jul 2026 · 7 min

Web Workers: sacar el trabajo pesado del hilo principal

Cuándo mover cómputo a un worker de verdad mejora la UI y cuándo solo añade complejidad, con el patrón que uso para no pelearme con postMessage.

Leer artículo →
IA 8 jul 2026 · 8 min

Fine-tuning, RAG o prompting: cómo decido cuál usar

Un árbol de decisión honesto para elegir entre afinar un modelo, montar RAG o quedarte en prompting, con los costes reales de cada rama.

Leer artículo →
IA 7 jul 2026 · 8 min

Tool calling en producción: el LLM no ejecuta, propone

El modelo mental que evita la mitad de los bugs de un agente con herramientas: el LLM sugiere llamadas, tu código decide si se ejecutan.

Leer artículo →
IA 7 jul 2026 · 8 min

Rerankers: la pieza que le faltaba a mi búsqueda semántica

Los embeddings recuperan candidatos razonables; el reranker decide cuáles merecen el top. Así los combino sin duplicar latencia.

Leer artículo →
AWS 7 jul 2026 · 7 min

Subidas de archivos con presigned URLs: que S3 haga el trabajo pesado

Por qué dejé de pasar archivos por mi backend y cómo diseñar el flujo de presigned URLs sin agujeros de seguridad.

Leer artículo →
AWS 7 jul 2026 · 8 min

EventBridge: desacoplar servicios sin montar un monstruo de colas

Cuándo un event bus le gana a llamar servicios directamente o a encadenar colas SQS, y los trade-offs que acepté al adoptarlo.

Leer artículo →
Frontend 7 jul 2026 · 7 min

Container queries: el día que dejé de mentirle a mis componentes

Por qué los media queries rompen la promesa de un componente reutilizable y cómo las container queries la cumplen de verdad.

Leer artículo →
Frontend 7 jul 2026 · 7 min

Un esquema Zod para gobernarlos a todos: validación compartida cliente/servidor

Duplicar validaciones entre el formulario y la API es una fuente de bugs silenciosos. Así comparto un único esquema entre ambos mundos.

Leer artículo →
IA 7 jul 2026 · 8 min

Caché semántico para LLMs: pagar una vez por respuestas que ya diste

Cómo usar embeddings para detectar preguntas repetidas y servir respuestas cacheadas sin llamar al modelo, con sus trampas incluidas.

Leer artículo →
Frontend 7 jul 2026 · 7 min

Server Actions en Next.js: dónde brillan y dónde me niego a usarlas

Las Server Actions eliminan boilerplate de API, pero no son un reemplazo universal de los endpoints. Mi criterio para decidir.

Leer artículo →
AWS 7 jul 2026 · 7 min

Observabilidad en serverless: logs estructurados o depurar a ciegas

En Lambda no hay servidor al que hacer SSH. Cómo estructuro logs, correlaciono requests y encuentro fallos sin volverme loco.

Leer artículo →
AWS 6 jul 2026 · 8 min

Módulos de OpenTofu que no odiarás dentro de seis meses

La mayoría de los módulos de infraestructura envejecen mal. Estos son los límites que me impuse para que no pase.

Leer artículo →
Frontend 6 jul 2026 · 7 min

View Transitions en Astro: navegación SPA sin el peso de una SPA

Cómo consigo transiciones suaves entre páginas y estado que sobrevive a la navegación sin renunciar al HTML que Astro sirve por defecto.

Leer artículo →
AWS 6 jul 2026 · 7 min

Colas con SQS: reintentos que no duplican trabajo

Cómo hago que los reintentos de SQS sean seguros en JXBS sin duplicar correos, cargos ni estados.

Leer artículo →
AWS 6 jul 2026 · 8 min

DynamoDB single-table: el patrón que más me costó entender

Por qué meter varias entidades en una sola tabla de DynamoDB deja de parecer una locura cuando piensas en accesos y no en entidades.

Leer artículo →
AWS 6 jul 2026 · 7 min

Lambda o Fargate: cómo decido cuál usar

Dejé de preguntarme cuál es mejor y empecé a preguntarme qué forma tiene la carga. La respuesta casi siempre sale de ahí.

Leer artículo →
IA 6 jul 2026 · 8 min

Evals para features con LLM: cómo sé que no rompí nada

Sin un set de evals, cada cambio de prompt o de modelo es una apuesta a ciegas. Así monté el mío.

Leer artículo →
IA 6 jul 2026 · 8 min

Structured outputs con LLMs: cómo dejé de parsear texto a mano

Por qué function calling y validación con Zod convirtieron mis LLMs en producto de un componente frágil en una pieza de infraestructura fiable.

Leer artículo →
Frontend 6 jul 2026 · 7 min

Islands en Astro: cuándo hidratar y cuándo no

La hidratación parcial de Astro no es magia: es una decisión por componente que tomas tú, y equivocarte cuesta JavaScript que nadie te pidió.

Leer artículo →
IA 6 jul 2026 · 8 min

RAG en producción: el chunking importa más que el modelo

Cómo partes tus documentos decide más sobre la calidad de tu RAG que el LLM que elijas encima.

Leer artículo →
Frontend 6 jul 2026 · 7 min

Modelar el dominio con tipos: cuando el compilador escribe tus tests

Un buen modelo de tipos hace que los estados imposibles no compilen. Así uso TypeScript para eso.

Leer artículo →
IA 12 jun 2026 · 8 min

Cursor + Claude en un equipo real: cómo integramos IA sin perder calidad

Qué automatizar, qué revisar siempre y cómo mantener el criterio del equipo cuando la IA escribe la mitad del código.

Leer artículo →
AWS 28 may 2026 · 10 min

Serverless sin dolor: Amplify, Lambda y DynamoDB para apps reales

La arquitectura del panel de Toyota Colombia: decisiones, trade-offs y lo que haría diferente hoy.

Leer artículo →
Frontend 15 may 2026 · 6 min

PWAs offline-first: apps que funcionan cuando la señal no

Service Workers, caché inteligente y sincronización diferida para eventos con conectividad intermitente.

Leer artículo →
IA 30 abr 2026 · 7 min

Embeddings + pgvector: matching semántico en PostgreSQL

Cómo construimos el motor de matching de JXBS sin añadir una base de datos vectorial dedicada.

Leer artículo →
AWS 18 abr 2026 · 9 min

De monolito a backends por audiencia: lecciones de una migración

Por qué dividimos un backend NestJS compartido y los errores de DI con pnpm que nadie te cuenta.

Leer artículo →
Frontend 2 abr 2026 · 5 min

El design system como producto: mantener una librería UI compartida

Versionado, tokens y disciplina de componentes cuando varios portales dependen de tu librería.

Leer artículo →