Explica código desconocido antes de modificarlo
Entrar en un módulo heredado, una dependencia de terceros o el pull request de un compañero significa leer código sin ningún contexto en la cabeza. Los desarrolladores ahora pegan la función o el archivo en un modelo y preguntan qué hace y por qué: buscar respuestas (54%) y aprender una base de código (33%) están entre las tareas de IA más comunes en la encuesta de Stack Overflow. Es de bajo riesgo porque estás leyendo, no publicando.
Eres un ingeniero senior que me ayuda a entender código que no escribí. Voy a pegar un fragmento; explícalo para que pueda modificarlo con seguridad. Lenguaje/framework: {{language}} Dónde encaja esto en el sistema: {{context}} Código: {{code}} Recorre lo siguiente: 1. Resumen: qué hace este código, en dos frases. 2. Bloque por bloque: el propósito de cada sección relevante, incluyendo cualquier característica o idioma del lenguaje que no sea obvio. 3. Entradas, salidas y efectos secundarios: qué lee, devuelve, muta o llama externamente. 4. Supuestos y casos límite: qué debe ser cierto para que funcione, y dónde se rompería. 5. Preguntas para verificar: cualquier cosa que estés infiriendo en lugar de saber con certeza. Reglas: - Basa cada afirmación en el código que pegué. Si el comportamiento depende de código, configuración o tipos que no incluí, di que depende de algo no mostrado en lugar de adivinar. - No inventes nombres de funciones, bibliotecas ni comportamientos que no sean visibles en el fragmento. Marca cualquier cosa ambigua en lugar de resolverla en silencio. - Prefiere el lenguaje sencillo sobre la jerga; cuando un término sea inevitable, defínelo una vez.
Rellena tus datos y el prompt se actualiza al instante — luego cópialo.
Resumen: esta función aplica debounce a las llamadas a search() para que solo se dispare 300 ms después de que el usuario deja de escribir, cancelando cualquier llamada pendiente. Bloque por bloque: mantiene un id de temporizador en un closure; cada llamada limpia el temporizador anterior y programa uno nuevo, y luego reenvía sus argumentos mediante ...args cuando el temporizador se dispara. Efectos secundarios: crea y limpia un temporizador; llama a search() solo con los últimos argumentos. Supuestos: depende de una única variable de temporizador compartida en el ámbito envolvente. Cómo maneja los errores search() depende de código no mostrado. Preguntas para verificar: ¿search es asíncrona? Si es así, aquí no se manejan las resoluciones superpuestas.
El flujo de trabajo completo
- Pega solo código que tengas permitido compartir; elimina antes secretos, claves e identificadores internos
- Dale al modelo el contexto que rodea al código (framework, dónde se ejecuta) para que la explicación sea precisa
- Contrasta la explicación con el código y resuelve tú mismo cada marca de "no mostrado" o ambigüedad
- Confirma tu comprensión ejecutando o recorriendo el código paso a paso antes de modificarlo
Cuidado con
Nunca pegues código propietario, credenciales, claves de API o datos de clientes en una cuenta de IA de consumo: pueden conservarse y usarse para entrenar el modelo. Samsung prohibió el ChatGPT de consumo en 2023 después de que empleados filtraran código interno, y las encuestas encuentran que la mayoría de los empleados siguen pegando datos de la empresa. Usa un plan empresarial con el entrenamiento desactivado, o comparte solo fragmentos no sensibles.
El modelo explica el código con seguridad incluso cuando está adivinando partes que no mostraste. Trata cualquier comportamiento que dependa de código, configuración o tipos no vistos como no verificado hasta que lo compruebes tú mismo.
Una explicación no es una prueba. Confirma el comportamiento ejecutando o recorriendo el código, no confiando en el resumen.
De dónde sale esto
Cada caso de uso de este sitio se basa en relatos reales de los desarrolladores de software en activo — no lo inventamos nosotros.
Más casos de uso de IA para los desarrolladores de software
Una primera revisión de tu propio diff antes de que lo vean humanos
automatizaciónGenera pruebas unitarias y luego verifícalas contra la especificación
análisisDepuración por pato de goma para un problema que no logras resolver
redacciónConvierte una decisión en un ADR o en la documentación que dejaste pendiente
comunicaciónRedacta mensajes de commit y descripciones de PR a partir de tu diff
← Los 6 casos de uso: cómo los desarrolladores de software usan la IA