# Desvelado por una DLL [2022-04-22 ven] | #experiencia #laboral #IT #programacion ## Hoy he soñado con un DLL Ayer analicé un archivo .dll. Bueno, se lo di a VirusTotal para que la analizara. Nada importante, estaba haciendo de amigo informático no me dedico a ello, cobro en comida... Pero este evento, aparentemente sin importancia ha desencadenado una tormenta en mí. Me he desvelado soñando que analizaba una dll. Voy a decompilarla...¿A dónde llama? ¿Y si le cambio este parámetro qué cambios hace en la base de datos?... ## Algo de contexto Eso era antes un día bueno en mi trabajo, como "ingeniero de software". Más bien era el chico-para-todo-software. Eso de "pelearme" con dlls de terceros y jugar a los detectives era un día bueno. Los días malos me los pasaba revisando miles de líneas de excel hasta que se me caían los ojos, parámetros en configuración de servidores de windows y haciendo/revisando documentación en un idioma que no conocía ni había estudiado (y no es inglés). Hola, Deepl, ¿te acuerdas?. Odio windows, llevo unos 10 años sin usar windows a nivel personal. No siempre fue así. De pequeño era todo lo que conocía. Me encantaba y me encanta pasar tiempo en el ordenador. Me crié soniditos de apagado y encendido de Windows XP, eran familiares, agradables. Escuchar el inicio de Windows era como volver a casa. Era divertido, anticipaba todas las cosas chulas que iba a hacer (principalmente jugar). Pero Windows me traicionó, primero tuve que esquivar Windows Vista. No pasa nada, seguí con XP y luego, pasé directamente al 7. Estaba acostumbrado a "crackear" programas, a defragmentar el disco, a desactivar las actualizaciones para que Windows no me dejase colgado... Pero entré en el grado de informática, compilando en C++ Windows se callaba errores que luego al llevarlo a la corrección salían a la luz. Compré un portátil con Windows 8 que nunca funcionó bien. Venía con una partición SSD con 24 GBs con Windows instalado, como si cupiera en 24 GBs... Venía con Secureboot, intenté instalarme dual boot con Ubuntu, que era lo que usaba en clase. Ya sabes, para usar las mismas herramientas en clase que en casa y evitar sorpresas. Y los "En mi casa iba" con cara de gilipollas en el despacho del profesor. Ahí aprendí por las malas, siempre aprendo por las malas. Qué era la BIOS, cómo acceder, cómo ponerle una contraseña, cómo olvidarla... Conseguí desactivar el Secure boot y meter mi dual boot con Ubuntu. Para los no frikis, me instalé en el mismo pc ambos sistemas. Windows iba peor que nunca. Actualizaciones de sistema de 3 días de duración. 3 días sin poder usarlo (os recuerdo que estudiaba informática y todas las semanas tenía que entregar prácticas de programación). Lo llevaba a clase para trabajar y no tener que ir con memorias USB para arriba y para bajo. Durante las actualizaciones interminables lo llevaba en el maletero del coche, el portátil abierto mientras seguía intentando digerir las actualizaciones. Tenía la esperanza de que terminase de actualizar y poder usarlo ese día, eso no pasó. Al siguiente tampoco. Ni al otro. 3 días con el portátil abierto, para arriba y para abajo. Buscando enchufes como un yonki su próxima dosis. Decidí que había tenido suficiente. No decidí usar sistemas libres, ni ubuntu. Decidí que no quería usar Windows. Un par de años después investigando sobre seguridad y privacidad, por puro interés personal, descubrí el software libre. Concretamente el foro de trisquel. "Si no puedes ver el código, no puedes tener seguridad", algo así fue lo que me hizo interesarme por el software libre. Desde entonces he aprendido mucho, por las malas también. Pero fue una alegría cuando un día me levanté y no dependía de Microsoft ni de Windows para nada. ## Ingeniero de software profesioná Mentira. Hice prácticas de becario mientras estudiaba. Desarrollo web, videojuego online, algo de diseño. Sin cobrar. Ahí empecé a trabajar con .NET, C#, Visual Studio, etc. Posteriormente, trabajé de becario cobrando una ayuda precaria, mismo tipo de trabajo. Un poco después me contrataron, por 1 mes (contrato por obra). Cobrando una miseria pero ya era un sueldo oficial, el trabajo era el mismo. El trabajo me lo renovaban mes a mes (normalmente me comunicaban que iba a seguir trabjando a partir del día 24 de cada mes). La mentira es que Windows y su ecosistema era mi sustento. Dejando al margen las condiciones. Lo que quiero decir es que mientras aborrecía Windows en lo personal, era mi herramienta de trabajo. Cuanto más lo alejaba de mi vida personal, más se acercaba en la laboral. Posteriormente, conseguí otro trabajo. También muy mal pagado y bastante duro. Pero aprendí. Aprendí a usar tecnologías más abiertas, seguía usando .NET y Visual Studio. Pero añadí a la ecuación JavaScript (Angular, Electron, Visual Studio Code). Tuve mi primer contacto con un repositorio público, hasta modifiqué una librería que había bajado de un repositorio. La fantasía no duró mucho. Finalmente, acabé en mi último trabajo. Donde pelearme con dlls, jugar a los detectives y hacer ingeniería inversa ilegalmente era un día bueno. El sueldo notablemente mejor, seguía sin ser bueno. Sin horario de verano, viernes hasta tarde. Lugar de trabajo: Oficina en el medio de la nada, concretamente sótano 2 (es decir, la cueva de los informáticos). Antes de coger este trabajo me había propuesto ser el mejor ingeniero de software que pudiera ser. Es decir, la mejor versión de mi mismo. Leí libros, empecé proyectillos, hice cursos online... Y luego llegué a un puesto en el que leía código 1 vez al mes, y me dejaban tocarlo cada 2... Para compensar, empecé a aprender C++ por las tardes, me pasaba unas 14 horas en el pc al día. A los meses, abandoné el estudio ingenieril por las tardes porque el cuerpo me pedía desagarrotar las piernas con una palanca. El trabajo fue a peor, me fue invadiendo la apatía. Hice un blog para soltar la mierda del trabajo y quedarme a gusto, pero nunca lo usé. Empecé a pasar cada vez más tiempo tumbado en el suelo mirando al techo. A beber por las tardes solo en casa. Sentía que lo que hacía cada día no servía para nada, a pesar de esforzarme mucho. Estaba todo muy mal organizado a todos los niveles, en la oficina siempre decía que al proyecto había que prenderle fuego y volver a empezarlo... Finalmente, me planteé dedicarme a algo que no tuviera que ver con la informática. Así no estaría tan harto de la pantalla cuando quisiese hacer lo que me gusta (software libre, cacharrerar, etc.). Al final reuní el valor, dejé mi trabajo, sin indemnización, sin derecho a paro. Me estaba consumiendo. ## ¿De qué estamos hablando? Resentimiento, lamentación. Me hubiera gustado dedicarme al código abierto. No he hecho ni una contribución. No creo que sea especialmente incapaz de contribuir. Nadie me enseñó lo que es el código abierto o el software libre, nadie me ha enseñado tecnologías libres. Me puedo descargar un script en python y trastearlo, o en bash. Pero no tengo el conocimiento de ayudar, de contribuir. Estudié Java en un curso universitario, pero me bajo un proyecto en Java y no sé ni arrancarlo, ni hacer una interfaz gráfica. No considero que haya sido un mal profesional, pero me siento inútil. Quizá si al salir de la carrera no me hubiera grabado con las etiquetas .NET, C#, ASP MVC y me hubiera puesto otras en su lugar ahora me sentiría más apto, más realizado, podría aportar algo. Soy un programador que se siente incapaz de aportar una línea de código. ¿Menudo fracaso no? Miedo. Probablemente no debería tenerlo. Llevo años sin trabajar, pero he hecho una oposición de empleo público y estoy en bolsa de trabajo, bien posicionado. ¿Pero me he condenado a tener dos trabajos? ¿El oficioso y el pasional? Por ejemplo, quiero aprender a gestionar servidores, es una carrera profesional que estoy desarrollando de manera autodidacta y no pienso trabajar de ello profesionalmente. ¿Cuántas horas voy a sacrificar en esta carrera para no sacarle rédito? ¿Estoy hipotecando mi futuro aceptando un trabajo para asegurar mi manutención mientras sé a ciencia cierta que tendré otro trabajo pasional siempre? ¿Por qué no he sido capaz de hacer mi pasión mi trabajo? He de decir que mis pasiones y mis "trabajos no oficiales" han ido evolucionando, no sé cuán factible es evolucionar así en el mundo profesional IT. ## Conclusión Todo esto provocado por una pequeña dll, inocente, inofensiva. Me ha hecho levantarme a las 6 de la mañana, a quitarme horas de sueño y rayarme la cabeza. A mí, que soy oficialmente Nini y solo me dedico a esperar la llamada de ese trabajo cómodo que me garantice el sustento de por vida.