Algunos lo sabréis, otros quizá no.
Hace casi tres años empecé un proyecto que no me imaginaba hasta dónde me acabaría llevando.
Estoy hablando de AVILON.
Y ahora que estoy muy cerca de completar su desarrollo al 100%, me he puesto algo nostálgico y me apetecía contaros cómo ha sido todo este proceso, desde que nació como una pequeña idea hasta llegar al punto en el que estamos ahora.
Porque AVILON no ha sido simplemente un proyecto más.
Ha sido un proyecto que ha estado presente durante una etapa bastante importante de mi vida.
Y esta es su historia.

Todo empezó con un videojuego
El 30 de abril de 2024 se lanzó un videojuego llamado Gray Zone Warfare.
Por aquel entonces no había escuchado hablar de él prácticamente nunca, pero decidí comprarlo y probarlo.
Sabía que estaba en early access y, más concretamente, en estado de pre-alpha. Aun así, decidí darle una oportunidad.
Quería comprobar por mí mismo si en el futuro podía convertirse en un gran juego al que dedicarle horas y horas o si simplemente acabaría siendo otro juego más abandonado en mi biblioteca de Steam.
Para mi sorpresa, funcionaba bastante bien.
No encontraba demasiados bugs, más allá de algún NPC que, aun después de vaciarle un cargador entero, parecía no tener ninguna intención de morir.
Pero, por lo demás, genial.
Sin embargo, rápidamente me di cuenta de que tenía un problema bastante importante.
La campaña.
La campaña dejaba bastante que desear. Hasta tal punto que no merecía demasiado la pena sumergirse en el mundo más allá de lo necesario para completar las misiones.
Así que recurrí a lo clásico.
Buscar un vídeo en YouTube que explicara cómo hacer la misión y recoger la recompensa.
Una vez.
Y otra.
Y otra.
Hasta que me cansé.
Decidí buscar un mapa interactivo en Internet donde pudiera consultar rápidamente qué tenía que hacer y dónde encontrar cada cosa.
No tardé demasiado en encontrar uno.
Así que lo guardé en una carpeta de favoritos de mi navegador.
Y ahí se quedó.
Por aquel entonces no tenía ni idea de que aquel simple marcador acabaría siendo el principio de AVILON.
Otro juego, otra idea
Al poco tiempo decidí jugar con un amigo a Palworld.
Para mi sorpresa, me gustó bastante.
Así que ahí nos veías, jugando durante horas, descubriendo el mundo, consiguiendo recursos y explorando todas las posibilidades que ofrecía el juego.
Hasta que llegó ese momento.
Mi amigo decidió buscar un mapa interactivo para encontrar determinados recursos para nuestra partida.
Y ahí fue otro marcador más para mi carpeta de mapas.
Pasó el tiempo y la historia volvió a repetirse.
Un día, mientras hacía limpieza en mi navegador, me encontré con aquella carpeta llena de mapas interactivos.
Y entonces se me pasó una cosa por la cabeza.
En vez de tener todas esas páginas guardadas y llenar el navegador de pestañas cada vez que jugaba a un juego...
¿No debería existir una herramienta que reuniera todo esto?
O, al menos, que lo facilitara.
Dejé de hacer limpieza en el navegador y me puse a buscar si existía algo parecido en Internet.
Para mi sorpresa, no encontré nada que hiciera exactamente lo que yo tenía en mente.
Y, teniendo cada vez más ganas de avanzar en Gray Zone Warfare y con unas cuantas cervezas encima, tomé una decisión:
Si no existía este programa, lo crearía yo mismo.
Lo que no sabía era dónde me estaba metiendo.
Mi primer programa
Un día, aunque no recuerdo exactamente cuál, me puse manos a la obra.
Y aquí estaba el pequeño problema.
No tenía ni idea de cómo crear un programa.
No sabía qué lenguaje utilizar, cómo se estructuraba una aplicación de escritorio ni qué herramientas necesitaba.
Hasta ese momento, prácticamente solo sabía hacer páginas web.
Pero tenía una idea bastante clara:
Quería crear un programa donde pudiera abrir mapas web interactivos sin tener que llenar medio Chrome de pestañas.
Así que hice lo que probablemente haría cualquiera hoy en día.
Le pregunté a una IA.
Qué necesitaba.
Qué lenguaje debía utilizar.
Cómo podía empezar.
Y ahí estaba yo, una tarde, sobre las siete y media, creando mi primer archivo de Python.
El proyecto se llamaba My Map Manager.
Y poco a poco empezó a convertirse en algo más.
Pasaron los días mientras ChatGPT me explicaba qué hacer en cada archivo, qué código tenía que añadir y cómo podía solucionar los problemas que iban apareciendo.
Y, poco a poco, el programa empezó a tomar forma.
Ya podía añadir juegos, ponerles una miniatura e incluso utilizar mapas basados en imágenes.
Yo estaba bastante contento.
Prácticamente solo quedaba añadir lo que realmente me interesaba: soporte para mapas interactivos basados en páginas web.
Y ahí empezaron los problemas.
Cuando todo empezó a romperse
La ventana de los mapas web no funcionaba.
O cargaba mal.
O directamente no cargaba.
Intentaba solucionarlo y, cuando conseguía arreglarlo, se rompía otra parte del programa que hasta ese momento funcionaba perfectamente.
Durante varios días estuve intentando entender qué estaba pasando.
Hasta que finalmente descubrí el problema.
Una dependencia no estaba correctamente integrada en el proyecto.
Una vez solucionado aquello, por fin todo empezó a funcionar como esperaba.
Y decidí tomarme un descanso.
No podía creer que, en cuestión de unas semanas, hubiera conseguido crear un programa que, al menos según mi búsqueda, no existía en Internet.
Había empezado sin tener prácticamente ni idea de cómo hacer una aplicación y ahora tenía un programa funcionando delante de mí.
Y estaba bastante orgulloso de ello.
El primer gran golpe
Después de varios días de descanso, terminé pasando prácticamente un mes sin tocar el proyecto.
Simplemente admiraba lo que había conseguido hacer.
Hasta que un día volví a abrirlo.
Y pensé que la parte visual podía ser mucho mejor.
Tenía el código fuente.
Nada me impedía mejorarlo.
Así que me puse manos a la obra.
Y entonces todo fue a peor.
Durante aquel tiempo de descanso, Python se había actualizado y mi ordenador también.
Y prácticamente nada de lo que había construido funcionaba.
Ni siquiera el programa arrancaba.
Todavía recuerdo la frustración que sentí.
Aunque no me había costado una cantidad enorme de tiempo crearlo, sí sentía que una parte de mi esfuerzo se había ido a la basura.
Así que esta vez decidí abandonar el proyecto.
Solo temporalmente.
O eso pensaba.
Lo dejé durante unos meses y empecé a centrarme en otras cosas.
La fotografía fue una de ellas.
Pero también empecé a centrarme en mí mismo.
Porque, mientras AVILON se quedaba abandonado, las cosas en mi vida personal tampoco estaban yendo especialmente bien.
Empecé a pasar por una etapa de ansiedad bastante complicada.
Llegué incluso a plantearme si lo que estaba viviendo era ansiedad, depresión o simplemente una mezcla de demasiadas cosas.
No lo sabía.
Lo único que sabía era que cada vez tenía menos ganas de hacer cosas.
Y el alcohol terminó convirtiéndose en una vía de escape.
Hubo días en los que no sabía qué hacer con mi vida.
Si intentar arreglar todo lo que estaba ocurriendo o simplemente dejarme caer.
No quería levantarme de la cama.
No tenía motivación.
No tenía ganas de hacer nada.
Y hubo días, quizá semanas, de los que ni siquiera recuerdo demasiado bien cómo pasaron.
La noche que lo cambió todo
Una noche, siendo simplemente un chico con ansiedad en mitad de uno de esos momentos, decidí levantarme de la cama.
Llevaba muchas horas, quizá días, prácticamente sin hacer nada.
Por alguna razón, de forma casi instintiva, encendí el ordenador.
Y ahí estaba.
Sentado delante de una pantalla, con una botella de alcohol en una mano y el ratón en la otra, mirando el escritorio y moviéndome entre las diferentes carpetas.
Hasta que la vi.
La carpeta de AVILON.
En ese momento me vinieron recuerdos de cuando estaba desarrollándolo.
De lo contento que me ponía cuando una funcionalidad funcionaba.
De las horas que había pasado delante del ordenador.
Y, sobre todo, de algo que había olvidado:
Cuando trabajaba en AVILON, me levantaba de la cama con ganas de seguir desarrollándolo.
Fue como un flash.
Pensé en lo mal que me estaba yendo todo.
En todas las cosas que había dejado a medias.
En todo lo que podría haber hecho si las cosas hubieran sido diferentes.
Y, sin darme cuenta, empecé a llorar.
Lágrimas y lágrimas.
Durante un momento llegué incluso a pensar en acabar con todo aquel dolor de una vez.
Pero después de varios minutos llorando, con aquella botella de alcohol todavía en la mano, tomé una decisión.
No podía controlar todo lo que estaba ocurriendo en mi vida.
Pero sí podía empezar a cambiar algunas cosas que estaban a mi alcance.
Me limpié la cara.
Y esta vez iba a ser en serio.
Empezar de nuevo
No voy a decir que cambiar fue fácil.
No lo fue.
Pasar de estar en lo más bajo a volver a sentir ilusión por algunas cosas requirió muchísimo esfuerzo.
Y, sobre todo, tuve que pedir ayuda.
Decidí empezar a ir al psicólogo y, sinceramente, creo que fue una de las mejores decisiones que pude tomar.
No solamente me ayudó con mi estado de ánimo.
También me ayudó a afrontar muchos de los problemas que estaban ocurriendo en mi vida personal.
En una de las sesiones me preguntó qué era lo que me gustaba hacer cuando estaba bien.
Y le conté que tenía un proyecto que estaba desarrollando.
AVILON.
Me pidió que le explicara qué era, para qué servía y qué quería conseguir con él.
Se lo conté.
Y me dio un consejo muy sencillo:
Empieza por completar pequeñas metas.
Si desarrollar AVILON te hace sentir mejor, aunque solo sea durante el rato que estés trabajando en él, hazlo.
Aunque no te salga a la primera, sigue intentándolo.
Y aquello cambió muchas cosas.
Mi amigo también conocía mi situación.
Le conté lo que me había dicho el psicólogo y me animó a intentarlo.
Me conoce bastante bien y sabe que no soy precisamente bueno dejando cosas a medias.
Cuando me centro en algo, normalmente no paro hasta terminarlo.
Así que decidí hacerles caso a los dos.
AVILON vuelve
La noche siguiente, después de cenar, decidí retomar aquello que había dejado a medias.
AVILON.
Pero esta vez iba a hacerlo de otra manera.
Me planifiqué.
Busqué información sobre lo que necesitaba.
Y empecé a apuntarlo todo en una libreta.
De hecho, esa fue otra de las recomendaciones que me habían dado: escribir las cosas.
No en el ordenador.
No en el móvil.
En una libreta.
Después de pasar varias horas organizando todo lo que quería hacer, me sentía mucho mejor.
No estaba al cien por cien.
Ni mucho menos.
Pero estaba centrado.
Y, comparado con cómo me encontraba antes, aquello ya era una mejora enorme.
Así que tomé una decisión.
Iba a volver a desarrollar AVILON.
Al día siguiente me levanté bastante bien.
Había dormido relativamente bien y tenía ganas de empezar.
Me preparé mi café y comencé a hacer lo que había apuntado en aquella libreta.
Y, para mi sorpresa, todo empezó a funcionar.
Las cosas salían.
Los problemas se solucionaban.
El proyecto avanzaba.
Y, en cuestión de semanas, no solamente había mejorado considerablemente mi estado de ánimo, sino que también estaba a punto de volver a terminar AVILON hasta donde lo había dejado.
Aquello me dio una alegría enorme.
Mientras el proyecto mejoraba, yo también lo hacía.
En las consultas con el psicólogo le contaba cómo me sentía y él me preguntaba por el desarrollo de AVILON.
Sin darme cuenta, aquellas conversaciones también se convirtieron en una motivación más para continuar.
Yo llegaba y le contaba los avances.
Había conseguido hacer esto.
Había solucionado aquello.
Había añadido una nueva función.
Y el proyecto seguía avanzando.
Por fin, terminado
Pasaron los meses.
Meses de esfuerzo por salir de aquella etapa.
Por solucionar mis problemas personales.
Por intentar controlar el alcohol.
Por asistir a terapia.
Por volver a encontrar una rutina.
Y, finalmente, después de todo aquel esfuerzo, terminé AVILON.
Era la primera vez en mucho tiempo que sentía que algo que me había costado tanto esfuerzo, tanto personal como mental, llegaba realmente a su final.
No podía creerlo.
Después de todo aquel tiempo, por fin había terminado el proyecto.
Todo funcionaba.
Y yo me encontraba mucho mejor.
Parecía que aquella historia había terminado.
Pero todavía quedaba algo.
Steam
Después de todo aquello decidí tomarme un descanso.
Aunque no demasiado.
Una noche, mientras estaba mirando unas cosas por Steam, se me ocurrió una idea:
¿Y si publicaba AVILON en Steam?
Parecía la forma perfecta de culminar el proyecto.
Llevaba años utilizando Steam para jugar a mis videojuegos favoritos y tener mi propio proyecto publicado allí me hacía bastante ilusión.
Así que lo hice.
Al principio todo fue bien.
Steam me pedía información y yo la enviaba.
Pagué la tasa de 100 dólares.
Todo parecía avanzar con normalidad.
Hasta que llegaron las revisiones.
Y entonces empezó otra historia.
Me rechazaban el producto por prácticamente cualquier cosa.
Que una imagen no cuadraba por un píxel.
Que una descripción no explicaba exactamente lo que hacía el programa.
Que había que modificar esto.
Que había que cambiar aquello.
Y poco a poco empecé a sentir otra vez aquella sensación de agobio.
Después de todo lo que había pasado, no quería volver a entrar en aquella rueda.
Hasta que llegó el momento definitivo.
Steam me comunicó que no podían aprobar AVILON porque, según su revisión, no cumplía con las directrices de la plataforma.
Después de aproximadamente dos semanas de estrés, cambios y rechazos, entendí que aquello no iba a ninguna parte.
Y me molestó muchísimo.
Sobre todo después de haber pagado.
Pero esta vez no iba a abandonar el proyecto.
Tomé otra decisión.
Si no podía publicar AVILON allí...
crearía mi propio espacio.
Mi propia web
Volví a aquello que mejor se me daba.
Las webs.
Y en cuestión de horas tenía una página preparada para AVILON.
El programa estaba publicado y listo para distribuirse.
Y, sinceramente, terminó siendo una de las mejores decisiones que podía haber tomado.
En lugar de depender de una plataforma, creé mi propio espacio en Internet.
AVILON podía estar disponible para cualquiera.
Y, además, gratis.
Aquello cerró una etapa.
AVILON estaba terminado.
Funcionaba.
Tenía una web.
Tenía un sistema de distribución.
Y podía utilizarlo cualquiera.
Así que decidí hacer algo que quizá debería haber hecho mucho antes.
Tomarme un descanso.
Pero esta vez sería un descanso de verdad.
Un año después
Durante aproximadamente un año decidí dejar AVILON tranquilo.
Ya tenía todo funcionando como quería.
La web estaba publicada.
El sistema de producción estaba hecho.
El programa funcionaba.
Así que aproveché ese tiempo para volver a centrarme en otras cosas.
Retomé la fotografía.
Seguí trabajando en otros proyectos.
Y, sobre todo, seguí centrándome en mí mismo.
Y la verdad es que las cosas empezaron a ir bastante bien.
Mi vida personal mejoró.
Seguí creando proyectos de programación.
Algunos los terminé.
Otros siguen todavía en desarrollo.
Pero esta vez había algo diferente.
Había aprendido.
Ya no era aquella persona que se había puesto delante de un ordenador una tarde sin saber absolutamente nada sobre cómo crear un programa.
Ahora tenía experiencia.
Había aprendido de mis errores.
Y también había aprendido algo mucho más importante:
No todo tiene que terminarse de golpe.
Una nueva casa y una vieja carpeta
Hace aproximadamente un mes conseguí independizarme.
Y, en España, eso ya es casi un proyecto en sí mismo.
Así que decidí convertir mi nueva casa en eso.
En mi hogar.
Un lugar donde vivir, desarrollar, aprender y crecer.
Cuando terminé de montar el PC, volví a encontrarme con una vieja carpeta.
AVILON.
Aquel proyecto que había ocupado una parte tan importante de mi vida.
Ya llevaba tiempo publicado.
La recepción de los usuarios no era mala.
Pero todavía había una espina clavada.
Linux.
Para entonces yo ya había dejado Windows y estaba utilizando Linux.
Así que tenía la excusa perfecta.
Si iba a empezar una nueva etapa utilizando Linux, ¿por qué no aprovecharla para terminar también aquello que había dejado pendiente?
El final de AVILON
Y así llegamos al punto en el que estamos ahora.
AVILON está terminando su ciclo de desarrollo.
Después de todo este tiempo, por fin cuenta con una versión nativa para Linux, compatible con distribuciones basadas en Arch.
Pero no solamente he añadido soporte para Linux.
También he aprovechado para mejorar la interfaz, añadir nuevas funcionalidades y pulir diferentes partes del programa.
Y ahora, con la versión 3.0 ya en producción, puedo decir algo que hace unos años me parecía bastante difícil de imaginar:
AVILON está terminado.
O, al menos, ha llegado al punto en el que siempre quise verlo.
Terminando lo que una vez empecé
Mirando atrás, resulta bastante curioso pensar en cómo empezó todo.
Un videojuego.
Un mapa interactivo.
Una carpeta de favoritos.
Unas cuantas cervezas.
Una tarde aprendiendo Python.
Y una idea que, en aquel momento, parecía simplemente otro proyecto más.
No sabía programar aplicaciones.
No sabía cuánto iba a durar.
No sabía cuántas veces lo iba a abandonar.
No sabía que acabaría publicándolo.
No sabía que terminaría creando una web para él.
Y, sobre todo, no sabía que aquel proyecto acabaría acompañándome durante una de las etapas más complicadas de mi vida.
AVILON empezó siendo un programa para abrir mapas interactivos.
Pero para mí terminó significando bastante más.
Me enseñó a programar.
Me enseñó a tener paciencia.
Me enseñó que los proyectos no siempre salen como uno espera.
Me enseñó que abandonar algo durante un tiempo no significa necesariamente haber fracasado.
Y, sobre todo, me enseñó que incluso cuando parece que no puedes más, todavía puedes empezar de nuevo.
Por eso, si tuviera que sacar una moraleja de toda esta historia, sería bastante sencilla:
Por muy jodido que se ponga todo, por muy complicado que sea un proyecto o por muy complicada que se ponga tu vida en general, siempre hay una solución.
Quizá no sea inmediata.
Quizá tengas que parar.
Quizá tengas que pedir ayuda.
Quizá tengas que empezar de cero.
Pero siempre puedes volver a intentarlo.
Y, algunas veces, terminar aquello que una vez empezaste no significa solamente terminar un proyecto.
Significa demostrarte a ti mismo que todavía puedes hacerlo.
AVILON empezó como una idea.
Y hoy, casi tres años después, por fin puedo decir que está terminado.
Cargando comentarios...