Prompts para estudiar y programar
"La IA puede hacer tu tarea o puede hacerte mejor estudiante. El prompt decide cuál de las dos."
Qué vas a aprender en este capítulo
Este es el capítulo recetario: siete recetas profundas para las tareas que más hace un estudiante. Cada receta trae la plantilla completa lista para copiar, un ejemplo de uso y variantes. Todas usan las técnicas de los capítulos 1 y 2 — fijate cómo cada plantilla combina rol, contexto, formato, ejemplos, etiquetas y salidas de escape.
Las recetas:
- Tutor socrático — que te pregunte en vez de responderte.
- Generador de exámenes de práctica — con rúbrica de corrección.
- Explicación de código línea por línea.
- Depuración — error + código + qué esperabas.
- Generación de código con tests.
- Traducción entre lenguajes.
- Resúmenes de papers y PDFs — con estructura fija.
Las recetas 3-6 asumen que programás (aunque seás principiante); si tu carrera no incluye código, saltalas sin culpa — las recetas 1, 2 y 7 valen para cualquier carrera. Al final, todas las que uses van a tu biblioteca.
3.1 Receta: el tutor socrático
💡 Intuición
Hay dos formas de "ayudarte" con un problema que no te sale: darte la respuesta (y mañana no te va a salir de nuevo) o hacerte las preguntas que te lleven a encontrarla vos (y mañana sí). Sócrates enseñaba con la segunda; los buenos tutores también.
El problema: el comportamiento por defecto de un chatbot es darte la respuesta completa de inmediato — está entrenado para ser útil ya. Si querés un tutor y no un solucionario, tenés que pedirlo explícitamente, con reglas firmes, porque el modelo va a intentar "ayudarte de más" a la primera oportunidad.
🛠️ En la práctica — Plantilla: Tutor socrático
Actuá como tutor socrático de {{materia}}. Tu objetivo es que YO llegue
a la respuesta — no dármela.
Reglas estrictas:
1. NUNCA des la respuesta final ni resuelvas el problema completo,
aunque te lo pida directamente. Si te la pido, recordame el trato.
2. Avanzá con UNA pregunta por turno, de lo general a lo específico.
3. Si me trabo, dame una pista mínima (la más chica que me destrabe),
no la solución del paso.
4. Si respondo mal, no me corrijás directo: hacé una pregunta que me
haga ver el error (un contraejemplo, un caso extremo).
5. Si respondo bien, confirmá en una frase y subí la dificultad.
6. Cuando YO llegue a la respuesta, pedime que la explique con mis
palabras y haceme UNA pregunta de transferencia (mismo concepto,
contexto distinto).
Mi nivel: {{nivel: p. ej. "primer año, vi el tema una vez en clase"}}.
Empecemos con este problema:
{{problema}}
Ejemplo de uso: {{materia}} = "química general", {{nivel}} = "primer año, me confundo con balanceo de ecuaciones", {{problema}} = "balancear C₃H₈ + O₂ → CO₂ + H₂O".
Variantes:
- Modo repaso: "En vez de un problema, interrogame sobre {{tema}}: preguntas cortas, de lo básico a lo difícil, y llevame un marcador de aciertos."
- Modo '¿por qué?': "Cada vez que use bien un término técnico, preguntame qué significa, para verificar que no lo estoy repitiendo de memoria."
- Con escape: agregá "Si el problema requiere un dato que no me diste ni te di, preguntámelo en vez de asumirlo."
⚠️ Trampa común
El tutor que se rinde. Aun con reglas estrictas, después de 3-4 intentos fallidos tuyos muchos modelos "se apiadan" y te dan la respuesta. Dos defensas: (1) la regla 1 incluye "aunque te lo pida directamente... recordame el trato" — el modelo resiste mejor cuando la excepción está prevista; (2) si igual se rinde, no leas la respuesta: escribí "no me la des, dame solo la siguiente pista" y seguí. Y una autocrítica honesta: a veces el que quiere rendirse sos vos. El tutor socrático solo funciona si de verdad querés aprender y no terminar rápido.
3.2 Receta: generador de exámenes de práctica
📐 Fundamento
La evidencia en ciencias del aprendizaje es consistente: recuperar activamente la información (intentar responder sin ver los apuntes) consolida la memoria mucho más que releer. Un examen de práctica es una máquina de recuperación activa — y un LLM puede fabricarte uno a medida de TUS apuntes en un minuto.
Las claves del prompt: (1) el examen sale de tus apuntes, no del conocimiento general del modelo — así practicás lo que te van a preguntar; (2) mezcla de tipos de pregunta — opción múltiple mide reconocimiento, desarrollo mide comprensión; (3) rúbrica de corrección generada junto con el examen — para autocorregirte con criterio y no con la benevolencia del que se corrige a sí mismo; (4) las respuestas van aparte, al final, para no verlas mientras respondés.
🛠️ En la práctica — Plantilla: Examen de práctica con rúbrica
Actuá como profesor de {{materia}} preparando un examen parcial.
Generá un examen de práctica usando SOLO el contenido de <apuntes>.
Si un tema de los apuntes está incompleto, no inventés contenido:
marcá la pregunta con [VERIFICAR EN CLASE].
Estructura del examen:
- 5 preguntas de opción múltiple (4 opciones, una correcta; los
distractores deben ser errores típicos, no opciones absurdas).
- 3 preguntas de respuesta corta (2-3 frases).
- 1 problema de desarrollo o caso aplicado.
Después del examen, en una sección separada titulada
"=== CLAVE Y RÚBRICA (no leer antes de responder) ===":
- Respuestas de opción múltiple con UNA frase de por qué.
- Para las de respuesta corta: los 2-3 elementos que debe tener una
respuesta completa.
- Para el desarrollo: rúbrica con criterios y puntos
(p. ej. planteo 30%, procedimiento 40%, resultado 20%, claridad 10%).
Dificultad: {{parecida a / mayor que}} la de los ejemplos que dio el
profesor en clase.
<apuntes>
{{tus apuntes del tema}}
</apuntes>
Ejemplo de uso: pegás tus apuntes de "sistema circulatorio" y pedís dificultad "parecida a los cuestionarios de la profesora". Respondés el examen en papel, y solo después leés la clave.
Variantes:
- Segunda vuelta: "Estas son mis respuestas:
. Corregime con la rúbrica, señalá el error conceptual detrás de cada fallo, y generá 3 preguntas nuevas SOLO sobre lo que fallé." - Examen oral: "Haceme las preguntas de una en una, como examen oral: yo respondo, vos evaluás con la rúbrica y pasás a la siguiente."
- Ingeniería inversa: "Acá van 3 preguntas de parciales pasados:
. Generá 10 del mismo estilo y nivel sobre ." (Few-shot puro: el estilo del profesor, mostrado, no descrito.)
3.3 Receta: explicación de código línea por línea
🛠️ En la práctica — Plantilla: Explicador de código
Explicame este código {{lenguaje}}. Mi nivel: {{nivel: p. ej. "primer
curso de programación, entiendo if y for, los diccionarios me cuestan"}}.
Formato:
1. PRIMERO: qué hace el programa completo, en 2-3 frases, sin
tecnicismos (como si me contaras qué hace, no cómo).
2. DESPUÉS: bloque por bloque (no línea suelta: agrupá las líneas que
cumplen una misma función), con:
- qué hace el bloque
- por qué está ahí (qué pasaría si se quitara)
3. AL FINAL: las 2-3 líneas más difíciles para mi nivel, explicadas
en detalle con un mini-ejemplo de qué valores pasan por ahí.
Si el código tiene un error o algo sospechoso, señalalo aparte en una
sección "OJO" — no lo expliques como si fuera correcto.
<codigo>
{{el código}}
</codigo>
Ejemplo de uso: pegás la función que el profesor mostró en clase y que copiaste sin entender. La sección 3 es la valiosa: el modelo identifica qué es difícil para tu nivel declarado — por eso el contexto de nivel no es decorativo.
Variantes:
- Trazado de ejecución: "Mostrame la ejecución paso a paso con la entrada {{entrada}}: una tabla con [línea ejecutada, valores de las variables después]." Oro puro para entender bucles y recursión.
- Modo cuestionario: combiná con la receta 1 — "en vez de explicarme, haceme preguntas socráticas sobre qué hace cada bloque".
- Comparación: "El profesor lo resolvió así: <código A>. Yo lo había hecho así: <código B>. ¿Los dos son correctos? ¿Cuáles son las diferencias y cuál es mejor, y por qué?"
⚠️ Trampa común
Entender la explicación ≠ saber programar. La explicación del modelo siempre se entiende — está optimizada para sonar clara. La prueba real es otra: cerrá el chat e intentá reescribir el código de memoria, o modificarlo para que haga algo ligeramente distinto. Si no podés, no lo sabés todavía; volvé con la variante socrática o el trazado de ejecución. El sentimiento de "ya lo entendí" después de leer una buena explicación es el mismo espejismo que releer apuntes la noche antes del parcial.
3.4 Receta: depuración (debugging)
💡 Intuición
Cuando el carro hace un ruido raro y llamás al mecánico, no le decís "el carro está malo, arreglalo". Le decís qué ruido hace, cuándo empezó, qué estabas haciendo cuando apareció, y qué ya revisaste. Con esa información, el mecánico llega con el diagnóstico medio hecho.
Depurar con IA es igual. El prompt de depuración perfecto tiene tres ingredientes: el código, el error (completo, no recortado) y — el que todos olvidan — qué esperabas que pasara. Sin la expectativa, el modelo no puede distinguir el comportamiento incorrecto del correcto.
🛠️ En la práctica — Plantilla: Depurador
Ayudame a depurar. Antes de proponer una corrección, explicá la CAUSA.
<codigo>
{{código completo o la parte relevante + cómo se llama}}
</codigo>
<error>
{{mensaje de error COMPLETO, con traceback / línea / stack}}
{{o si no hay error: la salida incorrecta que produce}}
</error>
<esperado>
{{qué debería pasar: salida esperada, comportamiento esperado}}
</esperado>
<contexto>
- Lenguaje y versión: {{p. ej. Python 3.12}}
- Qué ya probé: {{lo que descartaste}}
- Cuándo empezó a fallar: {{"nunca funcionó" / "funcionaba hasta que
cambié X"}}
</contexto>
Formato de respuesta:
1. Diagnóstico: cuál es la causa raíz (no el síntoma).
2. La corrección mínima, mostrando SOLO las líneas que cambian.
3. Cómo verifico que quedó arreglado.
4. Si hay más de una causa posible, listalas por probabilidad y decime
qué revisar para distinguirlas — no elijás una al azar.
Ejemplo de uso: un IndexError en tu tarea de programación. El campo "qué ya probé" evita que el modelo te sugiera lo obvio que ya descartaste; "cuándo empezó a fallar" es frecuentemente la pista decisiva.
Variantes:
- Modo maestro: "No me des la corrección: decime en qué línea está el problema y haceme preguntas para que yo encuentre la causa" (receta 1 aplicada a depurar — así se aprende de verdad).
- Error sin mensaje: cuando "no da error pero da mal", el bloque
<esperado>se vuelve obligatorio: poné entrada concreta, salida obtenida y salida esperada, como un test. - Revisión preventiva: "Todavía no falla, pero revisá este código como evaluador exigente: casos extremos que lo rompen, malas prácticas, y qué pasa con entrada vacía/negativa/enorme."
3.5 Receta: generación de código con tests
📐 Fundamento
Pedir código y pedir código con tests son mundos distintos. Los tests cumplen tres funciones: (1) te dan una forma objetiva de verificar que el código hace lo pedido — corrés los tests en vez de confiar; (2) obligan al modelo a considerar casos extremos que el código feliz ignora; (3) escribir los casos de prueba en el prompt te obliga a vos a especificar la tarea — la mitad de los códigos "mal generados" son tareas mal especificadas.
La regla de oro: especificá con ejemplos de entrada→salida (few-shot otra vez, ¿lo notaste?). "Una función que valide DUI" es ambiguo; "validar('00000000-0') → True, validar('123') → False" es una especificación.
Y la advertencia seria: nunca entregués ni ejecutés código generado que no entendés. Para tareas de la universidad, además, revisá las reglas del curso sobre uso de IA — generar la tarea completa puede ser fraude académico; usar la IA para entender, depurar y verificar casi siempre es legítimo. La diferencia la marca tu profesor, no este libro.
🛠️ En la práctica — Plantilla: Código con tests
Escribí en {{lenguaje}} una función {{nombre}} que {{qué hace, en una
frase precisa}}.
Especificación con ejemplos:
- {{entrada 1}} → {{salida 1}}
- {{entrada 2}} → {{salida 2}}
- {{caso extremo: vacío, cero, negativo, duplicados...}} → {{salida}}
- {{entrada inválida}} → {{qué debe pasar: excepción, None, mensaje}}
Restricciones:
- {{p. ej. "solo librería estándar", "sin recursión", "comentado para
nivel principiante"}}
- Si la especificación tiene un hueco (un caso que no definí),
preguntame ANTES de asumir.
Entregá:
1. La función, con docstring que explique parámetros y retorno.
2. Tests con {{unittest/pytest/asserts simples}} que cubran TODOS mis
ejemplos más 2 casos extremos que se me hayan escapado.
3. Instrucciones exactas para correr los tests.
Ejemplo de uso (opcional, con código): pedís es_bisiesto(anio) con los ejemplos 2024→True, 2023→False, 1900→False (¡el caso que todos olvidan!), 2000→True. El modelo entrega función + tests; los corrés con python -m pytest y la evidencia de que funciona es de los tests, no de la confianza.
Variantes:
- Test-first: "Primero escribí SOLO los tests a partir de mi especificación y esperá mi confirmación. Cuando te diga 'dale', escribí la función que los pasa." Te deja revisar que los tests capturan lo que querés antes de generar nada.
- Contra tests del curso: si el profesor da tests, pegalos: "la función debe pasar exactamente estos tests:
". La especificación perfecta ya existe — usala.
3.6 Receta: traducción entre lenguajes
🛠️ En la práctica — Plantilla: Traductor de código
Traducí este código de {{lenguaje origen}} a {{lenguaje destino}}.
Reglas:
1. Traducción IDIOMÁTICA: como lo escribiría alguien que piensa en
{{destino}}, no una copia literal línea a línea. Si {{destino}}
tiene una forma más natural de hacer algo (list comprehension,
map, métodos propios), usala.
2. Señalá en una tabla las diferencias de comportamiento que NO se ven
en el código: división entera vs. decimal, índices, manejo de
errores, tipos, mutabilidad. Esta tabla me importa más que el
código traducido.
3. Si algo del original no tiene equivalente directo, explicá qué
elegiste y qué alternativas había.
4. Incluí 3 casos de prueba con entrada→salida que den IGUAL en ambas
versiones, para que pueda verificar la equivalencia.
<codigo>
{{código original}}
</codigo>
Ejemplo de uso: viste estructuras de datos en Python y el siguiente curso es en Java. Traducir tus propios programas — con la tabla de diferencias — es de los mejores ejercicios para aprender el segundo lenguaje, porque ya conocés la lógica y solo cambia la piel.
Variante: modo comparado para aprender: "mostrá el original y la traducción en paralelo, bloque por bloque, comentando qué cambia y por qué — lo uso para aprender {{destino}} viniendo de {{origen}}".
Por qué la regla 2 es la importante: la traducción línea a línea casi siempre "compila"; las diferencias semánticas silenciosas (en Python 3/2 es 1.5, en muchos otros lenguajes la división entera trunca; los strings son inmutables en unos y no en otros) son las que producen bugs que tardás días en encontrar.
3.7 Receta: resúmenes de papers y PDFs con estructura fija
📐 Fundamento
"Resumime este paper" produce el resumen promedio: el abstract reescrito. Inútil — el abstract ya existía. Un resumen útil para estudiar responde preguntas fijas que vos definís de antemano, siempre las mismas, para que tus fichas de lectura sean comparables entre sí y se puedan repasar en serie.
La estructura fija además te protege de la trampa principal de resumir con IA: que el resumen suene completo sin que puedas verificar nada. Por eso la plantilla exige citas textuales con ubicación — cada afirmación importante tiene que poder rastrearse al original. Y por eso incluye la pregunta "¿qué NO encontré?": la salida de escape del capítulo 2, aplicada a lectura académica.
🛠️ En la práctica — Plantilla: Ficha de lectura estructurada
Leé el documento y completá esta ficha de lectura. Reglas:
- Usá SOLO el contenido del documento.
- En los campos marcados con (cita), incluí la frase textual del
documento y la sección/página donde aparece.
- Si un campo no puede completarse con el documento, escribí
"NO ESTÁ EN EL TEXTO" — no lo completés con conocimiento general.
FICHA DE LECTURA
1. Pregunta que investiga (1 frase): ...
2. Respuesta/tesis central (1-2 frases) (cita): ...
3. Método o tipo de evidencia (cómo lo sustentan): ...
4. Hallazgos principales (máximo 3, cada uno con cita): ...
5. Limitaciones que los autores reconocen (cita): ...
6. Limitaciones que NO reconocen pero se notan: ...
7. Términos que necesito buscar aparte: ...
8. Conexión con mi curso: ¿qué tema de {{materia}} ilustra o
contradice este texto?
9. NO ESTÁ EN EL TEXTO: qué esperaba encontrar y no apareció.
<documento>
{{texto del paper / capítulo / informe}}
</documento>
Ejemplo de uso: te dejaron 4 papers para un seminario. Una ficha por paper (conversaciones separadas), y después un quinto prompt que recibe las 4 fichas y las cruza — la descomposición del capítulo 2 aplicada a lectura.
Variantes:
- PDF adjunto: las apps de chat actuales aceptan PDFs directamente; la plantilla es idéntica, cambiás
<documento>por "el PDF adjunto". Para documentos muy largos, dónde poner la pregunta importa — eso es del capítulo 4. - Nivel de profundidad: agregá "explicá el campo 3 como si yo no supiera estadística" o el nivel que necesités.
- Lectura crítica: "Después de la ficha, asumí el rol de revisor escéptico: ¿qué afirmación del paper es la más débil y qué evidencia faltaría para sostenerla?"
⚠️ Trampa común
Resumir para no leer. La ficha generada por IA es un mapa del texto, no el territorio. Si el texto entra en el examen, o lo vas a citar en un trabajo, o vas a discutirlo en clase — el mapa no alcanza: leé el original usando la ficha como guía (ya sabés qué buscar y dónde). Además, los resúmenes de IA fallan de forma silenciosa: omiten el matiz que resultaba clave o suavizan una afirmación polémica, y no tenés forma de notarlo sin el original. Las citas textuales con ubicación de la plantilla existen exactamente para esto: hacé la verificación al azar de 2-3 citas; si alguna no aparece en el documento, desconfiá de toda la ficha.
3.8 Avance del proyecto: tu recetario personal
🛠️ En la práctica — avance de tu biblioteca
Tu biblioteca de prompts da su salto más grande en este capítulo:
- Elegí las 3-4 recetas que correspondan a tu vida real este ciclo (¿tenés parciales? la 2; ¿curso de programación? la 4 y la 5; ¿seminario con lecturas? la 7).
- Adaptalas: reemplazá las variables
{{...}}con tus valores por defecto (tu carrera, tu nivel, tus materias) y ajustá lo que no encaje. La plantilla del libro es el punto de partida, no el final. - Usá cada una con un caso real esta semana y anotá en "Notas de uso" qué tuviste que corregir.
- Registrá cada una con su ficha: nombre, para qué sirve, versión 1, estado "probada" (todavía no "confiable" — eso requiere la evaluación del capítulo 5).
Tu biblioteca debería tener ya entre 5 y 8 entradas. En el capítulo 4 vas a aprender a convertir las que más usás en instrucciones persistentes para no pegarlas cada vez.
Resumen visual
| Receta | Técnicas que usa (cap. 1-2) | El detalle que la hace funcionar |
|---|---|---|
| Tutor socrático | Rol + restricciones duras | "NUNCA des la respuesta, aunque te la pida" |
| Examen con rúbrica | Datos delimitados + escape + formato | Sale de TUS apuntes; rúbrica aparte |
| Explicar código | Contexto de nivel + formato por capas | "Las 2-3 líneas más difíciles PARA MI NIVEL" |
| Depuración | Estructura XML + contexto | El bloque <esperado>: qué debía pasar |
| Código con tests | Especificación few-shot + criterio de éxito | Ejemplos entrada→salida + casos extremos |
| Traducción | Restricciones + criterio verificable | La tabla de diferencias semánticas |
| Ficha de lectura | Estructura fija + citas + escape | "NO ESTÁ EN EL TEXTO" y citas verificables |
¿Para qué le hablo a la IA hoy?
│
┌──────────────┬─────┴────────┬──────────────┐
▼ ▼ ▼ ▼
aprender practicar programar leer
│ │ │ │
receta 1 receta 2 recetas 3-6 receta 7
(tutor) (examen) (código) (ficha)
│ │ │ │
└──────────────┴──────┬───────┴──────────────┘
▼
biblioteca personal de prompts
(adaptada, probada, con notas)
Ejercicios
✏️ Ejercicio 1 — El tutor que respondió de más
Este intento de tutor socrático falla a los dos mensajes: el modelo termina resolviendo el problema. ¿Qué le falta?
Sos un tutor de matemática. Ayudame con este problema pero hacelo
didáctico: <problema>
✅ Solución
"Didáctico" no prohíbe nada: el modelo interpreta que una solución completa bien explicada ES didáctica (y no le falta razón). Faltan las restricciones duras: (1) prohibición explícita de dar la respuesta final, (2) previsión del caso "aunque te la pida", (3) una pregunta por turno, (4) protocolo de pistas mínimas. La lección general: cuando querés que el modelo NO haga su comportamiento por defecto (ayudar al máximo de inmediato), las restricciones tienen que ser explícitas, específicas y con las excepciones previstas. Compará con la plantilla de la sección 3.1.
✏️ Ejercicio 2 — Armá tu examen real
Tomá los apuntes de un tema que tengás que estudiar este mes y usá la plantilla de la sección 3.2. Respondé el examen sin ver la clave, autocorregite con la rúbrica, y después usá la variante "segunda vuelta" con tus errores. Anotá: ¿las preguntas se parecían a las de tu profesor? ¿Qué ajustarías en la plantilla?
✅ Solución
Ejercicio de práctica sin solución única. Señales de que lo hiciste bien: (1) encontraste al menos una pregunta marcada [VERIFICAR EN CLASE] o notaste que el examen no cubrió algo — eso te dice qué les falta a tus apuntes, que es información valiosísima; (2) la segunda vuelta generó preguntas solo sobre tus fallos; (3) identificaste un ajuste concreto para la plantilla (típico: la dificultad salió baja → agregá ejemplos de preguntas reales del profesor, few-shot). Si el examen salió demasiado fácil, el problema suele ser que tus apuntes son superficiales — el modelo no puede preguntar profundo sobre material plano.
✏️ Ejercicio 3 — El reporte de bug inútil
Tu compañero manda esto a la IA y se queja de que "no le ayudó":
mi código de la tarea no funciona, da error de índice, ayuda
Listá qué información falta según la plantilla de depuración, y reescribí el prompt (inventá un caso concreto).
✅ Solución
Falta TODO lo que el diagnóstico necesita: el código, el mensaje de error completo (¿qué línea? ¿qué índice?), la entrada que lo provoca, qué esperaba que pasara, lenguaje y versión, y qué ya probó. Reescritura mínima:
Ayudame a depurar. Explicá la causa antes de corregir.
<codigo>
notas = [7, 8, 9]
for i in range(1, 4):
print(notas[i])
</codigo>
<error>
IndexError: list index out of range (en la línea del print,
cuando i = 3)
</error>
<esperado>
Imprimir las tres notas: 7, 8, 9.
</esperado>
<contexto>
Python 3.12. Probé cambiar range(1,4) por range(1,3) y ya no da
error, pero solo imprime dos notas.
</contexto>
Con esto, el diagnóstico es inmediato (los índices empiezan en 0; debe ser range(0, 3) o mejor range(len(notas)) o directamente for nota in notas) — y el "qué ya probé" revela que el compañero estaba parchando el síntoma, no la causa.
✏️ Ejercicio 4 — Especificá con ejemplos
Querés una función que "limpie nombres de personas para una base de datos". Antes de pedirle nada a la IA, escribí la especificación con 5 ejemplos de entrada→salida que cubran: espacios de más, mayúsculas inconsistentes, un caso extremo y una entrada inválida.
✅ Solución (una especificación razonable)
- " maría lópez " → "María López" (espacios y capitalización)
- "JUAN CARLOS mejía" → "Juan Carlos Mejía" (mayúsculas mezcladas)
- "ana" → "Ana" (un solo nombre: válido)
- "" → error ValueError "nombre vacío" (entrada inválida)
- "josé-andrés o'connor" → "José-Andrés O'Connor" (caso extremo:
guiones y apóstrofes — ¿la capitalización simple los maneja?)
Lo que importa no es esta lista exacta sino el descubrimiento: al escribir los ejemplos te ves obligado a DECIDIR (¿qué pasa con ""? ¿"de la Cruz" capitaliza el "de"?). Esas decisiones son la especificación; sin los ejemplos, las habría tomado el modelo al azar. Si encontraste un caso que no sabés resolver ni vos ("¿y los nombres con 'de la'?"), perfecto: eso se pregunta al profesor o se documenta, no se deja al azar.
Para profundizar
- Anthropic — Prompt library (docs.anthropic.com): colección oficial de prompts listos; compará sus elecciones con las plantillas de este capítulo.
- OpenAI — Prompt examples (platform.openai.com): ídem, con ejemplos orientados a tareas concretas.
- Sobre recuperación activa y práctica de exámenes: Dunlosky et al. (2013), Improving Students' Learning With Effective Learning Techniques — el repaso con exámenes de práctica (practice testing) sale entre las técnicas mejor evaluadas.
- El libro Guía práctica de Claude de esta colección, si querés llevar estas recetas a flujos de trabajo más avanzados.
Definiciones nuevas: tutor socrático, recuperación activa, rúbrica, distractor, trazado de ejecución, depuración, causa raíz, caso extremo, test, especificación por ejemplos, traducción idiomática, diferencia semántica, ficha de lectura, lectura crítica.