Acerca de mí

Empecé a programar en 1996 con un libro de GW-BASIC, sin ordenador, escribiendo líneas de BASIC en papel. Un año después tuve mi primer ordenador y empecé a programar con QBasic, que encontré de casualidad escondido en un disco de instalación de Windows.

Estudié Ingeniería Técnica en Informática de Gestión, donde establecí las bases tanto en desarrollo de software como en asignaturas relacionadas con dirección y organización de empresas.

Actualmente trabajo en una empresa desarrollando software de facturación.

Self-hosting

En los primeros años de carrera seguí un tutorial de la asociación Linux Albacete para montar un servidor casero con Debian. Conecté por primera vez un equipo antiguo —sin monitor ni teclado— por SSH a un Debian mínimo, instalándole solo lo justo: servidor web, base de datos, cortafuegos y poco más. La experiencia fue maravillosa.

A lo largo de los años he ido cacharreando con Raspberry Pi, VPS y mini PC. El self-hosting ha sido siempre un hobby; nunca he sido administrador de sistemas ni nada similar.

Actualmente tengo un homelab con tres nodos: kvothe, un mini PC de bajo consumo con Ubuntu donde ejecuto la mayoría de los servicios en contenedores Docker; elodin, un QNAP para almacenamiento de datos y copias de seguridad; y kilvin, un equipo de sobremesa donde experimento con Podman y quadlets sobre Fedora, y también con inferencia local de modelos de inteligencia artificial.

Programación

Mi verdadera pasión ha sido siempre la programación, y ha sido fascinante ver su evolución: desde ese GW-BASIC con líneas numeradas, pasando por lenguajes imperativos serios y eficientes como C, la programación orientada a objetos con Java, la explosión de frameworks PHP que permitían hacer scaffolding y desarrollar aplicaciones completas, y en paralelo los CMS como Joomla, WordPress y Drupal —este último siempre me tuvo enamorado por su robustez y estabilidad—.

Más tarde llegó Python: para mí, una especie de PHP pero capaz de todo, desde scripts hasta aplicaciones de escritorio con PyQt o webs con Django. Después probé Node, con posibilidades parecidas pero con la ventaja de usar el mismo lenguaje en cliente y servidor —ese punto siempre me fascinó. En ambos casos acabé algo decepcionado al ver que el código sin tipos envejece mal en aplicaciones grandes.

Pronto descubrí TypeScript, posiblemente mi lenguaje favorito de frontend, y frameworks como Angular y NestJS que permiten tener backend y frontend con el mismo lenguaje y una estructura similar, reduciendo la fricción al cambiar de uno a otro.

Después conocí Flutter con Dart —posiblemente mi segundo lenguaje de frontend favorito— y me inicié en el desarrollo móvil, con la ventaja añadida de una misma base de código para iOS y Android.

El último gran descubrimiento fue Go: rendimiento brutal, compilación a un único binario y la posibilidad de generar imágenes Docker de unos pocos megas, un orden de magnitud menos que sus equivalentes en Python o TypeScript. Go es, hasta la fecha, mi lenguaje favorito para backend e infraestructura. Rust está en el horizonte y promete dar un paso más en robustez, eficiencia y estabilidad, conservando las ventajas del binario único y las imágenes Docker pequeñas que ya tiene Go.

Vivimos un momento fascinante: con ayuda de la IAG se puede arrancar un proyecto en un lenguaje con poca experiencia previa, o incluso migrar código entre lenguajes con relativa facilidad, y elegir la tecnología que mejor encaje con cada necesidad. Ya no hay excusa para no experimentar —por ejemplo, con backends eficientes en Go o Rust y frontends en Svelte o Solid.

Más allá del código

Me gustan las novelas de ciencia ficción y los libros de productividad personal. También disfruto de los juegos de mesa — especialmente los eurogames — aunque no siempre encuentro el tiempo que me gustaría para una partida larga.

Soy un entusiasta de todo lo relacionado con la composición musical y la armonía: tipos de acordes, escalas, modos y cómo encajan entre sí. Toco saxofón, guitarra y piano; en cada uno llego a distinto nivel, pero los tres me sirven para entender la música desde dentro.

Este blog

La curiosidad por entender la tecnología en profundidad —y no solo usarla— es lo que me mueve a escribir. En el blog documento en público lo que aprendo cacharreando con self-hosting, programación y soberanía digital.

Soy un fanático de los podcasts, sobre todo los de programación, tecnología y productividad personal. Siempre que puedo —limpiando la casa, conduciendo o caminando al trabajo— aprovecho para escuchar alguno.

Si algo de lo anterior resuena contigo, echa un vistazo al blog o escríbeme. También tengo listas de podcasts y libros que me han marcado.