Nonsense

He metido otro de esos jueguecitos chorras en mi currículum. Es una especie de simulación de la película Juegos de Guerra.

Podría decir que lo he hecho para llamar la atención y que me contrate alguien que haga cosas chulas. O que es algún tipo de demostración…

Pero lo cierto es que mayormente es poco más que entretenimiento, una forma de ocupar mi tiempo en algo simpático. Y si alguien más se entretiene con ello, pues oye, mejor. También, por qué no, ha sido una buena excusa para volver a ver la película fijándome en los detalles… Ya no me acordaba de esa magnífica frase de madre que de repente suelta Jennifer en plena tensión:

“Ya te dije que no jugaras con esa máquina.”

Tampoco es la primera vez que hago algo así. Hace unos años monté mi currículum en forma de aventura conversacional con Inform7… No conseguí que nadie de recursos humanos de ninguna empresa entendiera qué era eso de una aventura conversacional, pero bueno, por lo menos a alguno sí le llamó la atención xD

En fin, si algo me queda claro es que en las películas se hacen muchas trampas. Y eso que reconozco que esta es relativamente consistente. Pero claro, en su mayoría es truco de cámara y ahí está la cosa. Para poder simular eso, terminas teniendo que hacer los mismos, o más, trucos tú mismo. Si intentas hacer lo que sería real, entonces todo queda mucho más aburrido. Me habría gustado realmente implementar un cat básico para leer las notas o hacer que el wardialer de verdad tardara un rato largo en conseguir números con tono, pero eso sería aburrido para la mayoría de la gente. En la película es muy fácil hacer un fundido, cambiar de escena y hala, ya ha pasado un día. Aquí, plantar un (time passes) en medio de la terminar me parecía que rompía demasiado la gracia. Ya creo que he forzado suficiente haciendo que el WOPR juegue 32 partidas él solo antes de entrar en crisis mientras sólo podemos mirar y esperar.

El código, por si alguien lo pregunta… Bueno, hay dos partes. El juego de tres en raya en sí es real. Juega contra ti o contra sí mismo. Está el código en Github enlazado ahí en mi CV. Esa parte ha sido un ejercicio (aún quiero mejorarlo un poco; la experiencia ha demostrado que necesita por lo menos unos pocos tests más xD) que tenía previsto… que quizá algún día use en el trabajo… probablemente no, viendo cómo están algunas cosas. En resumen, esa parte es limpia y sencilla.

Luego está el código de todo lo demás. De la terminal, del WOPR… Ese código es intencionadamente horrible. Empecé con ciertas buenas intenciones, o algo así. Pero luego empecé a querer que no fuera demasiado fácil mirar el código y encontrar las soluciones, y pensé en hacer un código sucio, innecesariamente complicado. Luego, pensé que no, y luego que sí otra vez. Hay cosas absurdamente duplicadas, cosas que he hecho de más de una forma sólo porque sí. Hay atajos y apaños. No es un código que merezca la pena verse xD

En fin, me basta con haberme entretenido yo y con que alguien más se entretenga unos minutillos viéndolo xD


Algunas referencias y detalles que ojo, podrían desvelar pistas!
  • Todo está basado en la película, hasta donde es razonable.
  • En sistemas Un*x, si haces ls a secas no ves los ficheros ocultos.
  • Puedes teclear help en la consola de David. (En la del WOPR no :p)
  • Sí, sé que el hecho de que se llame wardial es un anacronismo xD