Artículos

Lo que escribimos para quienes desarrollan

Cursos de IA

Inteligencia artificial

Notas para quienes desarrollan con inteligencia artificial: cómo funcionan los modelos, cómo usarlos en un producto y cómo evaluar lo que hacen.

Sesgos, errores y responsabilidad: criterios para el trabajo profesional con IA

Qué errores son esperables en un sistema con IA, quién responde por ellos y qué prácticas ayudan a trabajar con responsabilidad frente al cliente.

De prototipo a producción: qué cambia cuando lo usa gente real

Lo que suele faltar entre una demo que impresiona y un sistema con IA que se puede ofrecer a clientes: errores, límites, trazabilidad y soporte.

Fine-tuning: cuándo conviene y cuándo no

Qué cambia al ajustar un modelo con tus propios datos, qué necesitás para hacerlo bien y qué alternativas probar primero.

Privacidad: qué datos mandar a un modelo externo y cuáles no

Criterios para decidir qué información puede salir de tu sistema hacia un proveedor de modelos y cómo reducir la exposición.

Cuánto cuesta un producto con IA: tokens, latencia y caché

De qué depende el costo de usar un modelo, cómo estimarlo antes de lanzar y qué decisiones lo bajan sin degradar el resultado.

Cómo saber si tu sistema con IA anda bien: evaluación práctica

Armar un conjunto de casos de prueba, definir qué es una buena respuesta y detectar regresiones cuando cambia el modelo o el prompt.

Documentación y revisión de código con IA

Usos prácticos de un modelo para documentar y revisar código, y los límites que conviene tener claros antes de confiar en el resultado.

Tests con ayuda de IA: qué delegar y qué revisar siempre

Cómo aprovechar un modelo para escribir pruebas y casos borde sin terminar con tests que solo confirman lo que el código ya hace.

Asistentes de código: cómo usarlos sin perder el criterio

Qué tareas conviene delegar a un asistente, cuáles revisar con más cuidado y cómo evitar que el código generado te complique el proyecto.

Bases vectoriales: cuándo hacen falta y cuándo alcanza con algo más simple

Qué son los embeddings, para qué sirve una base vectorial y por qué muchas veces una búsqueda de texto tradicional resuelve el problema.

RAG: dejar que un modelo consulte tus documentos

Qué es la generación aumentada por recuperación, cómo se arma el flujo y dónde suele fallar en la práctica.

Usar la API de un modelo en tu producto: primeros pasos

Qué hay que resolver al llamar a la API de un modelo desde una aplicación: claves, errores, tiempos de espera y salidas estructuradas.

Prompting que funciona: pedir bien, medir y repetir

Cómo escribir instrucciones claras para un modelo, probarlas con ejemplos reales y mantenerlas como se mantiene el código.

Cómo funciona un modelo de lenguaje, sin matemática

Tokens, contexto y predicción del próximo fragmento: lo mínimo que conviene entender para usar un modelo sin sorpresas.

Qué es (y qué no es) la inteligencia artificial para quien programa

Una explicación sin humo de qué puede hacer hoy la IA en el trabajo de un desarrollador y dónde sigue necesitando a una persona.

Pentest

Seguridad de aplicaciones

Notas sobre las fallas de seguridad más comunes en aplicaciones, cómo se previenen y cómo se detectan, escritas para quienes desarrollan.

Después del pentest: corregir, verificar y sostener

El informe es el comienzo: cómo organizar las correcciones, verificar que funcionaron y evitar que los mismos problemas vuelvan.

Seguridad en la nube: configuraciones por defecto que conviene revisar

Almacenamiento público, permisos excesivos y servicios expuestos: los descuidos de configuración que más se repiten en entornos cloud.

Cómo leer un informe de pentest y priorizar las correcciones

Qué contiene un buen informe, cómo interpretar la gravedad de cada hallazgo y en qué orden conviene corregir.

Cabeceras de seguridad HTTP: qué hace cada una

Un repaso de las cabeceras que endurecen un sitio web, para qué sirve cada una y los errores al activarlas.

Dependencias vulnerables y cadena de suministro

Cada librería que instalás es código ajeno que corre con tus permisos: cómo mantener el inventario y reaccionar a las vulnerabilidades publicadas.

Secretos en repositorios y variables de entorno

Claves y contraseñas que terminan en el historial de git: cómo ocurre, cómo detectarlo y qué hacer cuando ya pasó.

Seguridad de APIs: los fallos que más se repiten

Autorización, exposición excesiva de datos, falta de límites y validación: una lista práctica para revisar una API antes de publicarla.

Control de acceso roto: cuando un usuario ve lo que no debería

Autorización a nivel de objeto y de función: por qué es de los fallos más frecuentes y cómo diseñarla para que no dependa de la memoria de cada desarrollador.

Autenticación y manejo de sesiones: errores comunes

Contraseñas, recuperación de cuentas, tokens y cierre de sesión: dónde se equivoca la mayoría y qué revisar en tu sistema.

XSS: tipos y defensas

Cómo un sitio termina ejecutando código de un tercero en el navegador de sus usuarios y qué hacer para evitarlo.

Inyección SQL: cómo ocurre y cómo evitarla

Por qué concatenar texto en una consulta abre la puerta a la inyección y cómo las consultas parametrizadas la cierran.

OWASP Top 10 explicado para quien desarrolla

Un recorrido por las categorías de riesgo que más se repiten en aplicaciones web y qué hábito de desarrollo previene cada una.

Alcance y reglas de juego: por qué todo empieza con una autorización

Qué se define antes de la primera prueba: sistemas incluidos, ventanas de tiempo, datos permitidos y a quién avisar si algo sale mal.

Cuándo conviene hacer un pentest (y cuándo es demasiado pronto)

Momentos razonables para contratar una prueba de seguridad y señales de que primero hay que ordenar lo básico.

Qué es un pentest y en qué se diferencia de un escaneo de vulnerabilidades

Una prueba de penetración combina herramientas y criterio humano para demostrar qué puede lograr un atacante. Acá, cómo se distingue de un escáner automático.