Un ingeniero denuncia la pérdida de pericia técnica por usar LLMs

Un ingeniero de software con cinco años de formación universitaria y una extensa trayectoria en el desarrollo de sistemas, bibliotecas de machine learning y administración de servidores expresa su descontento ante la adopción generalizada de los modelos de lenguaje grandes (LLMs) en su flujo de trab

Integrar agentes de IA en código legado mediante DDD

La adopción de modelos de lenguaje grandes (LLM) en la ingeniería de software enfrenta un obstáculo crítico al trabajar con bases de código legadas: la falta de claridad semántica y la deuda técnica acumulada. A diferencia de los proyectos nuevos, donde los agentes funcionan bien, en sistemas comple

Dejemos de llamarlo «deuda técnica»: en realidad es un «desastre»

El ingeniero de software Matt Proctor (Simpler Machines) sostiene que la expresión «deuda técnica» se usa de forma incorrecta en la mayoría de los proyectos y debería sustituirse por «desastre» o «desorden». El argumento central es que la metáfora de la deuda financiera resulta contraproducente cuan

La IA elimina la clase media de la ingeniería de software

La inteligencia artificial generativa está transformando el trabajo de los ingenieros de software al comprimir los plazos de implementación, hasta el punto de que un equipo puede producir en un lunes más código del que antes generaba en semanas. En proyectos con una cultura de ingeniería débil, esta

Cuándo sí y cuándo no conviene usar feature flags

Los feature flags, o interruptores de funcionalidad, son una herramienta potente de la ingeniería de software, pero su uso indiscriminado puede salir caro. Este artículo analiza los escenarios en los que aportan valor real y aquellos en los que conviene evitarlos. Entre los usos justificados se enc

Cómo no morir por mil cortes: repensar la calidad del software

La calidad del software no se reduce al buen funcionamiento de una aplicación, sino que atraviesa toda la organización. El texto parte de una premisa filosófica —la calidad como experiencia de un proceso vivo, comparable al cuidado de la salud— y la traslada al producto digital para preguntarse de q

Por qué los discos duros siempre están llenos, aunque los amplíes

Un usuario con experiencia técnica sostiene que los discos duros tienden a llenarse sin importar su capacidad, un fenómeno que se repite con cada salto generacional de almacenamiento, desde los 80 MB de los años noventa hasta los varios terabytes actuales. En su propio equipo, la unidad raíz dispone

La caída de la ballena de la IA y el software libre

Los laboratorios de IA frontera —empresas como Anthropic y OpenAI— están subsidiando actualmente el uso de modelos avanzados mediante ingentes cantidades de capital, una situación que sus críticos consideran insostenible a largo plazo. Al igual que el cadáver de una ballena que se hunde hasta el fon

Por qué seguir escribiendo código en 2026

En pleno apogeo de los agentes de inteligencia artificial capaces de generar código de forma autónoma, un ingeniero de software estadounidense sostiene que escribir código a mano sigue siendo una habilidad esencial para los programadores, no por nostalgia, sino por una razón cognitiva profunda. Doug

La calidad del código de IA empieza en tu propio código fuente

La utilidad de la inteligencia artificial aplicada al desarrollo de software no depende solo del prompt ni del modelo elegido, sino del estado del propio repositorio con el que trabaja. Cuando una base de código sigue patrones claros, consistentes y basados en stacks tecnológicos populares, el model

QUALITY.md: un formato abierto para declarar modelos de calidad de proyecto

QUALITY.md es un formato de archivo abierto diseñado para declarar de forma explícita el modelo de calidad de un proyecto de software. El archivo agrupa en un mismo documento las características de calidad deseadas (seguridad, mantenibilidad, calidad del código, calidad de las pruebas), los requisit

Por qué la mayoría de las reescrituras de código no valen la pena

Un ingeniero veterano relata cómo, en un verano, madrugó hasta las 4 de la madrugada para reescribir de CakePHP a Laravel un sistema que ya funcionaba en producción. El cambio no aportó nada al negocio: la aplicación hacía lo mismo para los mismos usuarios y al mismo ritmo. La única mejora fue la co

El valor de comprender el código frente a la pereza de copiar y pegar

La comprensión profunda del código y de los sistemas de software no solo resulta práctica, sino también profundamente satisfactoria. Entender lo que tenemos entre manos nos otorga control y responsabilidad sobre lo que creamos, y existe una base evolutiva que explica por qué comprender genera emocio

Vibe coder frente a ingeniero de software: cuatro diferencias que importan

Un vibe coder y un ingeniero de software no se distinguen por la herramienta que usan, sino por dónde empieza y dónde termina su responsabilidad. Este artículo de Yusuf Aytas parte de una analogía histórica: hace casi una década, muchos desarrolladores confundían su identidad profesional con Java y

Limpiar el código tras los desarrolladores estrella y sus sucesores de IA

El desarrollador Jesse Skinner publica una reflexión, a medio camino entre la crónica y el ensayo técnico, sobre un patrón repetido en los equipos de ingeniería: la figura del desarrollador estrella y, más recientemente, su equivalente automatizado en los agentes de inteligencia artificial generativ

Al usuario no le importa, pero a ti sí debería importarte

A lo largo de su carrera, el autor de este ensayo ha escuchado de forma repetida el mismo cliché en equipos de software: "a los usuarios no les importa tu stack tecnológico, tus pruebas ni la calidad del código; solo quieren que el producto funcione". El texto sostiene que, aunque la afirmación resu

«Lo dejamos para más tarde» ya era en sí una funcionalidad

