edición general
171 meneos
1927 clics
El lenguaje COBOL se ha convertido en un quebradero de cabeza, pero IBM tiene la solución: un traductor IA

El lenguaje COBOL se ha convertido en un quebradero de cabeza, pero IBM tiene la solución: un traductor IA

Es uno de los lenguajes más antiguos, pero sigue siendo usado de forma notable en entornos financieros y gubernamentales. Al lenguaje de programación COBOL lo quieren jubilar. Lo cierto es que ya tiene casi casi la edad (se creó en 1959, hace 64 años), pero es que su presencia en el mercado de la informática es tan sorprendente como, para según qué empresas, incómodo: no hay ya muchos profesionales que puedan programar en este lenguaje, así que IBM se ha propuesto tomar otro camino: traducirlo a Java.

| etiquetas: programación , cobol , ibm , traductor ia , java , codenet
«12
  1. Año 2137.

    Empresas de todo el mundo siguen buscando desesperadamente a programadores COBOL y las farmacias españolas siguen recortando el código de barras de los medicamentos con receta.
  2. Yo con estos articulos parto.

    Traducir COBOL a Java es lo fácil.... ahora quien tiene los santos cojones de verificar que eso es correcto? En finanzas, en movimientos de cuenta intradiarios de miles de millones?
  3. "Traducirlo a Java".

    A ese. Justo a ese. No había ningún otro. Será por lenguajes. Y eligen Java.
  4. #4 a mi me gusta Powered by Entropy Neural Engineering, no significa nada, pero mola

    "A este departamento lo que le falta es un poco de P.E.N.E." creo que es el futuro de la empresa
  5. Ineficiente, dice. Eso lo dudo porque el cobol se compila y se traduce a lenguaje máquina. Lo que pasa que no encuentran gente con cojones a coger un código montado hace 40 años, mucho sin comentarios, y poderlo mantener y saber qué hace cada línea.
  6. #1 pues mas IA en cloud computing in the edge con smartdust y mas palabros que ahora mismo no se me ocurren
  7. #6 Eso combinado con un Virtual Asisted Generated Integrated Neural Alignment (V.A.G.I.N.A) y lo petas por todas partes.
  8. #8 Es más fácil hacer un modulo en Cobol desde cero que intentar entender la lógica de algunas de sus aplicaciones, no es un lenguaje difícil, te lo digo yo que llevo años con el, y seguiré con el bastante más tiempo, porque llevan matando a Cobol 30 años, han salido traductores a otros lenguajes, pero ahora dile tú a Visa, AIG, Carrefour que confíen en esa traducción cuando ese programa en Cobol que tiene 40 años funciona aunque cambies de un 4381 a AS/400 a un 360 o un z/14 y sin recompilar, lo que deben hacer es formar más a la gente y pagar de verdad lo que deben pagar.
  9. #2 y pegándolos en una libreta con celo.
    xD
  10. Os voy contar alguna experiencia que he tenido indirectamente con el COBOL y la madre que lo parió.

    El lenguaje en sí, no es complicado. De hecho, como conozcas un poco de ensamblador rústico (nada de CUDA, x64 y similares) enseguida hacer un paralelismo entre el COBOL y el ensamblador. De hecho en COBOL se utiliza MOVE para asignar valores como se hace en ensamblador.

    ¿Dónde se complica la cosa? Pues en la cantidad de mierdas que utilizan para hacer cosas teniendo en cuenta que antes la memoria y el disco eran carísimos. Si se pueden usar valores de BIT mejor que usar BYTES o enteros. Hace un montón de años nos enfrentamos a sustituir una APP de Telefonica que se dedicaban a las averías (AF se llamaba la jodía) y resulta que la muy hija de puta hacía cien mil cosas más de las que esraba diseñada originalmente debido a que como era una APP que estaba en todas las centrales, era más barato meter funcionalidad en esa APP (aunque no tuviera nada que ver) que desarrollar una nueva (idos 20 años atrás, no penséis con mentalidad de ahora)

    Luego añade cosas como que por ejemplo había cosas hechas a mano como un indexado de fichero porque en la época de su desarrollo. no había BD disponibles (hablo de a lo mejor hace 50 años) o eran demasiado caras. O que parte del código estuviera hecho en ensamblador aunque para esto había dos teorías:
    - La oficial, se hizo en ensamblador para mejorar las prestaciones.
    - La extraoficial. Con el paso de los años hemos perdido los fuentes y hemos tenido de desensamblar a ver qué leches había ahí.

    Y no veas la risa que daban las limitaciones que metía el dueño del servidor, cosas como "máximo dos segundos de CPU" ... anda que no nos acordamos del mangante que puso esto cuando tenías que dividir una operación en varios por ese requisito.

    Por suerte no me he vuelto a acercar a un chisme de esos, pero sí tengo compañeros que sí lo han hecho para pasar de COBOL .... ¡oh campos de soledad, mustios collados! ¡¡¡ a JAVA !!! (por ahi lo han mencionado también) Parece absurdo pero es que el "conversor" hacía eso.
  11. #5 Creo que llevas razón, a mí me tocó hace un par de años un código de esos (montado hace unos 30 años), y sin tener ni idea de COBOL, tuve que modificarlo para añadir algunas historias y tampoco me pareció para tanto, a la que sepas un par de lenguajes y seas un poco despierto (y sepas leer documentación en inglés), te haces con ello. Otra cosa sería hacer cosas complejas de cero, que seguro sería incapaz. De hecho, a la siguiente cosa similar que hubo que hacer (pero bastante más gorda), lo pasamos a Java y santas pascuas.
  12. #34 si quieres eficiencia nivel COBOL y seguridad: Rust.

    Si quieres la JVM: Scala o Clojure.

    Si quieres algo moderno: Mojo.

    Si quieres verificación formal: Elixir, Erlang, o Haskell.

    Si quieres crear un portal al infierno: JavaScript.
  13. #28 lo que hace falta es programming assistance, summarization, and testing automation (PASTA).
  14. ¿No encontráis a gente para programar en cobol? Pay them more.
  15. Jajajajjaja están los bancos, aseguradoras, IRS y aerolineas (entre otros) que cambian su COBOL por cosas generadas por AI. Ah coñe, espera que es cuñataka.
  16. Mi primer trabajo como programador en COBOL.

    Me viene un account manager de mi empresa cárnica y me dice que en una semana empiezo en un cliente nuevo como programador en COBOL.

    Le respondo que no tengo ni idea de COBOL y me dice que no es problema, que con lo que sé de mainframe es suficiente y que me estudie un manual de COBOL por las tardes.

    Llego al nuevo cliente el lunes y el hijodeputa del Account Manager me presenta al cliente como “ el experto en COBOL del que te había hablado”
  17. Al lenguaje de programación COBOL lo quieren jubilar [...] no hay ya muchos profesionales que puedan programar en este lenguaje, así que IBM se ha propuesto tomar otro camino: traducirlo a Java."

    JAAAAAAAAAAAA JAJAJAJAJAJAJAJAJAJ DIOOOOOOOOOOOS JJJAJAJAJJAJAJAJAJJAJAJAJAJAJJAJAJAAJJAJAAAAAAAAAAAAAAAAAAAAJAJAJAJJJAJAJAJAJAJJ
    i.gifer.com/7Djv.gif
  18. #2 lo de los medicamentos está destinado a extinguirse en breve. Creo que para 2024 tenían establecido meter un código único en los envases para escanearlo y evitar tener que recortar nada. Piensa que hasta ahora recortar el código de barras del envase era la única forma de verificar que no estaban tangando al estado en la venta de productos con receta... 1 código recortado = 1 producto vendido.
  19. #6 No creo que lo que suela faltar en departamentos de informática sea P.E.N.E.

    Me inclino más por la opción de #7 xD
  20. #23 ¿Hay alguna diferencia?
  21. Probablemente esos programas COBOL se mucho más eficientes que los supuestos programas java que los sustituyeran. Entre otras cosas por la dificultad de debug o por las infinitas dependencias de librerías.

    Y eso no solo pasa con el COBOL, en la administración pública española también está muy extendido el Pl-Sql de Oracle que también costaría unas decadas dejar migrado a java o similar
  22. #1 Y de mantener el engendro COva que salga de ahí. Luego IBM te venderá la IA que lo mantenga porque no encuentran programadores de COva.
  23. #55 Y sobra mucho high developer programmer (H.D.P)
  24. #6 Trabaje para una empresa en la que venían gente de todos los departamentos a perder el tiempo en nuestras reuniones: "hola somos de PMC", "venimos en representación de I+D+I", "merche de QA",..., "somos chus y paco, de Planificación y Seguimiento (así sin siglas ni nada)".
  25. El tema del COBOL no es solo el lenguaje en sí, sino también la máquina en la que se ejecuta: el Mainframe de IBM, con su alta disponibilidad, su gestor transaccional y demás.
    Cuando pasen todo a distribuido y se empiecen a caer los tamagotchis se echarán las manos a la cabeza...
  26. #1 no tanto el problema es el lenguaje, ahora que lo van a sacar de mainframe y ponerlo en la nube, sino cambiar toda la filosofía batch y plantearlo con microservicios, que sería lo interesante para usar Java.
    Pero eso tiene tela marinera
  27. #1 y como si el problema no fuera precisamente la confiabilidad de COBOL sobre Java. Sinceramente, siendo desarrollador Java, si algún día me entero que los bancos se pasan a él, saco mi dinero y lo keto bajo el colchón. Más seguro estará.
  28. #1 Hombre, traduces el programa en COBOL y traduces los test unitarios y de integración y luego ya lo ejecutas todo y ya está, no? :troll:
  29. #9 Sugiere uno más adecuado. Hay toda una industria multimillonaria esperando soluciones.
  30. #64 Es superapasionante.

    Mi grupo de homenaje al punk setentetero se llamará PROCEDURE DIVISION

    imgflip.com/i/7wonnd
  31. #4 Blockchain! Cancamusa!
  32. #26 Qué cabrones los bancos. Probemos la beta en las cajas de ahorros y si falla, las absorbemos. Win-Win :troll:
  33. #2 si funciona, para que cambiarlo? :roll:
  34. #1 "eso" que ha sido escrito por una IA que no sabe lo que hace y está especializada en escribir cosas que dan el pego.
  35. #52 Es que la informática funciona gracias a la magia.  media
  36. #63 Osita QUE LO DICEN EN SERIO

    JJJJJAJAJAAAAAAJAJAAJAJAJAAJJJAAJ AJAJAAJAJAJAJAAJAJAJ AAAAAAAAJAJAJJAJAJJAAJJAJAJJAJAJAJAJAJJAJAJAAJJJJJAJAJAAJAJAJAJ
  37. Cuando se picaba en cobol muchas cosas no etaban estandarizadas y se hacían ñapas para ahorrar espacio.

    Cobol es una maravilla porque depende de la capacidad del programador. Normal que los pisateclas no puedan hacer nada. Y es sólido como una roca.

    Java en cambio es una mierda sin paliativos. Todo el mundo descargándose clases y código de repositorios que frikis hacen en su tiempo libre. Y luego esperan que funcione bien. Por no hablar de la cantidad de recursos que necesita y que consume.
  38. Por aquí tienen un buen listado de cursos que desarrolla IBM aprendergratis.es/tag/IBM/

    Hay un par de ellos de Cobol, el lenguaje de programación que perdura por mas de 70 añazos
  39. #2 El programa que gestiona los medicamentos estará hecho en Cobol xD
  40. #4 Inteligencia artificial en cálculo nuboso al filo con polvo listo.

    Traducido al español parece un plato del Dabiz Muñoz.
  41. #1 Y el rendimiento... mañana.

    Los coboleros de mi época escuchábamos garbage collection y nos imaginábamos camiones de basura.

    Que como lenguaje es limitadísimo, no lo niego. Pero para lo que se diseñó iba de narices, no me imagino la forma de salirme de la memoria de un PIC 9(9)V99 ni poder tirar un equipo.

    Para las virgerias ya teníamos el ensamblador o el C... Coño, ahora que recuerdo el último cobol con el que trabajé permitía llamar a rutinas en ensamblador, así que me la envaino un poco.
  42. Hace años que se hizo algo parecido (unos 18 años creo recordar) en varias cajas de ahorros y las pruebas no salieron del todo mal. Se pasaron algunas transacciones a Java y eran eficientes y sin fallos.
  43. Miedo me da que se fien de una traducción automática de Cobol a Java. Ahora tendrán que buscar personas que sepan Cobol y Java para verificar que lo que sale de la churrera de AI es correcto. Otra cagada más de IBM que en España se están luciendo con el cambio de sede, el hacer su Sintel para mandar a la gente que más les ha currado al paro, pero en diferido eso si, para que se note poco... hasta que haya otra crisis más en el sector, y entonces ya se irá al carajo otra empresa
    Desde que apoyaron al holocausto vendiendo sus máquinas de censo, luego su consultoría a Huawei, sus PCs a Lenovo, etc etc estos no dan pie con bola.
  44. #8 A veces si hay que añadir alguna función si que es genial gracias a su modularidad. Lo malo es cuando lo hacen correr en un sistema nuevo o el SO nuevo requiere modificaciones en el código para que funcione correctamente lo que funcionaba antes y luego no te funciona ni a tiros, o no hace lo mismo, y arreglas algo y se te estropea otra cosa, etc. Entonces si entiendo hacerlo de cero en otro lenguaje, lo malo es que para plataformas S/IBM COBOL es ideal.
  45. #16 más bien parece un artículo chungo de aliexpress
  46. #8 La mayoría de los lenguajes de programación non son difíciles; el "problema" viene en conocer y manejarse bien con las bibliotecas estándar o de terceros más usadas, herramientas específicas, acostumbrarse y recordar usar las peculiaridades del lenguaje,...
  47. #17 "Lo petas por todas partes" :troll:
  48. #9 Como dice #119, si el problema es la falta de profesionales que conozcan COBOL, Java es una estupenda solución {0x1f602}
  49. #9 el daño que ha hecho Java a la informática es irreparable
  50. #54 El código QR único ya está en las cajetillas. De hecho, en las farmacias que voy, es lo que pasan por el escaner. Aunque luego les toque recortar el código de barras.

    Por cierto, así, además tienen fichado quien ha comprado dicha cajetilla, por si luego aparece en la reventa.
  51. #94 El rendimiento se la suda a la mayoria. Tengo el culo pelado de ver cruzarseles los ojos a los desarrolladores cuando les hablas de algo como el recolector de basura o gestionar a manija la memoria. Ni que decirte las peleas que hay con los hilos o el control de consultas, que parece que les regalan los recursos.

    Pero weno... cada uno tendrá su librillo.
  52. #6 ¿Como que no? Si yo tengo un máster en eso :-D
  53. #9 Eligen el lenguaje en que los monos cobren menos cacahuetes.
    A ver, no es una decisión tecnológica. Es una subnormalidad que se le ocurren a gestores para convencer a gestores de venderles algo.
    Luego, una vez vendido, pues ajo y agua. De contratos con esa empresa no puede salir nada bueno.
  54. #100 Son un mojón.
    Fuente: llevo trabajando en cobol desde 2006
    CC #64
  55. #12 pero igual no pueden contratar aunque estén dispuestos a pagarlo a un programador senior con experiencia y conocimiento, porque por la política de diversidad e inclusión dictada desde la central, resulta que ya tienen muchos perfiles similares en la plantilla, y queda mal el informe de RSC.

    Así que lo contratan como consultor externo, llevándose la cárnica su porcentaje pero teniendo al trabajador cabreado desde el minuto uno, por ejemplo obligándole a presencial sin permitirle usar el parking de la empresa, o viendo que perfiles mucho más junior sí tienen contrato en cliente final, por enchufismo+diversidad. Así que el trabajo queda hecho a medias, chapuceramente y en cuanto puede ser pira a otro proyecto el que pillaron para arreglarlo.
  56. #89 Yo hablo de desarrollo en grandes clientes como bancos o eci. Para no saber, lo llevo sufriendo en diversos proyectos desde la versión 5.

    Y cada dos por tres sale un framework nuevo que hay que usar por cojones, lo que lleva a migraciones que te dejan temblando. ¿ Cuantas aplicaciones web usas en un desarrollo java?

    Y robusto mis cojones. A nivel de transacciones no se me ocurre nada más sólido que cobol-cics-db2.
  57. Titular erróneo: COBOL siempre ha sido un dolor de cabeza.
  58. #1 Suerte con los go to.
  59. #9 A día de hoy, Java es el mejor lenguaje de programación para desarrollar backends. Robusto, maduro y con un gran ecosistema (Spring/SpringBoot, Quarkus, etc..)
  60. #43 Es que en informática hace falta mucho de eso que dices... :-D
  61. Cuando entré en la carrera me decían que COBOL era un muerto que gozaba de muy buena salud.

    Lo llevan enterrando desde antes de los años noventa y ahí sigue.

    Si entras hoy en la carrera, no sé si me especializaría en cobol, porque los sueldos que deben pagar deben ser bastante jugosos
  62. #29 Y de postre?
  63. #4 "y ahora vete de aquí o inventaré más palabras" :-P
  64. #29 #31 Y de beber, albóndigas.
  65. #4 se te olvidó el grafeno :troll:
  66. #9 es que debe ser una migración muy suave: de una inmunda mierda putrefacta a una inmunda mierda. Poco a poco la humanidad saldrá de ese pozo de mierda informática :troll:
  67. #15 los programadores y las mierdas que nos encontramos.

    Cuando puedes mascar las pocas ganas de trabajar de otro, o el bajo presupuesto, o la falta de tiempo, o los pocos conocimientos, o una combinación de todo ello.

    Ha veces te sientes tan sólo delante del teclado,,,,
  68. #8 "y seas un poco despierto "
    Eso es lo que marca la diferencia y es lo que se llama talento y no todo el mundo lo tiene.
  69. #51 Hace años que incluso soporta programación orientada a objetos.
  70. #18 Santander UK lleva un año casi con toda la parte corporativa del batch migrada a Oracle y Linux con la solución de Microfocus. Y el plan es mover el resto del batch en 2 o 3 años y quitarse todo el mainframe.
    Le queda mucha vida al COBOL
  71. #22 Pues los PERFORM los carga el diablo xD
  72. Yo hice un curso para programar en PL/1 donde tambien dimos algo de COBOL. Me pareció muy farragoso. EL PL/1, en cambio, me encantó. Dos años estuve programando para La Caixa. Mi hermana aun sigue allí despues de 25 años.
  73. #69 Carmack te puede respetar con JavaScript, no porque hagas Doom realidad, sino esto: youtu.be/rczu8kc8JZA
  74. #1 Lo pones a funcionar en paralelo con el sistema viejo y vas comprobando que ambos proporcionan la misma salida para identicos datos de entrada.
  75. #9 obsolescencia programada
    luego traducirán java a basic, y que siga la fiesta
  76. jaja. jajajaja. JAJAJAJAJAJAJAAJA.

    NO
  77. #1 Te respondo yo.

    Contratando a una persona que sabe lo justo de Java, y para tener que lidiar con la versión antigua de Java que use el banco en cuestión, y cotejando los resultados en cobol con los resultados en Java en unas cifras con muchos decimales.

    Son puestos que requieren cierto conocimiento tanto de Cobol como de Java, así que pillan al primer ingeniero que se preste a hacerlo y le pagan ilegalmente todas las horas extras que le hagan hacer.
  78. #2 #35 #38 En la mía lo de las recetas no (para el sistema público, claro)
  79. #67 Y encima usando una IA! Esto no para de mejorar.
    ¿Pero no sabéis que las IAs NO PIENSAN y pueden sacar un cósdigo chulísimo pero que rompa cualquier otra cosa evidente?

    Anda, contratad a #64
  80. #1 y la capacidad del lenguaje y del mainframe, es un lenguaje simple, pero muy eficiente en lo suyo
  81. #121: Y aún así es una locura, porque nunca sabes si se puede presentar algún caso excepcional...
  82. #34 QuickBasic
  83. #64 no, tienes un mercado muy limitado y es mentira que no haya gente programando en cobol, hay miles de de españoles trabajando en mainframe
  84. #56 Muchas veces es así.
  85. #153 Vamos, lo pongo en duda hasta para Java
    Hasta que encuentras gente que lleva años enviando solicitudes de empleo y no consiguen nada.
  86. #1 acaban antes pasándose a la blockchain :troll: :roll:
  87. Java is the new Cobol. En 20 años el problema será encontrar programadores de Java 8
  88. Que puede salir mal. Sin manos! (Escena de precuela de alien que prefiero no nombrar)
  89. Utilizar una IA que traduce código... Luego habría que poner a alguien a revisarlo, o se va a subir a producción algo que ha migrado una IA? Van a integrar las pruebas? Esta integración la hace la IA y se hace trampas al solitario? No se, no creo que algo así funcione.

    Y la migración a mano conocida de toda la vida... Creo que alguno ya lo ha comentado, el problema no es cobol. Los problemas son básicamente 2.

    El primero, que la mayoría de código en cobol, no está hecho por ingenieros informáticos, sino por economistas reconvertidos, lo cual hace que el código, en el mejor de los casos, sea difícilmente entendíble.

    El segundo es que las empresas han estado lastrando la migración durante años, porque nunca quieren asumir costes en tiempo o económicos, y cuanto más se alarga, más costosa es.

    Por terminar, hablo por mi y otros compañeros que conozco: A nadie le gusta ni los proyectos de migracion, ni coger proyectos mal hechos de hace mucho tiempo por gente que no sabía del tema lo que debiera.
  90. #14 En el mundo preindustrial, los cereales había que segarlos a mano, así que una persona recogía/producía una cantidad que no era muy superior a lo que acabaría consumiendo. De ahí el diezmo.
  91. #87 Seguro que IBM tiene invertido mucha pasta en esa solución... Pero - y solo a modo ilustrativo - quiero recomendar la entrada que hace chema alonso sobre el tema (www.elladodelmal.com/2023/08/si-eres-developer-y-buscas-soluciones.htm)
    Aunque ciertamente los porcentajes podrían ser achacables a que es "gratuíta", me bastaría suponer un 10% de tasa de error en la traducción para tener confianza 0 en lo realizado por la IA... tal y como comentas.
  92. #61 high developer language general programmer (H.D.L.G.P)
  93. #1 el mundo de las finanzas sería bastante sencillo pero lo han convertido en una gigantesca telaraña con el objetivo de: lavar dinero, eludir impuestos, estafar gente.

    No soy religioso, pero la Biblia habla del diezmo, cómo impuesto. Más sencillo imposible. Pero no, te llega un ejército numeroso para convertir el diezmo en el más complejo y complicado ejercicio tributario posible.

    Si las finanzas fueran sencillas, cualquier lenguaje de programación serviría.
  94. Soy programador, me interesa aprender COBOL y vivir de las rentas? Si hay pocos estarán demandados, digo yo...
  95. #37 test unitarios y de integracion en CoBol ????{popcorn}
  96. #2 Conoci el COBOL hace ya mas de 42 años y ya se decia ..."El COBOL ha muerto" ... sigue alli y parece que seguira alli
  97. #90 Dinero que pasará de IBM a Amazon, Google o similares con las nubes. Je je je
  98. #8 A que si te multiplican el sueldo por tres, haces todo lo que haya que hacer.
  99. #2 si yo te contara cuando fui a la oficina presencial cuando fui a sacarme el certificado digital personal....
«12
comentarios cerrados

menéame