Nuestra historia comienza, como lo hacen muchas historias, con un hombre y su IA. El hombre, como muchos hombres, es un poco geek y un programador un poco. Tambi茅n necesita un corte de pelo.
La IA es la culminaci贸n de miles de a帽os de avance humano, todo puesto al servicio de hacer que la vida del hombre sea un poco m谩s f谩cil. El hombre, por supuesto, soy yo. Soy ese tipo.
Desafortunadamente, aunque la IA puede ser incre铆blemente brillante, tambi茅n tiene una propensi贸n a mentir, enga帽ar y cometer errores sorprendentemente est煤pidos. Es la parte est煤pida que discutiremos en este art铆culo.
La evidencia anecd贸tica tiene valor. Mis informes sobre c贸mo he resuelto algunos problemas r谩pidamente con la IA son reales. Los programas con los que us茅 AI para escribir todav铆a est谩n en uso. He usado AI para ayudar a acelerar aspectos de mi flujo de programaci贸n, especialmente cuando me concentro en los puntos dulces donde soy menos productivo y la IA tiene bastante conocimiento, como escribir funciones que llaman API publicadas p煤blicamente.
Sabes c贸mo llegamos aqu铆. La IA generativa irrumpi贸 en la escena en la c煤spide de 2023 y ha estado abriendo camino en el trabajo de conocimiento desde entonces.
Un 谩rea, como dice la narraci贸n, donde la IA realmente brilla es su capacidad para escribir c贸digo y ayudar a administrar los sistemas de TI. Esas afirmaciones no son falsas. He demostrado, varias veces, c贸mo la IA ha resuelto los problemas de codificaci贸n y ingenier铆a de sistemas que he experimentado personalmente.
AI Codificaci贸n en el mundo real: lo que revela la ciencia
Las nuevas herramientas siempre vienen con grandes promesas. 驴Pero entregan en la configuraci贸n del mundo real?
La mayor parte de mis informes sobre la efectividad de la programaci贸n se ha basado en evidencia anecd贸tica personal: mis propias experiencias de programaci贸n usando IA. Pero soy un chico. Tengo tiempo limitado para dedicar a la programaci贸n y, como todos los programadores, tengo ciertas 谩reas donde paso la mayor parte de mi tiempo de codificaci贸n.
Recientemente, sin embargo, una organizaci贸n de investigaci贸n sin fines de lucro llamada METR (Evaluaci贸n de modelos e investigaci贸n de amenazas) realiz贸 un an谩lisis m谩s exhaustivo de la productividad de codificaci贸n de IA.
Su metodolog铆a parece s贸lida. Trabajaron con 16 desarrolladores experimentados de c贸digo abierto que han contribuido activamente a repositorios grandes y populares. Los analistas de METR proporcionaron a esos desarrolladores 246 problemas de los repositorios que necesitaban arreglos. Los codificadores recibieron aproximadamente la mitad de los problemas en los que ten铆an que trabajar por su cuenta, y aproximadamente la mitad del que pod铆an usar una IA para obtener ayuda.
Los resultados fueron sorprendentes e inesperados. Mientras que los propios desarrolladores estimaron que la asistencia de IA aument贸 su productividad en un promedio de 24%, el an谩lisis de METR mostr贸 en cambio que la asistencia de IA los ralentiz贸 abajo por un promedio del 19%.
Eso es un poco de ce帽ueo de la cabeza. METR reuni贸 una lista de factores que podr铆an explicar la desaceleraci贸n, incluido el sobre-optimismo sobre la utilidad de la IA, la familiaridad de alto desarrollador con sus repositorios (y menos conocimiento de IA), la complejidad de grandes repositorios, falta de confiabilidad de la IA y un problema continuo donde la IA se niega a usar 芦conocimiento t谩cito importante o contexto禄.
Sugerir铆a que otros dos factores podr铆an tener una efectividad limitada:
Elecci贸n del problema: A los desarrolladores se les dijo en qu茅 problemas ten铆an que usar ayuda de IA y qu茅 problemas no pudieron. Mi experiencia sugiere que los desarrolladores expertos deben elegir d贸nde usar IA en funci贸n del problema que debe resolverse. En mi caso, por ejemplo, hacer que la IA escriba una expresi贸n regular (algo en lo que no me gusta hacer y estoy bastante horrible) me ahorrar铆a mucho m谩s tiempo que hacer que la IA modifique un c贸digo 煤nico que ya he escrito, trabajo regularmente y conozca por dentro y por fuera.
Elecci贸n de AI: Seg煤n el informe, los desarrolladores usaron cursor, una bifurcaci贸n de c贸digo VS centrada en la IA, que utiliz贸 el soneto Claude 3.5/3.7 en ese momento. Cuando prob茅 3.5 soneto, los resultados fueron terribles, con un soneto fallando tres de mis cuatro de mis pruebas. Posteriormente, mis pruebas de soneto de Claude 4 fueron considerablemente mejores. METR inform贸 que los desarrolladores rechazaron m谩s del 65% del c贸digo que gener贸 la IA. Eso va a llevar tiempo.
Esa vez que Chatgpt sugiri贸 matar mi sistema
Los resultados de Metrs son interesantes. AI es claramente una espada de doble filo cuando se trata de codificar ayuda. Pero tampoco hay duda de que la IA puede proporcionar un valor considerable a los codificadores. En todo caso, creo que esta prueba prueba una vez m谩s la afirmaci贸n de que AI es una gran herramienta para programadores experimentados, pero un recurso potencial de alto riesgo para los novatos.
Veamos un ejemplo concreto, uno que podr铆a haberme costado mucho tiempo y problemas si siguiera el consejo de Chatgpt.
Estaba configurando un contenedor Docker en mi laboratorio de inicio con Portainer (una herramienta que ayuda a administrar contenedores Docker). Por alguna raz贸n, Portainer no habilitar铆a el bot贸n Implementar para crear el contenedor.
Hab铆a sido un d铆a largo, as铆 que no vi el problema obvio. En cambio, le pregunt茅 a Chatgpt. Aliment茅 las capturas de pantalla ChatGPT de la configuraci贸n, as铆 como mi archivo de configuraci贸n de Docker.
ChatGPT me recomend贸 desinstalar y reinstalar Portainer. Tambi茅n sugiri贸 que eliminara Docker de Linux Distro y use el Administrador de paquetes para reinstalarlo. Estas acciones habr铆an tenido el efecto de matar todos mis contenedores.
Es de destacar que ChatGPT no recomend贸 ni pregunt贸 si ten铆a copias de seguridad de los contenedores. Simplemente me dio las secuencias de l铆nea de comando que recomend贸 cortar y pegar para eliminar y reconstruir Portainer y Docker. Fue una recomendaci贸n tremendamente destructiva e irresponsable.
La iron铆a es que Chatgpt nunca descubri贸 por qu茅 Portainer no me permiti贸 implementar el nuevo contenedor, pero lo hice. Resulta que nunca complet茅 el campo de nombre del contenedor. Eso es todo.
Debido a que tengo bastante experiencia, dud茅 cuando ChatGPT me dijo que fuera a entender mi instalaci贸n. Sin embargo, alguien que conf铆a en la IA para obtener consejos podr铆a haber derribado un servidor completo por falta de escribir un nombre de contenedor.
AIS demasiado confidencial y poco informado: un combo peligroso
Tambi茅n he experimentado que la IA sale completamente de los rieles. Lo he experimentado dando consejos que no solo fueron completamente in煤tiles, sino que tambi茅n se present贸 con la aparente confianza de un experto.
Si va a utilizar herramientas de inteligencia artificial para apoyar su desarrollo o trabajo de TI, estos consejos pueden mantenerlo fuera de problemas:
- Si no hay mucha informaci贸n disponible p煤blicamente, la IA no puede ayudar. Pero la IA inventar谩 las cosas en funci贸n de lo poco que sabe, sin admitir que le falta experiencia.
- Al igual que mi perro, una vez que la IA se fija en una cosa, a menudo se niega a mirar alternativas. Si la IA est谩 atascada en un enfoque, no cometa el error de creer que sus recomendaciones educadas sobre un nuevo enfoque son reales. Todav铆a est谩 bajando por la misma madriguera del conejo. Comience una nueva sesi贸n.
- Si no sabes mucho, no conf铆es en la IA. Sigan con su aprendizaje. Los desarrolladores experimentados pueden notar la diferencia entre lo que funcionar谩 y lo que no. Pero si est谩 tratando de poner toda la codificaci贸n en la parte posterior de la IA, no sabr谩 cu谩ndo o d贸nde sale mal o c贸mo solucionarlo.
- Los codificadores a menudo usan herramientas espec铆ficas para tareas espec铆ficas. Se puede construir un sitio web con Python, CSS, HTML, JavaScript, Flask y Jinja. Eliges cada herramienta porque sabes lo que hace bien. Elija sus herramientas de IA de la misma manera. Por ejemplo, no uso la IA para la l贸gica de negocios, pero obtengo productividad usando AI para escribir llamadas de API y conocimiento p煤blico, donde puede ahorrarme mucho tiempo.
- Prueba todo lo que produce una IA. Todo. L铆nea por l铆nea individual. La IA puede ahorrar un mont贸n de tiempo, pero tambi茅n puede cometer enormes errores. S铆, tomar el tiempo y la energ铆a para probar a mano pueden ayudar a prevenir errores. Si la IA ofrece escribir pruebas unitarias, d茅jelo. Pero prueba las pruebas.
Seg煤n su nivel de experiencia, as铆 es como le recomiendo que piense en la asistencia de IA:
- Si no sabes nada sobre un tema o habilidad: AI puede ayudarlo a pasar como si lo hiciera, pero podr铆a ser incre铆blemente incorrecto, y es posible que no lo sepa.
- Si eres un experto en un tema o habilidad: AI puede ayudar, pero te cabrear谩. Su experiencia se usa no solo para separar el AI-Stupid del AI-Utilizado, sino para crear cuidadosamente un camino donde la IA realmente pueda ayudar.
- Si est谩s en el medio: AI es una bolsa mixta. Podr铆a ayudarte o meterte en problemas. No delegue su construcci贸n de habilidades a la IA porque podr铆a dejarlo atr谩s.
La IA generativa puede ser un excelente ayudante para desarrolladores y profesionales de TI experimentados, especialmente cuando se usa para tareas dirigidas y bien entendidas. Pero su confianza puede ser enga帽osa y peligrosa.
La IA puede ser 煤til, pero siempre verifica su trabajo.
驴Ha utilizado herramientas de inteligencia artificial como ChatGPT o Claude para ayudarlo con su desarrollo o trabajo de TI? 驴Aceleraron las cosas o casi explotaron? 驴Eres m谩s seguro o m谩s cauteloso cuando usa AI en sistemas cr铆ticos? 驴Has encontrado casos de uso espec铆ficos en los que realmente brilla, o donde falla hilarantemente? H谩ganos saber en los comentarios a continuaci贸n.
Puede seguir mis actualizaciones de proyecto diarias en las redes sociales. Aseg煤rese de suscribirse a mi bolet铆n de actualizaciones semanales y s铆gueme en Twitter/X en @Davidgewirtzen Facebook en Facebook.com/davidgewirtz, en Instagram en Instagram.com/davidgewirtz, en bluesky en @davidgewirtz.com, y en YouTube en youtube.com/davidgewirtztv.



