...para aprender cosas antiguas.

El caso es que tras la reorganizacion, parece que no llegaba el proyecto adecuado para mi. Asi que tras la formacion en big data, y la fase de mailing, resulto que surgio una oportunidad en un proyecto de un gestor documental ... (confieso que he tenido que buscar el nombre porque ya no me acordaba) ... Projectwise, de Bentley. Asi que me meti de lleno, llegue al 4 dia del KT, menos mal que grabaron los 3 anteriores. Y os preguntareis, ¿y sabias de ese gestor documental? Pues eral la primera vez que lo escuchaba (y oye, hay otras con los que no he trabajado pero me sonaban) pero de este ... na de na :D

Menos mal, que visto uno vistos todos, y este tenia un API que se podia atacar desde PowerbShell, asi que porque no, a aprender un nuevo lenguaje de scripting, y a atacar el API con el. Y oye, que no es tan complicado, y que me ha servido para entender mejor el funcionamiento del gestor documental, y para automatizar tareas que antes hacia a mano. Asi que al final, todo ha salido bien, y he aprendido algo nuevo, aunque no sea lo que esperaba (esto lo ha compledo copilot :D)

El caso es que era la tipica situacion donde habia que tirar de alguien tomara las riendas rapido, de algo que iban a dejar de mantener otro equipo, y era el tipico producto que nadie sabia, asi que ... porque no iba a poder aprenderlo yo? Y bueno, fueron pasando las semanas, fue organizandose el equipo con mas gente, dieron con alguien en Portugal que ya estaba dentro del cliente en otras areas, y que podria llevar un equipo a mas largo plazo, y finalmente pude ir desconectandome.

Aunque se dieron situaciones curiosas, esto del mantenimiento tenia su gracia. Pero bueno, pude salir de aquello que no era para hacer carrera.

...llego a su fin.

El siguiente proyecto, ahora os contare fue uno donde, lo primero, casi, que me preguntaron fue si me interesaba cambiar de division en Accenture, de Song a Technology, yo de primeras dije que me daba igual, y empece a currar, pero luego, resulto que mi mentora se fue de la compañia, y me dijo que si tenia oportunidad de cambiar de division, que lo hiciera, que en Technology habia mas oportunidades de crecimiento, asi que ... porque no? Llevo unos meses, pero olle, tampoco tenia prisa, asi que al final, pude cambiar.

...a fuego lento.

Estabamos en 2024, octubre. Y el proyecto era con spring boot 2.7, java 11, liquibase y oracle, frontales con Angular 11, un poco antiguo, pero ni tan mal. El caso es que venia de usar tecnologias de mas de 20 años, y por usar algo de solo 10, tampoco me iba a a quejar ahora.

El caso es que una de las primeras cosas de las que se quejaban era el tipico acoplamiento entre front y back, que si front tenia que esperar a que terminara el back. Cosas que realmente eran habituales, 20 años atras, pero afortunadamente las cosas han evolucionado, y en uno de los ultimo proyectos usaban Openapi, para justo eso, asi que lo propuese, ¿porque no? Si hay una manera de empezar a desarrollar de manera paralela front y back, tras haber acordado una iterfaz, porque no aprovecharlo.

Pero la friccion al cambio, se dejo notar en distinto nivel del proyecto. A mi siempre me gustaron las soluciones opensource, porque siempre ha habido alguien antes que tu que ha tenido que solucionar, y la mayor parte de las veces (por distintos motivos), suelen compartir con el mundo el resultado de esa investigacion. El caso es que monte un docker compose (ese invento del diablo), que levantaba varias cosas, entre ellas un Prims, un servidor mock bastante interesante, Killgrave. Pero resulto que la "excusa" de la seguridad vino a impedir el uso de esas herramientas, de manera mas amplia. Luego curiosamente meses despues lo empezarian a usar en otros proyectos. Y ya nadie se acordaria, pero bueno.

Otro tema que vino despues, fue el "Metadata", aqui la cuestion era... intentar mejorar la automatizacion de tareas tediosas... Empezamos con la parte de definicion funcional, a partir de ahi buscamos la automatizacion de la parte tediosa, y luego, la integracion con el ciclo de desarrollo, para que se actualizara automaticamente, y se pudiera usar en el dia a dia, pero bueno, eso es otra historia... que se queda en mi bagaje de cosas aprendidas.

Y bueno, los meses pasaban y las cosas se fueron estabilizando, los viajes iban y venian, la metodologia safe es lo que tiene, que cada 10 semanas toca sincronizar y evaluar. Y bueno, todo es mejorable pero el dialogo era fluido, y en alguna de esas sicronizaciones, fui empezando a intuir que el ritmo era mas lento de lo que me imaginaba, y que el cambio era mas lento de lo que me gustaria. Y eso se reflejaba en las propias personas implicadas, y asi como los proyectos se modelaban, tambien lo hacian las personas implicadas, y si querias fluir, tu tambien debias hacerlo, aunque siempre habia algun meandro donde probar suerte.

