¿Versionamiento para todo?

rootHace poco tuvimos que realizar una aplicación express, o sea, la teníamos que desarrollar en menos de un día, la probarían al día siguiente, la usarían dos días después y la mandarían a volar al tercer día. De hecho, la idea original de los usuarios era usar Excel y ni siquiera llamar a la gente de desarrollo.

Versionar un “proyecto” que ni a proyecto llega nos pareció, en ese momento, una buena práctica que podíamos ignorar. Recordé entonces que el mismísimo Kent Beck había hecho algún código sin pruebas unitarias, así que, escudado en el pragmatismo más vil, decidí dar mi aval a no crear un repositorio en el servidor de versionamiento.

Pasaron muchas cosas, la primera fue que teníamos razón, no necesitábamos crear un repositorio de versionamiento, la aplicación se terminó, se probó, se autorizó, se colocó en producción, nunca se utilizó y el código no vale ni de buen ejemplo. Para acabar rápido, fue una pérdida de tiempo.

Pero la duda sigue allí, el casi remordimiento de haber programado a capela, sin paracaídas, como trapecistas sin red.

A toro pasado, y por más vueltas que le doy, no consigo justificar una mala práctica tan elemental, a pesar incluso de que se tratara de un programa tan simple y sencillo. No es que nos hubiese salvado la vida, acá entre nos, si algo hubiese pasado, volver a empezar y programarlo todo desde cero no habría llevado mucho tiempo. El punto no es ese, sino la tolerancia a las malas prácticas (ya ve usted, la tolerancia no siempre es buena).

Tampoco me quiero poner de fundamentalista, sigo pensando que el servidor de versionamiento no tenía que utilizarse en algo tan pequeño, un poco de pragmatismo no nos viene mal aquí. Pero bien podríamos haber creado un repositorio local, en la misma máquina. Aunque fuera sólo para tener un super “undo”. Terminado el proyecto, se eliminan los archivos de código y el repositorio y es como si nada hubiese pasado. Un repositorio local no es una infalible red de seguridad, pero al menos de rodillera funciona.

Hay buenas prácticas que son tan elementales que podríamos llamar radicales, no en el sentido de la intolerancia, sino en el sentido de que son la raíz, el fundamento o cimiento para todas las demás. Versionar es sin duda una buena práctica radical.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s