El desarrollador Arnorhs reflexiona en su blog personal sobre el valor del código que nunca se escribe y advierte de un riesgo emergente ligado al uso de inteligencia artificial en el desarrollo de software. El argumento central del texto es que la mayor parte de las ideas que se acumulan en el bac

Compound Engineering: plugin con 37 skills y 51 agentes para asistentes de IA

El plugin Compound Engineering, publicado por Every Inc en GitHub, es un paquete de herramientas diseñado para asistentes de programación con inteligencia artificial como Claude Code, Codex, Cursor, VS Code Copilot y Droid. La distribución incluye 37 skills y 51 agentes especializados que estructura

ElRails-way ya no sirve: el problema de las apps complejas

Este artículo analiza por qué el enfoque conocido como 'Rails-way' —la metodología convencional de Ruby on Rails para construir aplicaciones— deja de ser efectivo cuando las aplicaciones crecen en complejidad. El autor argumenta que Rails-way funciona excelentemente para aplicaciones pequeñas y medi

Prueba de Eliminación: ¿Tu código sobreviviría?

La 'Prueba de Eliminación' (Deletion Test) es una técnica de diagnóstico para evaluar la salud y la mantenibilidad de un sistema de software. La idea central es simple pero reveladora: imagina eliminar por completo la implementación actual del código (usando `rm -rf src/` en un entorno Linux, por ej

Ingenieros tecnológicos: ¿crisis de rumbo?

El artículo "Programación Sigue Siendo Mala. — Escritura" es una reflexión pesimista y satírica sobre el estado actual de la industria tecnológica, especialmente para los ingenieros de software. El autor, a través de una metáfora extendida de un capitán de barco en una embarcación destartalada y caó

Software: ¿Abstracciones rápidas, problemas lentos?

El artículo de James Ludwell-Grymes, "Los Costos 'Ocultos' de las Grandes Abstracciones", explora una tendencia preocupante en el desarrollo de software: la creciente dependencia de abstracciones que, si bien aumentan la velocidad de desarrollo inicial, a menudo conducen a una comprensión superficia

Nuevo equipo, resultados fallidos: una lección empresarial

Este artículo de Aleix Morgadas relata una experiencia fallida al agregar un nuevo equipo (CX Tribe) a una estructura organizativa ya existente, destacando cómo una decisión aparentemente estratégica puede generar problemas de comunicación, falta de alineación y, en última instancia, no alcanzar los

Software: Escuchar, no sistemas, soluciona problemas

En el desarrollo de software, es común que los equipos intenten resolver problemas de comunicación y comprensión a través de la implementación de sistemas, marcos de trabajo o metodologías complejas (como 'socio-técnicos'). Sin embargo, Ashley Rolfmore argumenta que este enfoque es una distracción y

Ingeniería de Crisis: Ideología vs. Técnica

El artículo "Casus Belli Engineering" explora un fenómeno preocupante en entornos profesionales, especialmente en el desarrollo de software: la manipulación estratégica de fallas para impulsar cambios tecnológicos basados en la ideología personal, en lugar de la mejora técnica. Se basa en la teoría

Priorizar proyectos: una lección de parques 'peores'

El artículo de substack.com, titulado "I went to America's worst national parks so you don't have to" (Fui a los peores parques nacionales de Estados Unidos para que tú no tengas que), no trata sobre parques nacionales en sí, sino sobre una estrategia de evaluación y priorización de proyectos utiliz

La 'pereza' útil: clave para un buen código

Este artículo explora una idea contraintuitiva: la importancia de la "pereza" en el desarrollo de software. Inspirado en la famosa declaración de Larry Wall en "Programming Perl" (el "Camel Book"), el autor argumenta que la verdadera pereza, entendida como la búsqueda de la simplicidad y la abstracc

Código: escribir para leer, no solo para ejecutar

El artículo "Code is run more than read" de Facundo Olano explora una perspectiva crucial en el desarrollo de software: la importancia de priorizar la experiencia del usuario y la mantenibilidad del código por encima de la conveniencia del desarrollador original. La idea central es que el código se

Antes de leer código: comandos Git esenciales

Cuando te enfrentas a un nuevo código base, es tentador sumergirte directamente en los archivos. Sin embargo, Ally Piechowski, un experto en el campo, propone un enfoque diferente: ejecutar una serie de comandos Git antes de siquiera abrir un archivo. Este método proporciona una visión general del p

Simplicidad Ignorada: ¿Por qué no se premia en el trabajo?

El artículo "Nobody Gets Promoted for Simplicity" de terriblesoftware.org aborda un problema sutil pero común en equipos de ingeniería: la tendencia a recompensar la complejidad sobre la simplicidad. Aunque la simplicidad es una virtud crucial, a menudo se pasa por alto en las evaluaciones de desemp

Innovación frenada: ¿por qué la técnica no basta?

El artículo "Technical Excellence Is Not Enough" explora un problema común en las organizaciones: la prevalencia del confort sobre la excelencia técnica. No se trata de malas intenciones o incompetencia, sino de una estructura organizacional que prioriza la estabilidad y la evitación de la disrupció

Código Funcional, ¿Suficiente? La Crisis del Buen Código

El artículo "The silent death of Good Code" reflexiona sobre una tendencia preocupante en la ingeniería de software: la pérdida de la importancia del código bien escrito. El autor, Amit Prasad, define "Good Code™" como código legible, comprensible, mantenible y que cumple una función específica, res

Coding assistants are solving the wrong problem

Un artículo analiza la efectividad de los asistentes de codificación con IA, encontrando que, si bien prometen aumentar la productividad, a menudo generan más problemas de los que resuelven. Los desarrolladores son más lentos al usar estos asistentes, el código generado contiene más vulnerabilidades