- En tiempos recientes, los usuarios de computadoras repiten una gran cantidad de tareas sin sentido ajenas a su propia voluntad, siguiendo lo que la computadora les indica
- Los LLM están influyendo en la forma en que los desarrolladores diseñan APIs, y ya han surgido predicciones de que pronto la IA escribirá la mayor parte del código mientras los desarrolladores adoptan funciones sugeridas por la IA
- Por ejemplo, Soundslice añadió en la práctica una función que ChatGPT había indicado erróneamente
- Esto ocurre porque los LLM analizan innumerables APIs y proponen diseños intuitivos que probablemente serían lo primero que se le ocurriría a un desarrollador
- Los LLM no son adecuados para desarrollar ideas nuevas o enfoques únicos, pero en la mayoría de los casos puede ser efectivo seguir el diseño más obvio
- Ya hemos entrado en una era en la que la IA no solo guía el uso de herramientas, sino también la forma en que se diseñan
Gaslight-driven development
Tareas sin sentido normalizadas
- En los últimos 10 años, cualquiera que use computadoras ha repetido una y otra vez tareas esencialmente innecesarias como registrarse, verificar el correo, aceptar cookies e ingresar captchas
- Aunque no era lo que querían, los usuarios no tuvieron más opción que hacer lo que la computadora les pedía
- A través de estas tareas repetitivas, ya nos hemos acostumbrado en cierta medida a vivir obedeciendo lo que nos indican las máquinas
La realidad del desarrollo que los LLM están cambiando
Qué significa este fenómeno
- Es difícil juzgar si este cambio es positivo o negativo
- Por un lado, como los LLM han aprendido de una enorme cantidad de APIs, tienden a proponer la forma más “intuitiva” desde la perspectiva del desarrollador
- También es una nueva forma de probar una API desde la perspectiva de un principiante (newbie’s POV)
- Antes, si el desarrollador se equivocaba, buscaba la documentación y lo corregía por su cuenta; ahora, como el LLM sigue proporcionando ejemplos de uso incorrectos, el desarrollador puede detectar el problema más rápido
Límites y dilemas
- Este enfoque no es adecuado para trabajos innovadores
- Los LLM no entienden patrones poco familiares ni conceptos completamente nuevos
- Al final, en ámbitos como las APIs, lo “común” puede ser lo mejor
- En la mayoría de los casos, en vez de diseñar algo complejo, conviene más una forma que tanto la IA como los desarrolladores puedan entender de manera intuitiva
Conclusión: el inicio de una nueva era
- La IA ya no se limita a usar las herramientas dadas, sino que empieza a tener opiniones sobre cómo deberían diseñarse las propias herramientas
- Y esas opiniones a menudo terminan gaslighteando a desarrolladores y organizaciones, como si “siempre hubiera sido así”
- En adelante, es muy posible que desarrollar de acuerdo con las expectativas y el sentido común de la IA se convierta en un estándar natural
6 comentarios
A veces siento que al gran concepto de la dependencia de trayectoria le están clavando un clavo muy potente llamado dependencia de los LLM. Esa sensación de que estamos pasando de “porque lo venimos usando desde antes” a “porque al LLM le gusta”... al final, ¿en qué terminará todo esto?
Eso es algo que se viene usando desde hace tiempo, y el LLM lo aprendió...
"Ahora puede apagar la computadora"
¡Una analogía perfecta!
Opinión de Hacker News
421: Misdirected Request, aunque también existe la opción de usar el501: Not Implementedreal; si el matiz de501no encaja, propongo un nuevo código:513: Your Coding Assistant Is WrongReferencia wiki de códigos de estado HTTP
513: Your Coding Assistant Is Wrongme dio muchísima risa, gracias por eso; por otro lado, también quisiera proponerHTTP 407 Hallucination, con el sentido de que el servidor entiende la solicitud, pero determina que no coincide con la realidadCaso de GPS is wrong
(se proporciona código JavaScript)
Enlace al artículo científico, Referencia wiki de neurociencia
Captura de pantalla de Chess Royale
tx.updatese encarga tanto de insertar como de actualizar entidades, pero el LLM seguía escribiendo código contx.create, así que al final terminé creando también una funcióntx.create; me hizo pensar que, en este tipo de partes confusas, quizá no solo los LLM sino también desarrolladores reales han desperdiciado muchísimo tiempo inútilmentetx.createno existía originalmente, entonces nadie iba a perder tiempo con eso, ¿no?puten vez deupdate;updatepuede llevar a confusiónupsertputsugiere sobrescribir el contenido existente, mientras queupsertsí significa tanto insertar como actualizarTambién creo que razones como la verificación por correo o el registro de usuarios no surgieron porque la computadora lo exigiera, sino por decisiones de diseño tomadas por humanos
En adelante, más que centrarnos en la legibilidad del código, los principios SOLID o la complejidad, creo que será más importante qué tan bien puede mi IDE agentic indexar el contexto del código y qué tan buena capacidad de generación muestra el modelo sobre ese código
Como la velocidad de cambio del código va a aumentar muchísimo, la mantenibilidad del código pasará a ser una métrica aún más clave, y creo que vendrá un mundo en el que recibirán más atención la alineación entre prompts y código, así como la utilidad de código que encaja bien casi por casualidad
Por ejemplo, en AWS está
devyprod, mientras que en Expo estátestyproduction, así que al ir saltando entre varios proyectos uno termina gastando más energía mental de la que pareceSupongo que los LLM deben enfrentar este problema a una escala muchísimo mayor
Si pudiéramos usar en cosas realmente significativas esas sinapsis cerebrales que hoy se gastan en confusiones innecesarias de nombres/comportamientos de APIs, creo que eso sería lo ideal
Por más inteligente que sea el LLM al poner nombres, como se basa en un incoherent stochastic process (proceso estocástico incoherente), el problema sigue ahí
Y también quisiera preguntar si alguna vez se ha cuestionado seriamente por qué la nomenclatura de entornos no está unificada
Como ex CTO, pienso que este tipo de cosas son señales de que hace falta mejorar la comunicación interna, los criterios y otros aspectos de la organización
Como son puntos fáciles de corregir y además pueden mejorar la cultura real y la conciencia del equipo, diría que en vez de dejar algo así al LLM habría que atenderlo más directamente
Ver discusión previa en Hacker News
Éxito viral de Soundslice