Codificando con IA? Mis 5 mejores consejos para examinar su salida y mantenerse fuera de los problemas

Publicado el:

spot_img
- Advertisment -spot_img

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.

- Advertisement -[wpcode id="699"]

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.

- Advertisement -[wpcode id="699"]

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.

Leer  El costo oculto de los generadores de video de IA del que nadie te advierte

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».

- Advertisement -[wpcode id="699"]

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.

Leer  El Remote Work Essentials que los equipos de pequeñas empresas confían en 2025

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:

  1. 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.
  2. 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.
  3. 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.
  4. 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.
  5. 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.
Leer  Los creadores de YouTube Desnowaran Google usa sus videos para entrenar AI

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.

spot_img

Relacionada

Leave a Reply

Por favor ingrese su comentario!
Por favor ingrese su nombre aquí

spot_img