{"id":19108,"date":"2022-07-06T11:17:18","date_gmt":"2022-07-06T09:17:18","guid":{"rendered":"https:\/\/changlonet.com\/blog\/?p=19108"},"modified":"2022-12-14T13:01:40","modified_gmt":"2022-12-14T11:01:40","slug":"los-informaticos-siempre-buscandonos-trabajo-unos-a-otros","status":"publish","type":"post","link":"https:\/\/changlonet.com\/blog\/los-informaticos-siempre-buscandonos-trabajo-unos-a-otros\/","title":{"rendered":"Los inform\u00e1ticos siempre busc\u00e1ndonos trabajo unos a otros"},"content":{"rendered":"<p>No s\u00e9 qu\u00e9 suceder\u00e1 cuando la IA empiecen a tomar las riendas de la programaci\u00f3n y la gesti\u00f3n de sistemas. Tal vez siga todo igual. Ahora que esas tareas son mayoritariamente humanas parece que los inform\u00e1ticos somos expertos en buscarnos trabajo unos a otros.<\/p>\n<p style=\"text-align: center;\"><img decoding=\"async\" src=\"https:\/\/changlonet.com\/blog\/wp-content\/uploads\/2022\/07\/070622_0917_Losinformti1.jpg\" alt=\"\" title=\"\"><\/p>\n<p>El tener tantas opciones para hacer las cosas junto con la necesidad de mantener sistemas con edades y prestaciones diferentes genera mucho trabajo extra a la hora de introducir modificaciones en los sistemas inform\u00e1ticos. No es algo bueno ni malo es una situaci\u00f3n que se produce en otras \u00e1reas. Pero en el mundo digital se nota m\u00e1s por lo r\u00e1pido que se suceden aqu\u00ed los cambios.<\/p>\n<p>Estos d\u00edas pasados hemos &#8220;sufrido&#8221; algunas de estas situaciones en las que uno trabaja casi m\u00e1s para adaptarse al ecosistema digital donde va a introducir una peque\u00f1a novedad que en lo que cuesta hacer lo que el cliente nos pide. Vamos con un par de ejemplos:<\/p>\n<p>Hace un par de meses nos llama un cliente. Le hicimos una aplicaci\u00f3n de gesti\u00f3n a medida para cubrir unas necesidades muy concretas de su empresa. Hace un a\u00f1o nos dijo que iba a dejar de usarla ya que sus proveedores hab\u00edan desarrollado una aplicaci\u00f3n web que le encajaba. Pero al final la aplicaci\u00f3n web no funcionaba como ellos pensaban y el programa que ten\u00edan a medida les iba mejor. Este cliente recib\u00eda antes sus encargos por tel\u00e9fono y grababan en nuestro programa las tareas pendientes. Ahora sus proveedores le daban esa informaci\u00f3n por web. Lo que estaban haciendo era copiar y pegar los campos desde la aplicaci\u00f3n web a nuestro programa. Como la aplicaci\u00f3n web soportaba API quer\u00edan automatizar el proceso.<\/p>\n<p>La parte del API en s\u00ed no fue muy complicada. Como nuestro programa ten\u00eda ya unos cuantos a\u00f1os encima lo que hicimos fue programa un modulo separado en C# para comunicarnos con el API. Configuramos un sistema de llamadas y respuestas de nuestro programa al m\u00f3dulo en C# para rellenar los campos de forma autom\u00e1tica desde el API. Las primeras pruebas funcionaban bien\u2026 hasta que nos tropezamos con el primer trabajo no previsto: en los PCs del cliente no aparec\u00edan ni las letras \u00f1 ni los acentos\u2026<\/p>\n<p>Tuvimos que empezar a mirar la configuraci\u00f3n regional de los equipos del cliente. Como eran sesiones de Terminal Server contra un servidor que no hab\u00edamos montado nosotros no quisimos tocar el servidor. Una vez vista la versi\u00f3n del sistema operativo del servidor y la configuraci\u00f3n de idiomas pudimos cambiarlo en los m\u00f3dulos que llamaban a la API para convertirlos antes de grabar. Tema resuelto.<\/p>\n<p>Este cliente trabaja las 24 horas del d\u00eda. As\u00ed que para poner en real los cambios en la aplicaci\u00f3n deber\u00edamos hacerlo de noche para molestar lo menos posible. Antes de instalar en el servidor en real, instalamos el programa en uno de los PCs del cliente y todo funcion\u00f3 bien. Pero claro el d\u00eda de la instalaci\u00f3n en el servidor a medianoche no pod\u00eda ir todo bien a la primera. Apagamos todo, copiamos las versiones nuevas y reiniciamos. Configuramos las rutas de acceso a las DLLs de los m\u00f3dulos de C#, las rutas a los ficheros de datos y arrancamos. Todo va bien, excepto que no se graban los campos. Nos ponemos a debugear y vemos que nuestro programa no es capaz de comunicarse bien con los m\u00f3dulos de C#: empieza la comunicaci\u00f3n, pero no la termina. Al final tenemos que dejarlo y nos vamos a dormir y a pensarlo bien.<\/p>\n<p>En la tienda ya por la ma\u00f1ana montamos una m\u00e1quina virtual lo m\u00e1s parecida al servidor del cliente. Copiamos la estructura de directorios y los datos de pruebas. Y debugeamos otra vez, pero yendo m\u00e1s despacio y con m\u00e1s tranquilidad. El problema al final era que la ruta en la que estaban los ficheros de datos y los m\u00f3dulos de C# ten\u00edan espacios en blanco y guiones bajos &#8220;_&#8221;. En la llamada desde nuestro programa al m\u00f3dulo de C# en su momento hab\u00edamos tenido problemas con los espacios en blanco y ten\u00edamos una rutina que lo resolv\u00eda. Pero esta rutina no iba bien con los guiones bajos. El gui\u00f3n bajo lo hab\u00eda a\u00f1adido la empresa que hab\u00eda configurado un cuadro de mando integral hac\u00eda un par de meses. Al final pudimos cambiar la forma hacer la llamada a los m\u00f3dulos de C# y la manera de comunicarse desde all\u00ed con nuestros ficheros de datos para poder usar en la ruta de llamada espacios en blanco y guiones bajos.<\/p>\n<p>Calculo que dedicamos a estos dos temas un 10% del tiempo del proyecto. No hay nada como que otros inform\u00e1ticos nos ayuden a facturar m\u00e1s.<\/p>\n<p>El otro asunto no es tan largo. Un cliente al que le montamos un soluci\u00f3n de comercio electr\u00f3nico nos llama. No se le actualiza bien ni el stock ni los precios. A este cliente adem\u00e1s de montarle una tienda web le preparamos unas macros de carga de los ficheros de sus proveedores. Un par de proveedores hab\u00edan cambiado los tipos de campos de los ficheros que enviaban\u2026 y al llegar a la web no entraban bien. As\u00ed que tuvimos que buscar las diferencias y a\u00f1adir algunas rutinas de conversi\u00f3n extras. Esta situaci\u00f3n si que se nos repite mucho. Pero es lo que tiene el progreso. Algo que lleva funcionando bien a\u00f1os deja de hacerlo porque otro miembro de la cadena lo cambia.<\/p>\n<p>En resumen, que en los proyectos un poco complejos pasamos mucho tiempo adapt\u00e1ndonos a las configuraciones de nuestros clientes m\u00e1s que resolviendo directamente el problema. Pero es lo que tiene el disponer de m\u00e1s sistemas interconectados con otros muchos sistemas. Y es una tendencia que cada d\u00eda ir\u00e1 a m\u00e1s\u2026 hasta que a lo mejor la IA lo resuelven.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>No s\u00e9 qu\u00e9 suceder\u00e1 cuando la IA empiecen a tomar las riendas de la programaci\u00f3n y la gesti\u00f3n de sistemas. Tal vez siga todo igual. Ahora que esas tareas son mayoritariamente humanas parece que los inform\u00e1ticos somos expertos en buscarnos trabajo unos a otros. El tener tantas opciones para hacer las cosas junto con la [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":19107,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"footnotes":""},"categories":[13],"tags":[1017,2253,3993,3994],"class_list":["post-19108","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-software","tag-estandar","tag-programadores","tag-rutas","tag-c"],"_links":{"self":[{"href":"https:\/\/changlonet.com\/blog\/wp-json\/wp\/v2\/posts\/19108","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/changlonet.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/changlonet.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/changlonet.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/changlonet.com\/blog\/wp-json\/wp\/v2\/comments?post=19108"}],"version-history":[{"count":0,"href":"https:\/\/changlonet.com\/blog\/wp-json\/wp\/v2\/posts\/19108\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/changlonet.com\/blog\/wp-json\/wp\/v2\/media\/19107"}],"wp:attachment":[{"href":"https:\/\/changlonet.com\/blog\/wp-json\/wp\/v2\/media?parent=19108"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/changlonet.com\/blog\/wp-json\/wp\/v2\/categories?post=19108"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/changlonet.com\/blog\/wp-json\/wp\/v2\/tags?post=19108"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}