...alguna cosas mas podria mencionarse, pero solo destacare la llegada de Gemini, la verdad es que solo lo teniamos a nivel de chat, sin integracion con ningun IDE, pero aun asi se le podia sacar bastante partido, una cosa curiosa que salio de ahi fue un diff de liquibase, que se hacia a partir de un diagrama hecho en drawio, y que se convertia en un liquibase, y oye, que no era tan mal...

...codigo y mucho mas.

Y aunque ya llevamos casi tres años inmersos en una ola de IA generativa, esto cada dia cambia a una velocidad increible. Y ya en otoño del 2025 decidi que era momento de subirme al carro definitivamente y sin excusas. Mi objetivo era ir a la linea de flotacion de la IA, no queria quedarme en la superficie como simple usuario, y, de primeras no queria convertirme en un investigador de ML, pero si queria aprender las bases, para ir al escalon intermedio, el del metal, el codigo, las tripas que no se ven, y si podia ser con Golang, mejor que mejor, ya os he contado que era mi segundo lenguaje.

Asi que aproveche y monte un servidor local con un presupuesto ajustado (y con suerte, fue justo antes de la crisis de la RAM, propiciada justo por la voracidad de la IA) y bueno el presupuesto dio para un intel i5 core ulta 2º generacion, 500GB SSD PCIe Gen 4 NVMe, solo 16GB de RAM DDR5 y una grafica dedicada de 12GB intel arc B560M. Con esto podia empezar a trastear si tener que tirar de nada externo.

Lo primero que prove en ese servidor, fue montar un KVM y descargar una imagen de HomeAssitance, proveen imagenes para usar directamente, y bajo ese ecosistema monte la conexion con un LLM, y luego bajo sus agentes, whisper y Piper (curiosamente usando un protocolo especial para HA)... aqui jugue con varios system prompts, incluso uno para ayudar en los deberes a mis hijas.

En esos primero intentos, creo que aun no habia comprado la GPU, asi que tiraba de NPU, o incluso solo de CPU. Empezaba a ver el ecosistema Intel y OpenVINO, entender como funcionaba la quantizacion de modelos, y como model server sacaba el maximo partido al hardware de intel, y oye iba mas o menos fluido. Tambien hice alguna prueba con Ollama, y hasta me aventure con alguna PR.

El caso es que antes de empezar con todo esto, lo que habia brujuleado era LocalAI, y todo el ecosistema que se habia montado alrededor para RAG, incluso un dia que hablando con unos familiares sobre un video, me dio por buscar una herramienta que me hiciera el resumen del video de youtube, y ahi estaban, eso me llevo a intentar montar algo parecido (y no lo he llegado a conseguir 100% todavia, pero bueno, le dare otro intento mas adelante). Una vez tenia funcionando el LLM termine abandonando LocalAI porque soporte en Intel no era muy bueno (por lo menos en mi caso) y termine de ajustar model server. Tambien hice pruebas con open webui, que la verdad es un sistema bastante completo, incluso con RAG.

And well, it wasn't just about chat rooms anymore; it was starting to integrate with IDEs, and that's where things really started to gain momentum. Just like anyone could make (attractive) drawings, anyone could now program. Years of apprenticeship were no longer necessary; it was readily available, and it continues to evolve every day. Of course, it does come at a price.

Y tras haber visto ya hace años el curso de NYU del 2020 sobre ML, decidi tomarmelo en serio y aprovechar mi ecosistema para ayudarme en el aprendizaje, y me monte un Junyper Notebooks, para python y tambien go (aunque no he dado aun con los imports de librerias externas) Y me puse manos a la obra a prender las bases (y ahora mismo estoy en ello, mientras escribo estas lineas). Tambien queria profundizar sobre las opciones de Golang en el ecosistema, aunque no era el nativo para ML si que parece que habia cosas interesantes, me he puesto a tope con Hugot...

Y aqui en este punto es donde volvi a mis lecturas, las que ya teniea, Kahneman, Foer, Feldman y los nuevos por venir... Clear, Ericsson... incluso otros sobro como escribir ayuda, y porque no puedo llegar a dibujar bien. Hace unos meses consegui finalizar un proyecto personal que habia tenido abierto mucho tiempo, la publicacion de un cuento infantil.

Y ya por ultimo vuelta a las charlas, asincronas en este caso (no lo invente yo) pero retomando grupos que habia intentado montar hace tiempo, porque no meter en ellos a un agente, con capacidad de vision, si le hechas un vistazo a mi linkedin veras de que te hablo.