Prompt
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.

Lo que obtienes (extracto)

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

  1. Pega solo código que tengas permitido compartir; elimina antes secretos, claves e identificadores internos
  2. Dale al modelo el contexto que rodea al código (framework, dónde se ejecuta) para que la explicación sea precisa
  3. Contrasta la explicación con el código y resuelve tú mismo cada marca de "no mostrado" o ambigüedad
  4. 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

← Los 6 casos de uso: cómo los desarrolladores de software usan la IA