Yeda AI Tips · #055

English

Comenta el porqué, nunca el qué

Borra el noventa por ciento de tus comentarios. Conserva un solo tipo. La mayoría de los comentarios en una base de código típica repiten lo que la línea de abajo ya dice — y un comentario que repite el código se pudre en el momento en que esa línea cambia. El único tipo que vale la pena conservar registra algo que el código no puede decir: por qué existe.

El comentario que miente

PEP 8 usa el ejemplo canónico como su propio "no hagas esto":

x = x + 1                 # Increment x

Ese comentario no aporta ninguna información hoy, y peor: es una mentira en espera. Cambia la línea a x = x + step y el comentario ya es falso — y nadie actualiza los comentarios como actualiza el código. El contraejemplo de PEP 8 es la solución: x = x + 1 # Compensate for border. La misma línea, pero ahora el comentario aporta contexto que el código no puede expresar.

El blog de ingeniería de Stack Overflow lo pone como regla número uno para comentarios de código: los comentarios no deben duplicar el código. Los comentarios redundantes ensucian el archivo, cuestan tiempo de mantenimiento y quedan desactualizados. Refactoring.guru va más allá y clasifica los comentarios explicativos como un code smell en la categoría "Dispensables" — casi siempre una señal de que el código necesita renombrarse o extraerse, no anotarse.

Qué vs. porqué, en una línea

# QUÉ (bórralo — el código ya lo dice):
window.clear()  # clear the window

# PORQUÉ (consérvalo — el código no puede decirlo):
window.clear()  # reset the counter on a sliding window
                # to stop burst attacks at the window edge

El primer comentario repite el nombre del método. El segundo registra una decisión: alguien eligió una ventana deslizante en lugar de una fija, para un modelo de amenaza específico. Refactoriza la implementación — renombra el método, cambia la estructura de datos — y el comentario de porqué sigue siendo cierto, porque la intención no cambia cuando el código cambia.

Reglas prácticas

El comentario dice…VeredictoPor qué
Qué hace la líneaBorrarEl código ya lo dice; se pudre en la próxima edición
Por qué este enfoque y no el obvioConservarLa intención sobrevive a los refactors
Por qué NO el enfoque obvio ("no cachear esto — X lo muta")ConservarEvita un "arreglo" futuro que reintroduce un bug
Un workaround, con enlace al bug/ticketConservarContexto con fuente; se puede borrar cuando el bug se cierra
TODO con responsable/contextoConservarMarca explícitamente trabajo incompleto conocido
Código comentadoBorrarEl control de versiones lo recuerda por ti

Si te cuesta escribir un comentario claro, suele ser señal de que el código necesita trabajo — extrae una función con buen nombre en lugar de anotar un bloque confuso.

Los comentarios de porqué son combustible para asistentes de IA

Aquí está el beneficio moderno. Los asistentes de programación con IA leen tus comentarios como parte de su contexto — y los ponderan como declaraciones de intención. Un comentario de qué no le da al modelo nada que no haya extraído ya del código. Un comentario de porqué hace dos cosas:

La forma más barata de alinear un asistente de IA con las decisiones de tu base de código es haberlas dejado escritas donde aplican — en línea, como comentarios de porqué.

Trucos avanzados

Recursos

Read this article in English

¿Construyendo una funcionalidad con IA? Yeda AI diseña, audita y entrega sistemas LLM en producción.

Habla con nosotros · Lee el blog