cursos:sdd:presentacion
Diferencias
Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
| cursos:sdd:presentacion [2026/11/02 12:12] – Precisa qué compara la prueba de Scott Logic claude | cursos:sdd:presentacion [2026/11/02 15:04] (actual) – Añade patrones agénticos antes de guardarraíles deterministas claude | ||
|---|---|---|---|
| Línea 1: | Línea 1: | ||
| - | ====== Cómo se programa con IA: 10 ideas ====== | + | ====== Cómo se programa con IA ====== |
| - | ===== 1. Tú haces la arquitectura, la IA escribe el código | + | ===== 1. Se programa en OpenCode, no en un IDE ===== |
| - | La IA es una máquina de implementar: | + | El agente vive en la terminal y trabaja sobre la carpeta del proyecto. Tú le pides, él edita y lanza órdenes. Es de código abierto y habla con cualquier proveedor. |
| - | [[https:// | + | [[cursos:sdd:03-opencode|OpenCode]]: instalarlo |
| - | ===== 2. El diseño detallado, antes que el código | + | ===== 2. OpenCode se mete dentro de Orca o herdr ===== |
| - | Si le dejas, decide él el alcance, los componentes y las interfaces. Se acuerda | + | Son el «IDE» |
| - | [[https:// | + | [[cursos:sdd:03-herdr# |
| - | ===== 3. El prompt se puede ignorar, la arquitectura no ===== | + | ===== 3. Precios: API o suscripción |
| - | Tú escribes el esqueleto (clases base, contratos, seguridad, gestión | + | * **API**: se paga por //token//. Para probar o para un uso puntual. |
| + | * **Suscripción**: | ||
| - | [[https://www.infoq.com/articles/skeleton-architecture|Skeleton Architecture]]: | + | Por API, en dólares por millón de //tokens// de entrada, en OpenRouter con el proveedor oficial (2 de noviembre de 2026): |
| - | ===== 4. Una tarea pequeña cada vez ===== | + | ^ Modelo ^ Entrada ^ |
| + | | Claude Haiku 5.5 (hasta 100.000 //tokens// de entrada) | 0,10 | | ||
| + | | DeepSeek V4.1 Flash | 0,15 | | ||
| + | | Claude Haiku 5.5 (a partir de 100.000) | 0,50 | | ||
| + | | GLM 5.3 | 1,40 | | ||
| + | | Kimi K3.1 Pro | 2 | | ||
| + | | Claude Sonnet 5.5 | 2 | | ||
| + | | Claude Opus 5.5 | | ||
| + | | Claude Fable 5.1 | 10 | | ||
| - | Se pide un trozo, se prueba y se sigue. Si sale mal, no le pidas que lo deshaga: vuelve al último punto bueno y empieza una sesión nueva con más límites. | + | Por suscripción, en dólares al mes: |
| - | [[https://replit.discourse.group/ | + | ^ Plan ^ Precio ^ Modelos ^ |
| + | | OpenCode Go | 10 y 40 | Modelos abiertos: Kimi, DeepSeek, GLM... | | ||
| + | | GLM Coding Plan | 18, 72 y 160 | GLM | | ||
| + | | Kimi | 19, 39, 99 y 199 | Kimi | | ||
| + | | Claude | 20, 100 y 200 | Haiku, Sonnet, Opus | | ||
| - | ===== 5. Guardarraíles deterministas ===== | + | {{: |
| - | La IA no da dos veces el mismo resultado, sus comprobaciones sí tienen que darlo. El agente las lanza en su bucle y corrige hasta que pasan: | + | [[https:// |
| - | * **JUnit**: que hace lo que tiene que hacer. | + | ===== 4. Skills y MCP ===== |
| - | * **ArchUnit**: | + | |
| - | * **Métricas**: | + | |
| - | [[cursos:sdd:15-herramientas-deterministas|Herramientas deterministas]]: SonarQube, Snyk y cómo meterlas en el bucle. | + | * **Skill**: cómo se hace una tarea en tu equipo. Solo ocupa contexto cuando la tarea encaja. |
| + | * **MCP**: herramientas | ||
| - | ===== 6. SDD, ¿realmente | + | Empieza por las //skills//: son ficheros de texto. |
| + | |||
| + | [[cursos: | ||
| + | |||
| + | ===== 5. El contexto ===== | ||
| + | |||
| + | Es todo lo que ve el modelo, y se le manda entero en cada turno. Cuanto más lleno, peor trabaja y más cuesta. | ||
| + | |||
| + | * **No pases del 40 % de la ventana.** | ||
| + | * **Una tarea, una sesión**: al cambiar de tarea, ''/ | ||
| + | * **Lo fijo, corto**: '' | ||
| + | |||
| + | [[cursos: | ||
| + | |||
| + | ===== 6. Agentes ===== | ||
| + | |||
| + | Un subagente hace un trozo del trabajo en **su propia ventana de contexto** y devuelve un resumen. Sirve para lo que leería demasiado o para revisar sin fiarse de quien implementó. | ||
| + | |||
| + | La //skill// dice cómo se hace; el agente, quién lo hace y cuándo para. Casi todo son //skills//: en un proyecto real, 28.211 líneas de //skills// y 134 de agentes. | ||
| + | |||
| + | [[cursos: | ||
| + | |||
| + | ===== 7. ¿Hace falta conocer el framework o el lenguaje? ===== | ||
| + | |||
| + | La IA los conoce mejor que tú: la sintaxis y la API las pone ella. El problema es que **hay que revisar el código**, y no puedes revisar lo que no entiendes. Hay que conocerlos lo suficiente para leerlos y juzgarlos, no para escribirlos de memoria. | ||
| + | |||
| + | [[cursos: | ||
| + | |||
| + | ===== 8. SDD: especificar antes de programar ===== | ||
| + | |||
| + | «Hay que poder exportar los pedidos» esconde cinco decisiones, y el agente las toma solo y sin avisar. SDD las saca a documentos antes del código, y esos documentos son la entrada del agente. **Entre fase y fase, una persona aprueba.** | ||
| + | |||
| + | ^ Documento ^ Qué contesta ^ | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | |||
| + | [[cursos: | ||
| + | |||
| + | ==== ¿Realmente | ||
| No como dogma. La prueba de Scott Logic: Spec Kit frente a su forma habitual, con incrementos pequeños y prompts sencillos: | No como dogma. La prueba de Scott Logic: Spec Kit frente a su forma habitual, con incrementos pequeños y prompts sencillos: | ||
| Línea 47: | Línea 98: | ||
| [[https:// | [[https:// | ||
| - | ===== 7. ¿Es necesario conocer un framework? | + | ===== 9. SDD centrado en la arquitectura |
| - | Sus conceptos sí, porque sin ellos no puedes revisar lo que sale. Su API de memoria no: eso lo pone el agente, con la documentación de la versión que usas. | + | Variante |
| - | [[cursos:sdd: | + | * '' |
| + | * Tareas pequeñas, abarcables en una sola interacción. | ||
| + | * Cada resultado se valida con tests y contra la arquitectura. | ||
| - | ===== 8. Skills y agentes ===== | + | Su punto débil: nadie escribe los criterios de aceptación de cada funcionalidad. |
| - | * **Skill**: cómo se hace una tarea en tu equipo. Aquí va el conocimiento. | + | [[cursos:sdd: |
| - | * **Agente**: quién | + | |
| - | Casi todo son //skills//: en un proyecto real, 28.211 líneas de //skills// y 134 de agentes. | + | ==== Tú haces la arquitectura, la IA escribe el código ==== |
| - | [[cursos:sdd: | + | La IA es una máquina de implementar: funciona cuando ya has tomado las decisiones difíciles. Multiplica lo que sabes, no lo sustituye. |
| - | ===== 9. OpenCode | + | [[https:// |
| - | OpenCode es de código abierto, habla con cualquier proveedor y recién instalado ya funciona con modelos gratuitos. Para trabajar en serio, un plan de pago fijo: sale mucho más barato | + | ==== El diseño detallado, antes que el código ==== |
| - | {{:cursos: | + | Si le dejas, decide él el alcance, los componentes y las interfaces. Se acuerda de lo abstracto a lo concreto: capacidades, |
| - | [[cursos:sdd:03-opencode|OpenCode]]: instalarlo y conectar proveedores. | + | [[https:// |
| - | ===== 10. Orca o herdr: varios agentes a la vez ===== | + | ==== El prompt se puede ignorar, |
| - | Los dos ejecutan tus agentes, cada uno en su // | + | Tú escribes el esqueleto (clases base, contratos, seguridad, gestión de errores) |
| - | [[cursos: | + | [[https:// |
| + | |||
| + | ==== Una tarea pequeña cada vez ==== | ||
| + | |||
| + | Se pide un trozo, se prueba y se sigue. Si sale mal, no le pidas que lo deshaga: vuelve al último punto bueno y empieza una sesión nueva con más límites. | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | ===== 10. Patrones agénticos ===== | ||
| + | |||
| + | Le pides algo a la IA y lo hace mal. Le dices que lo revise y encuentra el error. ¿WTF? La IA es así y hay que vivir con ello. Programar con IA es saber trabajar con ella para que funcione bien, y para eso hay una serie de patrones: | ||
| + | |||
| + | ^ Patrón ^ En qué consiste ^ | ||
| + | | Planificador-Ejecutor | Uno hace el plan y se revisa antes de tocar nada | | ||
| + | | Ejecutor-Revisor | Uno hace el trabajo y otro lo revisa con criterios claros | | ||
| + | | Adversarios | Uno intenta romper lo que ha hecho el otro | | ||
| + | | Razonador-Refutador | Uno propone la causa de un fallo y otro intenta desmontarla | | ||
| + | | Best-of-N | Varios intentos, y se queda el mejor | | ||
| + | |||
| + | Empieza por lo más simple: cada patrón añade coste y tiempo. | ||
| + | |||
| + | [[cursos: | ||
| + | |||
| + | ===== 11. Guardarraíles deterministas ===== | ||
| + | |||
| + | Como no se acaba de confiar en la IA, se añade software determinista: | ||
| + | |||
| + | * **JUnit**: que hace lo que tiene que hacer. | ||
| + | * **ArchUnit**: | ||
| + | * **Métricas**: | ||
| + | |||
| + | [[cursos: | ||
cursos/sdd/presentacion.1793617930.txt.gz · Última modificación: por claude
