- En la nueva era del desarrollo de software se siente un cambio: me involucro menos en lo que hago
- Al delegar a los LLM la escritura de funciones y la corrección de errores, disminuye la sensación de inmersión
- Se pasa de lo manual a un estado de auto-pilot, donde se repite el proceso de revisar y aceptar el trabajo del LLM
- Cuando alguien se sumerge en sus habilidades, entra en un estado de flujo (Flow). Eso equivale a convertirse en un artesano
- Significa un estado en el que desaparece la frontera entre sujeto y objeto y uno se hunde profundamente en la resolución de problemas complejos
- Muchas personas afirman que el reciente aumento en el uso de LLM dentro del flujo de trabajo de programación no es más que la introducción de un trabajo en un nivel más alto de abstracción
- En la evolución de Binary → Assembly → C → lenguajes de alto nivel, se fue otorgando cada vez más poder
- Pero la adopción de LLM no es simplemente otro cambio de nivel de abstracción
- Los cambios anteriores, de binario a ensamblador y de ensamblador a C, redujeron la carga cognitiva y ayudaron a enfocarse en la lógica
- Los LLM hacen que uno se enfoque en la estructura general del programa y no en la lógica del programa → es distinto de los cambios anteriores
- Un programa se construye a partir de piezas
- Entendemos nuestros programas al comprender todas las piezas con las que los ensamblamos
- Ahora, al delegar la creación de esas piezas, delegamos el trabajo artesanal y gestionamos la construcción
- Nos involucramos menos en el acto de crear, y se reduce nuestra sensación de propiedad sobre el código que produce el LLM
- Es decir, hemos cambiado la artesanía (craftsmanship) por la gestión (management)
- Nos interesa más el resultado del trabajo que las piezas exactas que estamos construyendo
- Programar deja de ser el objetivo y se convierte en un medio
- Afortunadamente, o desafortunadamente, siguen apareciendo problemas en el código, y hay que entender su contexto y corregirlos
- Eso significa que todavía se necesita intervención humana en el proceso de programación
- Es posible involucrarse más en la programación usando agentes LLM
- Nosotros nos enfocamos en abstracciones de alto nivel y los agentes LLM hacen diligentemente los cambios
- Pero todavía no existen herramientas adecuadas
- La carga cognitiva de muchos cambios consecutivos es alta, y hace falta una forma de manejarla
- Como la memoria humana tiene límites (en el caso de la memoria de corto plazo solo puede recordar 7±2 elementos), se necesitan herramientas bien diseñadas que permitan representar la información en distintos niveles de abstracción
- Así se puede captar el detalle y luego ampliar la vista hacia el panorama general
2 comentarios
¿La maestría artesanal tiene que aplicarse solo al código? ¿No podríamos tener maestría artesanal en el software, en el producto mismo?
Originalmente, la programación nunca fue el objetivo, sino el medio.
El desarrollo de estas herramientas ha avanzado para que los humanos puedan dedicar tiempo a ideas y diseño más grandes, en lugar de a cosas innecesarias.
Compiladores, sistemas operativos, lenguajes de scripting, etc.