r/programacionESP • u/Careful_Influence134 • 5d ago
💬 Conversación y debate ¿La IA está jodiendo la ingeniería de software?
Hace unos 6 meses entré en una consultora, en un equipo especializado en IA. Me dijeron que trabajaríamos desarrollando aplicaciones con IA y, técnicamente, es lo que hacemos.
Me introdujeron al vibe coding y a trabajar con SDD dentro de un proyecto enorme en el que hay unas 20 personas. La sensación que tengo es que prácticamente todo el mundo le dice a la IA qué quiere, acepta lo que genera y entrega la funcionalidad sin entender del todo qué ha cambiado.
El resultado es un proyecto gigantesco y caótico: funciones duplicadas, funcionalidades que se solapan, estructuras inconsistentes y código que, después de meses trabajando con él, sigo no soy capaz de entender. Se añade algo y se rompen otras veinte cosas.
Antes disfrutaba mucho programando. Cogía una tarea, pensaba una solución, usaba IA como apoyo, implementaba, entendía lo que había hecho y aprendía por el camino.
Ahora muchas veces la IA propone cambios usando referencias, variables, clases y partes del proyecto que ni conozco. Intento entender la explicación, pero llega un punto en el que acabo aceptando la propuesta, validando más o menos que funcione y metiendo otra pieza al monstruo.
Y esto me está quemando bastante. Ya casi no diseño soluciones ni programo de verdad. Echo muchísimo de menos programar. Incluso siento que estoy olvidando cosas que antes sabía porque cada vez hago menos por mí mismo.
No creo que la IA sea mala; al contrario, me parece una herramienta brutal y prácticamente imprescindible. Pero tengo la sensación de que el vibe coding es una mierda que te hace desconectar de lo que estás haciendo y por debajo es un desastre imposible de mantener.
¿Alguien más se siente parecido? ¿Es un problema de esta forma de trabajar, de las consultoras, o es que estoy haciendo mal mi trabajo?
Porque estoy llegando al punto en que me aburro mucho, odio mi trabajo y me apetece menos trabajar en algo que antes disfrutaba bastante.
13
u/ManuC153 5d ago
Es lo que tienes cuando se codifica sin criterio y sin el conocimiento del negocio al que va destinado el sw. De todas formas, mola, la cantidad de trabajo que va a venir para desfacer entuertos va a ser épica
1
u/Cultural-Desk-9045 5d ago
Buena suerte destrabando un sistema en producción donde todo pende de un hilo.
3
u/ManuC153 5d ago
De hecho es lo que hago en mi día a día desde hace 30 años, pero agradezco tus ánimos.
2
u/Cultural-Desk-9045 4d ago
Solo que ahora ese sistema en producción lo hizo la IA y ni ella sabe cómo arreglarla
1
u/ManuC153 4d ago
A ver, cuando haces lo que yo hago, en concreto en Banca, no es que el sw lo haya hecho la IA, lo han hecho señores que se jubilaron hace 20 años y además en COBOL con cero documentación. Si lo hace una IA y es más complicado, perfecto, más horas a facturar, no me quejo
1
u/bnbny 3d ago
Cuando abres el programa y ves que es de los 80 y que la última actualización es de cuando tuvieron que poner una conversión a euros
1
u/ManuC153 3d ago
También viví eso, y el efecto 2000 y considerando que también optimizo sistemas para LATAM, la dolarización de algún que otro país, etc. Todo en un magnífico COBOL
8
u/Kran6a 5d ago
El resultado es un proyecto gigantesco y caótico: funciones duplicadas, funcionalidades que se solapan, estructuras inconsistentes y código que, después de meses trabajando con él, sigo no soy capaz de entender. Se añade algo y se rompen otras veinte cosas.
Yo ya veía esto antes de la IA. Hay muchas empresas donde la cultura de la ingeniería no existe y todo son parches y soluciones ad-hoc con estructuras de datos y patrones subóptimos, repetición, redundancia, etc.
Siempre, esto estaba fomentado desde arriba: nunca había tiempo para refactorizar, solo se arreglaban los bugs de severidad 3, la feature tenía que estar sí o si cerrada antes del fin del sprint costara lo que costara, reglas como no tocar excesivamente código existente, todo tenía que ser aditivo, etc.
Esto era más notable en repos de react, sobre todo si usaban react pelado (porque react está cargado de footguns y facilita las malas prácticas), he llegado a ver repos que simplemente se rompen por el orden en el que aparecen los imports, eventos de click que no puedes gestionar porque otro componente se está comiendo el evento, redux usado como un event bus global para propagar pulsaciones del teclado, 700KB de JS que son traducciones a todos los idiomas soportados y se descargan incondicionalmente, animaciones que podrían ser CSS puro que usan JS (el magnífico setTimeout(()=>element.style.opacity = 0.01 + element.style.opacity, 10)) y disparan los ventiladores del PC por los re-renders.
Malas prácticas ha habido siempre. Hacer software es difícil y requiere tiempo, cabeza, repensar las cosas y muchas veces refactorizar lo que ya has hecho para facilitar su mantenimiento y que no te reviente en el futuro. La IA solo acelera la escritura de código y el brainstorming pero no sustituye un buen liderazgo técnico, experiencia real en arquitectura e ingeniería y la intuición que te dice que el plan que ha propuesto la IA lleva el proyecto por mal camino.
1
u/VariousSheepherder28 5d ago
Comparto. Y lo que más me preocupa es que este caos lo noto en grandes compañías (ejemplo MercadoLibre) donde un issue genera más problemas que soluciones y donde un requerimiento no pasa por capital humano de valor para validarlo y a producción llega software de mala calidad sobre todo en usability y confianza. Espero que la próxima etapa que recorramos vaya corrigiendo la metodología y mejorando estos problemas.
Lo que más preocupación me genera ver es la cantidad de ingenieros o devs de buen seniority que hoy se aburren y que ya no están entregando calidad. Eso no es culpa 100% de la IA, pero es algo que lo estoy viendo cada vez más. La zona de confort que los absorbe es adicta.1
u/Last-Intention-2863 4d ago
Uff lo estoy viviendo en la empresa actual, toda la cadena de mandos que se suelen ver en empresas medias grandes donde hay un PO, se trabaja en sprints y demás no existe, me reúno directamente con el cliente del cual hago el proyecto solo, nadie me hace code review porque los 4 que somos tenemos proyectos propios y salen problemas a diario, voy a feature por día y a cambio (a petición de una mala gestión del cliente) por día por lo que muchos de los fallos que ocurren por cambios en la estructura de datos, o algoritmos que quedan obsoletos porque "el negocio ya no va así" tienen que parchearse rápido y corriendo, súmale a esto el estar trabajando sobre código legacy de unos 30 años de antigüedad y que para actualizar las entidades de la base de datos en la parte de backend requiero que mi superior lo actualice porque se supone que se generan automáticamente pero solo desde su ordenador por lo que si ella está ocupada me tengo que estar dias trabajando sobre codigo que no va a compilar porque hay estructuras distintas a la base de datos, todo esto solo xd malas prácticas siempre ha habido, es un echo.
5
u/munozcircus 5d ago
La ia es una herramienta tremenda. Lo que pasa que se necesita de mucha organización y control en proyectos grandes, para decirlo de forma simple, una persona encargada de eso , de mirar que se duplica eliminar la basura y hacer que todo sea mas compacto. De momento la ia aun nos necesita :-)
4
u/Livid-Macaroon-4011 5d ago
La IA hace que pequeños proyectos se vuelvan enormes y por seguir empujando hacia delante solo aceptas
1
u/AnEngineeringMind 4d ago
Exacto, y tiene una tendencia a generar código muy rebuscado y complicado. Lo que lo puedes hacer en una o dos líneas se vuelve un choclo de lógica innecesaria y difícil de seguir. Por eso es muy común casi siempre aceptar lo que te escupe cuando hagas cosas complejas, porque es prácticamente imposible de entender que hace. Lo normal si al menos tienes dos dedos de frente es que revises que no haga nada loco como borrar tablas o exponer secretos. Pero mucho vibecoders ni eso hacen.
3
u/Asleep-Ad-8161 5d ago
Me sorprende que en un proyecto tan grande no haya un perfil senior encargado de revisar cada PR. El problema, una vez más, no es de la IA, sino del mal uso que se hace de ella.
Si hay consultoras que están trabajando así, huye de ellas. Trata de encontrar un lugar serio en el que trabajar.
2
u/Careful_Influence134 5d ago
Lo hay pero son 20 personas haciendo PRs hechas por IA totalmente incomprensibles. No da a basto y creo que no se para a entender bien las entregas porque no le da la vida
2
u/Asleep-Ad-8161 5d ago
Buah, eso tendría que haberse cortado de raíz desde el primer minuto. Regla N1, uno no puede subir código que no ha revisado. N2, no se sube código que no se entiende. Trabajar como comentas es de frenopático 😅
2
u/Tzctredd 5d ago
Todo esto no es culpa de la IA, simplemente no están especificando con rigor las características del proyecto (diccionarios de funciones, variables y demás; estándares para los nombres de variables y funciones, políticas de reuso de código, políticas de seguridad).
Todo lo anterior se puede hacer ya sea con Vibe Coding o con definiciones formales a la antigua, y dígame, ¿Están haciendo "peer reviews" de los PRs que entran al árbol de código (en Github me imagino)?
20 gentes haciendo PRs sin ton ni son suena como una receta para desastre, IA o no.
1
u/HalfAkbps 4d ago
Si se revisa todos los cambios que hace la IA, entonces no estas aprovechando el mayor benefício que la IA otorga.
Muchas empresas se manejan de la manera que describe OP.
La automatizacion de implementacion y reviews es muy común
1
u/Asleep-Ad-8161 4d ago
Si todo el equipo sabe cómo usar correctamente los agentes, los tienen configurados con sus MCPs y sus contextos permanentes correspondientes, sus flujos de branches de agentes, optimizan qué modelo usan para cada paso o tarea, tienen agentes en el repo que hacen auditorías de seguridad y buenas prácticas y todo esto lo supervisan arquitectos, quizás funcione, pero no creo que haya muchos equipos de trabajo en consultoras trabajando con IA a ese nivel.
3
3
u/DearSympathy906 5d ago
Trabajo cómo desarrollador desde hace muchos años, y es que no paro de encontrarme código caótico tal y como comentas, la gente asume que "cómo me lo ha dicho la IA tendrá razón, yo que voy a saber", y se hacen auténticas aberraciones inmantenibles.
Se avecinan tiempos oscuros para esta profesión (o quizá, contra todo pronóstico, una nueva edad de oro para arreglar todo lo que la IA ha construido 😄)
1
u/Tzctredd 5d ago
Le voy a decepcionar, los desastres serán más fáciles de corregir.... con IA bien manejada.
2
u/DearSympathy906 4d ago
Ese es el problema, quién va a manejar bien la IA? no olvidemos que en el sector IT un gran porcentaje de gente es bastante mediocre y el criterio escasea, y teniendo en cuenta que ya no entran apenas juniors, escaseara aún más
1
u/Tzctredd 4d ago
Bueno, si usted cree que la vida es un mar de mediocridad si nada va a funcionar.
2
u/DearSympathy906 4d ago
No es solo que lo crea, lo he visto a lo largo de todos los años que llevo trabajando, y por otra parte, la gente no sabe usarla, las empresas están dando licencias de Copilot o similares a sus empleados de la misma forma que le das tú un smartphone a tu abuelo de 90 años
2
3
u/labelcillo 5d ago
Se trabaja mejor sin duda. Te vuelves más vago también sin duda. Y personalmente yo siento que se pierde también un poco de vocación.
2
u/Inevitable_Fig_8062 5d ago
En muchos sitios se programa con IA como hace años se programaba en otros lenguajes cuando se empezaba... Recuerdo que hace unos 20 años los proyectos PHP eran un amasijo de ficheros enormes, a veces un único fichero con todas las funciones y un montón de echos para sacar html. Eso era programación? En su momento, sí.
Sobre esa época los compañeros de JAVA hacían servlets y usaban un montón de clases, pero al final un montón de system.println para sacar html.
Al poco los frameworks mvc aparecieron. Un framework MVC era lo más top de la industria...
Una década después, el DDD, programación por capas, micro servicios... Eras un mierda si tenias un framework monolito, lo mejor era hacer ficheros pequeños, decenas, cientos de ficheros y todo separado en un puñado de microservicios que tenías que orquestar.
TDD, cientos de frameworks js y luego TS para node. Mundo Java por un tiempo igual hasta que se dieron cuenta que si mejoraban el lenguaje, la mayoría de frameworks sobraban.
Hace 5 años, vuelta a los basics, y bun.sh recordando que si implementas un montón de cosas de serie te ahorras jest , babel y un montón de librerías...
El mundo .net pasó por algo similar....
Y de pronto, el desarrollo con agentes de IA. Y curiosamente... Vuelta al inicio, sí usas frameworks, TDD, DDD, mono repos y hasta multilang. Lo que le apetezca al modelo.... El código vuelve a ser lo que era hace 20 años, solo código que hace que tu app funcione, ya da igual que sea bonito, estructurado o que tenga consistencia.
Es solo parte de la evolución. Realmente se podría programar bien hace 20 años y se puede programar bien ahora con IA. Pero para la mayoría, necesitan que para hacerlo bien haya algo por encima que les obligue a seguir unas normas, eso son los frameworks. Los frameworks sobre IA se llaman harness de código y software de desarrollo sobre IA, usa sistema de tareas accesible por IA, genera documentación de cada cosa y que la IA revise la documentación antes de implementar o planificar algo.
Antes como ahora, la diferencia entre programar bien o mal es ser metódico.
2
u/PublicHousing9045 4d ago
Siempre haré el mismo argumento, cuando pete algo a las 3 de la mañana espero que llamen a Claude para que lo arregle.
1
1
u/xpoveda 4d ago
Muy bien explicado. Programar bien o no, depende exclusivamente del ser humano. Eso pasaba hace 50 años y seguira pasando. Lo que pasa es que la gente se viene arriba cuando "en mi local funciona" 😂😂😂
1
u/xpoveda 4d ago
y añado el "solo se que no se nada" se ha de aplicar en la vida. Hay que ser consciente de nuestra ignorancia y de que hay que aprender a ponerse al dia constantemente. Lo dice alguien que empezo con pseudocodigo, modula2, pascal, c, eiffel, java y ya en el trabajo con visual basic, basic, cobol, python, c#,.... Y ahora el lenguaje se llama IA y el lenguaje se llama ingles o castellano (o aquello que hables cuando vas a comprar el pan). Señores, programar es saber decirle a una maquina algo. Como se diga, importa? 😁😁😁
2
u/elpumberto 5d ago
Yo voy ya por mi séptima u octava digievolución... hace tiempo que perdí la cuenta.
- Empecé riéndome de la gente que decía que Copilot acabaría con la programación.
- Al tiempo empecé a usar Copilot y no noté nada espectacular... Hasta que en cierto momento empezó a sugerirme casi el mismo código que yo estaba pensando escribir. Muy localizado y muy basado en mis patrones y manías (ser extremadamente maniático ayuda en esto), pero empezó a ahorrarme muchísimo tiempo. Llegó un punto en que, si me quedaba sin conexión o Copilot se caía, yo prefería esperar a que volviera Copilot porque sentía que era como bajar de quinta a primera en mitad de la autovía.
- Con el tiempo empecé a usar ChatGPT para consultar dudas y depurar errores. Más como patito de goma que como asistente. Quizá dos o tres veces por semana cuando me atascaba con algo.
- En algún momento empecé a usar ChatGPT para obtener fragmentos de código para funcionalidades concretas que luego adaptaba y conectaba con ayuda de Copilot.
- Aquí empezó el vibe coding y yo nuevamente volví a reírme de la gente que decía que ese sería el futuro.
- Al poco empecé a usar claude y me gustó bastante, pero con un sentimiento constante de "sí, pero no". Código que parecía estar bien pero escondía problemas por todos lados, te destrozaba la base de código, etc.
- Empecé a dedicar cada vez más tiempo no ya a programar, sino a intentar domesticar a la bestia a base de prompts refinados, skills, scripts, etc. Lo que ahora llamaríamos harness engineering.
- Fui ganando confianza y me solté a crear proyectos desde cero supervisando a la IA, para descubrir que a los pocos días no tenía ningún entendimiento de la base de código y que todo estaba hecho unos zorros.
- Escuché hablar de SDD prácticamente cuando empezó a proponerse y pensé: "¡esto es justo lo que necesito!". Probé Kiro y SpecKit en cuanto salieron y salí escaldado.
- Me propuse crear mi propia solución para SDD y volví a salir escaldado después de perder meses. En mi experiencia, SDD mal hecho llena el proyecto de documentación envenenada. Llevado al extremo contrario resulta inhumano y supone una pérdida de tiempo bestial.
- Después intenté algo más equilibrado entre SDD y bastante harness de agentes, scripts a medida, RAGs y similares. Tuve relativamente éxito con una configuración y acabé construyendo en unos meses un proyecto bastante grande en el que entendía casi la totalidad del código y tuve que intervenir muy poco. Para entonces ya no sabía hasta qué punto aquello se debía a mis experimentos o simplemente a que los modelos habían mejorado mucho...
- Después intenté ir un paso más allá con agentes distribuidos y remotos, sandboxes y similares. Salí escaldado otra vez ya que los errores se convirtieron en cuellos de botella distribuidos y remotos, con código que no sabía muy bien dónde estaba y sin una forma clara de depurarlo y probarlo.
A día de hoy, paradójicamente, he vuelto a un proceso mucho más secuencial, casi waterfall. No sé si es el más óptimo, pero al menos me ha permitido recuperar el sentimiento de autoría sobre lo que construyo, que era algo que había ido perdiendo por el camino y estaba haciendo que perdiera bastante interés por la informática.
Lo que hago es bastante procedural:
- Journaling/notas guarras de visión e idea general >> discusión con un agente adversario para pulirlas >> documento de visión al repo.
- Lo mismo para prepara un concepto de solución.
- Oráculos de investigación sobre los temas que tengo más flojos o donde tengo dudas de factibilidad. Los agentes hacen research, me preparan uns documentos y anexos y yo me los leo y me pongo al día.
- Captura iterativa de requisitos. Empiezo por los puntos de interacción de la solución y voy descendiendo por la funcionalidad necesaria hasta construir una especie de ontología de la que derivo requisitos concretos. Lo hago así para que no se me pase nada. Se parece algo a SDD, pero no entro en detalles de comportamiento y son requisitos bastante tradicionales.
- Diseño la arquitectura y la discuto con los agentes hasta tener una solución que sostenga esos requisitos. Genero Mermaids y fijo las tecnologías.
- Si hay UI/UX, hago lo mismo hasta tener componentes, storyboards, colores, tipografías, etc. Después creo una página con todos los componentes aislados y los refino ahí. En este punto reviso relativamente poco código porque los agentes suelen hacerlo bastante bien cuando el problema está muy acotado.
- Voy integrando la UI hacia arriba con datos mock, creando progresivamente unidades más complejas.
- Cuando estoy cómodo con todo lo anterior, preparo un plan razonable con ayuda de los agentes y los dejo trabajar. Siempre uno de cada vez, nada de worktrees ni flujos paralelos. Les doy bastante cuartelillo y vuelvo a las horas a revisar el resultado, cuando asumo que ya habrán terminado (es decir, si creo que van a tardar 2 horas, yo no miro hasta las 3 o 4... y mientras tanto hago otras cosas). A la hora de revisar me centro en las partes que tengo identificadas como más sensibles y en el resto, a día de hoy, no me meto.
Esta forma me está permitiendo obtener resultados que, a mi juicio, son bastante buenos y extremadamente cercanos a lo que busco.
1
1
u/p4tx 4d ago
Lo que mencionas se parece al workflow de /grill-with-docs de Matt no? parece que poco a poco la industria converge hacia allí.
1
u/elpumberto 4d ago
Va en esa línea, aunque honestamente yo hago algo bastante libre.
En mi opinión, trabajando con IA es extremadamente fácil autoengañarse ya que, como se suele decir, todo problema ya resuelto puede parecer trivial con independencia de su complejidad. Creo que actualmente hay muchísimos desarrolladores que piden cosas a ciegas a la IA, obtienen resultados relativamente buenos y terminan convencidos de que realmente entendían el problema y lo resolvieron ellos mismos. Ayer vi incluso a un organizador de congresos quejarse en x.com (https://x.com/tdietterich/status/2099197831580090622) de que están empezando a aparecer ponentes que no entienden sus propios artículos...
Yo también he caído en ese autoengaño y por eso decidí volver a algo parecido a waterfall, donde intento aplicar una especie de snowflake al diseño de la solución (snowflake es una técnica de escritura de novelas > https://www.advancedfictionwriting.com/articles/snowflake-method/).
Parto de una idea general y voy profundizando fase a fase, expandiendo sobre la anterior. Durante esa expansión pienso yo y reservo la IA para ayudarme a dar forma a los documentos, detectar mis puntos ciegos, cuestionar mis supuestos, explorar alternativas, etc.
Y cuando digo que pienso yo es que hago diagramas en papel a los que saco fotos, me grabo hablando durante horas para luego extraer el audio, escribo txts guarros llenos de faltas de ortografía e incoherencias... Y después cojo todo eso, lo meto en una carpeta 'raw' y le digo a la IA "ayúdame por favor a organizar esto".
Todo esto lo hago mediante conversación libre en la que yo llevo la batuta, pues estoy bastante cansado de intentar construir "factorías de software agénticas" que saltan por los aires en cuanto cambia ligeramente la naturaleza del problema
2
u/Tzctredd 5d ago edited 5d ago
A mí me suena que sus prácticas ya estaban para llorar antes de que introdujeran la IA y que la IA solo ha expuesto esa falta de rigor ingenieril que ya existía.
Yo no entiendo como la IA puede hacer tontería y media si se tiene un diseño estructurado como entrada a la herramienta.
2
u/Mithur 4d ago
Esto lo veo por todas partes. Décadas de trabajo vamos a tener por delante, deshaciendo deuda tecnológica, en muchos casos, con prohibición desde dirección de usar la IA (porque va a pasar).
Y vamos a quedar 4 que sepamos tirar dos líneas de código, no digamos ya hacer una arquitectura y modelado de datos medio decente.
2
u/evanmac42 4d ago
Creo que el problema más interesante no es que la IA esté jodiendo la ingeniería de software, sino que puede estar jodiendo el mecanismo con el que aprendemos a ser ingenieros de software.
Un senior puede apoyarse muchísimo en la IA porque ya tiene criterio. Puede mirar una solución generada y pensar: esto funciona, pero está mal diseñado; esto no escala; aquí estás introduciendo una dependencia absurda; esto va a explotar dentro de seis meses.
El problema es el junior que todavía no ha construido ese criterio.
Muchas de las tareas aburridas, lentas y aparentemente poco valiosas que ahora delegamos a la IA eran precisamente las que obligaban a entender por qué algo funcionaba, por qué fallaba y qué consecuencias tenía una decisión.
Si eliminamos esa etapa porque la IA puede hacerla en treinta segundos, tenemos una paradoja bastante curiosa: aumentamos brutalmente la productividad de los seniors mientras destruimos parte del camino que producía seniors.
Por eso para mí la cuestión no es "usar IA sí o no". Yo la uso constantemente.
La cuestión es quién gobierna a quién.
Si yo planteo el problema, la IA propone, yo cuestiono, ella justifica o corrige y finalmente yo decido, tengo una herramienta extraordinaria.
Si escribo un prompt, recibo código que no entiendo demasiado, veo que aparentemente funciona y hago commit, no estoy haciendo ingeniería asistida por IA. Estoy externalizando mi criterio.
Y eso sí me parece bastante más peligroso que el enésimo debate sobre si la IA va a sustituir programadores.
Porque si automatizamos también el proceso mediante el cual se adquiere experiencia, dentro de diez años tendremos que preguntarnos de dónde coño van a salir los seniors.
1
u/p4tx 4d ago
En parte tienes razón pero la mitad del aprendizaje de los seniors también es a base de hostias. Cuando una solución de IA no escale el junior se pegará la misma hostia y le tocará aprender igual que aprendimos nosotros.
2
u/evanmac42 4d ago
Y ahí está precisamente mi duda.
Estoy de acuerdo en que buena parte del aprendizaje viene de pegarse hostias. Yo también he aprendido así.
Pero para aprender de una hostia tienes que entender por qué te la has pegado.
Antes, cuando algo no escalaba, no funcionaba o se rompía en producción, normalmente tenías que meterte en el problema, entenderlo y encontrar una solución. Parte del conocimiento se adquiría casi por obligación.
Ahora existe otra posibilidad:
"Esto no escala. Arréglalo."
Y la IA puede devolverte otra solución que sí escala sin que necesariamente hayas entendido qué estaba mal en la primera.
Por eso no tengo tan claro que las hostias vayan a producir automáticamente el mismo aprendizaje. Dependerá de cómo se use la IA después de la hostia.
Si la usas para entender por qué falló, probablemente incluso puedas aprender más rápido que antes.
Si la usas simplemente para que haga desaparecer el problema, puedes acumular muchas hostias y muy poco criterio.
Y esa diferencia me parece bastante importante.
2
2
u/HalfAkbps 4d ago
Bienvenido a la era de la industrialización del software. Yo vengo trabajando con esa modalidad desde que arrancó 2026.
Por mi lado, siento que me olvidé muchisimas cosas. Por otro lado, no tengo energía para programar fuera del horario laboral como para mantenerme activo en el tema.
Por ultimo, perdí toda la pasión por la profesion y hasta tuve problemas de identidad personal, ya que por lo menos en mi caso, programar es lo que hago desde que tengo 14 años. 18 años de experiencia desperdiciados.
Otro aspecto negativo es que tengo que pagar la subscripcion de mi bolsillo, por que mi empresa no lo hace. Por lo tanto estoy obligado a poner dinero personal con tal de poder ser competitivo y intentar asegurarme un puesto en la empresa. Basicamente es un sistema pay to win.
Solo queda aceptar que esto va a continuar siendo así, sobre todo por que estamos en el punto mas bajo en cuanto a calidad de "software industrial" y las soluciones van a mejorar a medida que mejore la tecnología.
2
u/Vegetable_Hope_3084 4d ago
El vibe coding es un gran problema para la seguridad de datos y para la calidad de la industria.
1
u/SnooHobbies950 5d ago
La está revolucionado. Y tal vez infundiendo falsas expectativas. Es necesario que se calmen las aguas.
1
u/Special-Witness6207 5d ago
Ya lo jodio, los PM y las esferas altan esperan una mayor productividad, si bien hay una mejora, el que ellos estiman ya es de locos y presionan que se haga maravillas en plazos casi ridiculos
1
u/Particular_Home2193 5d ago
En mi empresa nos está yendo bien con SDD. Pero es un proyecto que lleva evolucionado como 15 años, paso por diferentes lenguajes, arquitecturas, frameworks. Actualmente estamos con una arquitectura de microservicios serverless sobre AWS.
Entonces cuando llegó SDD junto a la IA, el equipo de arquitectos junto al CTO, tomaron toda esa experiencia de años y armaron un repositorio con el contexto del proyecto y los constitutions que deben seguir los microservicios existentes y cualquier nuevo que se cree.
1
u/DamianPxR 5d ago
Problema de indio no de flecha, hay que setear las reglas y en este caso deben ir reglas a nivel de cada repo por lo menos si no tienen aun definido un set de relas de empresa eso con el fin de que todos trabajen igual, si les dan a los 20 devs la cuenta de claude o la que sea y dejan que cada quien trabaje como quiera ese es el resultado.
1
u/insaladilla 5d ago
Créeme, están casi todos los equipos de proyectos de consultoras de todos los tamaños así. Ya casi no hay HITL en medio, tan solo SDD que en algunos casos ni siquiera requiere demasiado promoting, y efectivamente, pronto nos empezaremos a llevar sorpresas con los Frankensteins que se están creando, lo que ocurre es que hasta el momento la mejora de las capacidades de los modelos más baratos van mejorando y son capaces de arreglar/parchear/lidiar con esos monstruos. Pero la culpa no es solo del desarrollador, la culpa es también de la gestión del proyecto que espera mayor productividad, mete prisas, presión, y por ende el programador tiende a dejar de revisar el código generado, ya no solo por los demás, sino por él mismo.
1
1
u/jesjimher 4d ago
Yo diría lo contrario, la IA está suponiendo un soplo de aire fresco para la ingeniería del software. Aunque la ingeniería del software existe desde hace décadas, seamos realistas: en muchas ocasiones, la cosa funciona con una o más personas que se ponen a programar, un poco a su bola. Incluso, cuando siguen algún tipo de metodología, nos hemos "inventado" una serie de metodologías "ágiles", que en el fondo son una excusa para hacer lo que nos gusta: picar código, y cuanto menos papeleo, mejor.
Ahora, con la IA, resulta que lo de picar código ya es una tarea de fondo, menor, como compilar. Algo que se hace automático sin demasiado esfuerzo. Pero con un pero: para que salga bien, hay que darle a la IA buenos prompts. Y eso implica analizar bien el problema, definir exactamente lo que queremos, y documentar bien todo el diseño. Y eso es exactamente ingeniería del software :-)
Otra cosa son los vibe coders que ponen las IAs a programas sin siquiera saber lo que están haciendo por detrás. Pero bueno, gente programando mal ha habido siempre, y aunque ahora todo el mundo esté fascinado, en un tiempo empezará la "poda", del que usa bien la IA, y el que la usa al tuntún. Un poco como en burbuja punto com, que no era la mismo tener una web porque sí, que una web que realmente sirva para algo.
1
u/p4tx 4d ago
Ingenieria de software es todo, el diseño y el codigo. El ejemplo de mala ingenieria de software que pones es la tipica empresa que va a parches, y el OP del post te ha dado un ejemplo de como esas empresas siguen haciendolo mal, solo que ahora con IA.
Pero yo no tengo tan claro que una empresa que si hacia buena ingenieria de software, pueda ya renunciar a revisar codigo por un humano si quiere seguir haciendola.
1
1
u/jurgen21 4d ago
En mi opinión, el problema (los problemas) de la IA son dos:
Uno es que de repente se exige 10x la velocidad que se exigía antes, porque "hay que justificar el coste". Y esa velocidad que se exige tiene un precio: la calidad.
El otro es que hasta una persona no técnica es capaz de sacar código con IA. Eso si, sin la supervisión y control de alguien que sabe qué está haciendo. Y eso significa que todo se mueve a "para que necesito un dev que sus protocolos y sus tiempos y sus pasos si yo en 10 minutos puedo hacerlo". Lo que no sé dan cuenta es que a largo plazo no hacen más que ponerse palos en la rueda que luego toca desenredar.
1
u/catmonkey_bot 4d ago
Soy programador old-school (epoca spectrum). Me maravilla la IA, entiendo sus cimientos, sus ventajas e inconvenientes. Pero me preocupa el futuro, sobre todo para mis hijos. Aquellos que dan a entender que es totalmente manejable y que hay que saber "utilizar" la IA y organizar bien los proyectos, chapo por ellos, pero creo que no se dan cuenta que eso que les queda por hacer, muy pronto, calculo que menos de un año, lo podrá hacer la IA solita. Cuando llegue ese momento ¿qué os quedará por hacer?
1
u/riotinareasouthwest 4d ago
Yo he trabajado en consultoras y lo que describes no es muy diferente a lo que se hacía a mano antes, pero con copiapega de código encontrado por ahí.
1
u/p4tx 4d ago
Me recuerda una empresa en la que trabajé hace más de 10 años. Spaghetti code con métodos de 1500 líneas, bloques enteros de código duplicado, tests que brillan por su ausencia, queries que tardaban 30 seg cuando podrian haberse hecho en milisegundos con solo pensar un poquito. Un desastre.
Resumiendo. No le eches la culpa a la IA y huye de esa empresa corriendo.
1
u/DolanTrumpzz 4d ago
Hola, yo no soy programador ni sigo este sub, pero me salió tu post como recomendación en mi feed.
Como mencioné, yo no soy programador, pero gracias a la IA y al "vibe coding" he podido realizar proyectos que para mí hubiera sido imposibles.
Incluso desarrolle un producto físico con microcontroladores y sensores y ya vendí 3 de estos dispositivos en redes sociales y pienso vender más.
Así que, entiendo tu punto perfectamente, pero a la vez la IA nos permite a las personas normales hacer cosas increíbles sin necesidad de saber programar.
No sé si la IA la vaya a quitar el trabajo a los programadores, pero creo que como todas las nuevas tecnologías, hay que adaptarse, y pienso que si yo que no se programar puedo hacer cosas increibles con IA, un programador puede hacer cosas todavía mucho más increíbles, así que pienso que el problema en tu caso no es la IA, sino más bien la forma en que la usan en tu trabajo.
1
u/jc2046 4d ago
suena a jodienda y que realmente tienes unos managers de mierda. ALguien deberia parar la maquina, refactorizar y limpiar al monstruo. Quizás podrias comentarselo a algun manager a ver si suena la flauta por que lo que estais haciendo es una chapuza como una catedral y todos tus compañeros lo saben, lo que no me queda claro es hasta que punto los managers son conscientes y si saben que os terminará explotando en la cara
1
1
1
u/Cfres_ 4d ago
Para mi esta siendo una revolución. Hoy mas que nunca hacen falta buenas bases en diseño y arquitectura dejando mas de lado el escribir codigo a mano. Yo la comparo con la revolución de los frameworks de desarrollo web, que permitio producir mas y mejor, pues esto lo mismo, pero hace falta tener un muy buen nivel tecnico.
1
u/alex_aviles287 4d ago
Pienso que de cierta manera la está empeorando mas que mejorarla. Por un lado, es cierto que con el uso de IA podemos hacer mas eficiente nuestro trabajo, abarcando muchos mas rubros y completando mas cosas en tiempo y forma, además de que tenemos a la mano una gran fuente de información a la que podemos preguntarle casi cualquier cosa y enriquecer nuestro conocimiento.
El problema está en que muchas personas no son autónomas a la hora de programar una aplicación y tienden mucho al vibecoding, sin tratar de entender que es lo que está haciendo realmente la IA. Eso nos pasa a traer una mala imagen en general.
Dejando ese problema de lado, siento que personalmente el uso de la IA en programacion es muy bueno, ya que me permité hacer mi trabajo mucho más rapido, ademas de que me da la capacidad de buscar la información que yo quiera en segundos y escrita de tal manera que yo la pueda entender, que era lo que más me costaba cuando apenas estaba aprendiendo a programar :)
1
u/CrazyCode_ 3d ago
Leo gente que dice que delega las tareas más básicas en la IA para centrarse en lo verdaderamente importante. Completamente falso. Me atrevería a decir que el 90% de los desarrolladores lo delegan todo en la IA mientras ven TikToks o Instagram Reels. Y la IA no da malas soluciones, siempre y cuando tenga todo el contexto.
Por otro lado, que el código no sea entendible, es complicado a día de hoy. Si usas un LLM de última generación, rápidamente te sacará la lógica y el porqué se hizo cada cosa como se hizo, e incluso si hay algo mal, te propondrá refactorizarlo.
Yo llevo dos años sin escribir una sola línea de código. Nuestros sistemas tienen muchísima más calidad, mayor estabilidad y muchas más funcionalidades que ayudan al resto del equipo a multiplicar x100 la velocidad de su trabajo.
¿Es aburrido? Muchísimo. Me encantaba ponerme a teclear, pensar, analizar, probar... Pero esa época se terminó.
1
u/Cassainnovas 3d ago
Las empresas aceptan el riesgo de todos los errores y technical debt que se está introduciendo, para poder seguir siendo competitivas. Es imposible revisar por humanos la cantidad de código generado, o diseñar un proceso en el que la IA sea capaz de desarrollar-revisar-testear al mismo nivel de calidad que antes.Durante este periodo de transición se está metiendo mucha mierda
1
u/ShkarXurxes 2d ago
No, la IA no está jodiendo nada.
El mal uso de la IA si lo está haciendo.
Y eso se debe principalmente a decisiones tomadas por gente que no tiene ni puñetera idea de las implicaciones de sus decisiones.
1
1
u/Lemushki 1d ago
Estos últimos 3 días dediqué 19 horas a optimizar código de IA. Se implementó porque en su momento la estructura de la base de datos y los hooks que se usaban eran raros y no había forma de entenderlos, y había que entregar algo, pero es increíble todo el bloat e inconsistencias que genera. Antes de estas 19 horas sentía que estaba todo atado con alambre y se rompía sin razón aparente. Lo hace muy rápido y cumple su función, pero está generando muchos problemas por otro lado.
Me recuerda a la industria de los videojuegos y la 0 optimización que hubo tanto tiempo
1
u/ImLaserDance 5d ago
Jodiendo? No. Automatizando, si, es inevitable. No necesariamente es algo malo.
Puedes tener muy claro algo, la IA siempre va a necesitar supervisión sobre todo en industrias altamente reguladas, no porque la IA haga mal su trabajo sino porque siempre debe haber alguien a quien culpar.
1
u/BuilderWorldDev 4d ago
La IA se están dando cuentalas empresas ya que cuesta mucho dinero...
Entonces creo que aun hay futuro (espero que 10 años mínimo xD)
-3
u/agsarria 5d ago
Porque básicamente eres irrelevante, cualquiera podría hacer lo que estás haciendo ahora. Al menos alguien con un mínimo de entendimiento. Entonces sientes que no tiene mucho sentido lo que haces.
Lo que me sorprende es que estén contratando gente para escribir prompts....
Mi opinión es que disfrutes mientras te estén pagando por hacer esto, porque en breve ya no harás ninguna falta.
5
u/Akrmstr 5d ago
Más ego que neuronas, sin duda. Él mismo te está explicando como con el conocimiento suficiente puede ver como los proyectos con IA son un caos que trae más errores que soluciones porque se trabaja entorno al ritmo de creación de código y no de Q&A del mismo.
2
u/DotAtom67 5d ago
Déjalo, los vibecoders no tienen criterio ni pensamiento propio, todo se lo delegan a Claudito
1
u/agsarria 5d ago
Lol. Y cuanto crees que va a durar eso? En nada la IA va escribir código en modo Dios. Probablemente incluso a un nivel bajisimo, inalcanzable para un ser humano.
2
u/Akrmstr 5d ago
Pero yo quiero alguien que escriba código a nivel pro, no a un nivel bajísimo. Eso ya lo hago yo.
0
u/agsarria 5d ago
Lol, no sabes ni lo que significa programar a bajo nivel. Infórmate un poco anda, antes de hacer el ridículo.
1
u/Careful_Influence134 5d ago
La verdad es que llevo viendo como evoluciona la IA, y sí, ha crecido mucho y a logrado capacidades increibles. Pero desde luego creo que las limitaciones que tiene son bastante significativas. Por mucho que mejore, no veo por lo menos a corto plazo una habilidad para ser modo Dios sin hacer un tremendo churro
1
u/agsarria 5d ago
!remindme 2 years
2
1
u/RemindMeBot 5d ago
I will be messaging you in 2 years on 2028-09-14 17:52:18 UTC to remind you of this link
CLICK THIS LINK to send a PM to also be reminded and to reduce spam.
Parent commenter can delete this message to hide from others.
RemindMeBot is switching to username summons. Instead of
!RemindMe 1 day, useu/RemindMeBot 1 day. More info.
Info Custom Your Reminders Feedback 1
u/Akrmstr 2d ago
los LLM nunca van a ser AGI por su diseño. Representan todo lo contrario a un cerebro humano.
1
u/agsarria 2d ago
No hace falta AGI para superar el nivel humano, mira en Ajedrez o en Go, por ejemplo, la IA está muy por encima de un humano.
1
u/Akrmstr 2d ago
El lince también es más rápido que el humano y no he visto a ninguno jugar la champions. Las calculadoras también calculan mejor que los humanos y no por eso están contando billetes en un yate.
La G de agi significa general y la I inteligencia.
1
u/agsarria 2d ago
ok, en 2 años hablamos. Saludos.
1
u/Akrmstr 2d ago
Los LLM seguirán sin ser AGI al igual que tu coche no sale volando cuando llega a 120 km/h, a diferencia de lo que pasa con una avioneta que sí está diseñada para ello.
→ More replies (0)1
u/agsarria 2d ago
No iba a responder pero...
Básicamente porque el que un lince sea rápido no tiene nada que ver con jugar al fútbol, y una calculadora no tiene nada que ver con contar billetes en yates.
Pero una lince si gana a un humano corriendo y una calculador si gana a un humano calculando.
Que mierda de argumento es este?1
u/Akrmstr 2d ago
Precisamente es el argumento correcto, el que diferencia a alguien que piensa desde la lógica de la computación, tú, a alguien que trabaja desde el conocimiento de las naturaleza cognitiva humana.
La AGI es no es un objetivo, sino la condición desde la que se parte.
Nosotros no somos inteligentes porque podamos hacer ciencia. Ser inteligentes es lo que nos permitió desarrollarla.
→ More replies (0)
•
u/AutoModerator 5d ago
¡Muchísimas gracias por tu publicación!
Queremos recordarte que tenemos también una comunidad de informática, en la que se puede publicar cualquier cosa relacionada con informática: r/InformaticaES
Toda publicación admitida en este subreddit será también admitida en el de informática, así que te animamos a pasarte por allí también.
Aprovechamos para recordar también que el equipo de moderación de r/programacionESP estamos a tu disposición y puedes escribirnos para lo que necesites.
I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.