No es una «feature» es una chapuza

Dicen que los bugs de hoy son las «features» del mañana. Al menos es lo que viene haciendo Microsoft desde hace años y parece que miles de empresas se lo han tomado tan en serio que están haciendo de la chapuza un arte.

Hoy, por ejemplo, me he vuelto a casa con un regusto amargo en la boca.

Como se dice el pecado pero no el pecador digamos que yo trabajo en la cárnica SemosLaLeche y que me ocupo de parte de un proyecto para un gran cliente al que llamaremos PowerRangers. Yo no programo, ni analizo ni hago nada tan entretenido sino que me ocupo de que los equipos de desarrollo entreguen el trabajo bien y en un tiempo razonable.

Los equipos de desarrollo han de funcionar como cajas negras, al más puro estilo de «Software Factory». Algún día me explayaré en el sinsentido de las cajas negras de desarrollo, pero lo resumiré aquí para que se entienda como que es un gran invento de las cárnicas para contratar a gente con muy poca experiencia por bajo coste pero pretender hacerlos pasar como superexpertos de la muerte. Vamos, que son una engañifa en la mayor parte de los casos pues, como cualquiera que se haya dedicado al desarrollo de software profesionalmente debería saber, la efectividad de un equipo depende en gran parte de la experiencia que hayan adquirido trabajando juntos y de la cohesión. El desarrollo de software no se basa en ir poniendo y quitando becarios, que esto no se trata de una fábrica de producción en cadena.

Como antecedente digamos que he trabajado con equipos más o menos estables durante años, incluso dentro de fábricas de software (un rara avis en la carnicería de este país). Estoy acostumbrado a enviar un análisis a un nivel bastante bajo (casi al nivel de un cuaderno de carga) y que me devuelvan un producto acabado y probado, no libre de errores pero del que tengo la confianza de que si pulso un botón no se va a producir una hecatombe.

A nivel personal, y no es por echarme flores, doy la libertad suficiente y la confianza como para que quienes trabajan para mí sepan que no voy a estar como un águila acechando, o preguntando cada media hora «cómo va». Tampoco realizo planificaciones sin contar con quienes van a realizar el trabajo; durante años he sido desarrollador y sé lo que jode que otro, que muchas veces no tiene ni puta idea, «opine» que tu trabajo llevará «un par de horas».

Pues resulta que me ha tocado usar una caja negra desconocida, una de una empresa a la que llamaremos BoQuePassa. Se supone que se ocuparían del análisis y el desarrollo y me entregarían un producto terminado y probado. Teóricamente mi única tarea sería elaborar informes de seguimiento (puaj!) para reportar cómo iba la cosa a PowerRangers y ocuparme de que las cosas se hacían en las fechas adecuadas, recibir el producto final y presentarlo a los usuarios finales para que se maravillasen y todo fuesen alabanzas por un trabajo bien hecho.

En ningún momento participé en la planificación, que fue establecida por BoQuePassa, ni estuve interrumpiendo pidiendo informes de seguimiento. Confiaba en que, como empresa supuestamente seria, se ocuparían de todo y me entregarían un producto llave en mano.

Fail!

La primera la recibí en toda la boca hace semanas: «vamos con retraso, pero lo estamos corrigiendo y creemos que llegaremos a tiempo». «Bueno», pensé, «vosotros lo habéis planificado y sabréis hasta donde poder lllegar». No dije nada más porque me aseguraron que estaría todo perfecto para la demo final.

Por desgracia el Factor Bus pasó a mi lado y, aunque no me atropelló de lleno, sí me dio un buen golpe y tuve que estar una semana de baja bastante dolorido. Durante esa semana se supone que yo habría de ocuparme de probar por encima la aplicación para ver que todo estaba correcto. Mala suerte, no pude, esas cosas pasan.

Iluso de mí creí que serían lo suficientemente espabilados para que, si no habían acabado, se ocupasen de remendar el producto para que tuviese buena cara. Todavía había tiempo, mucho tiempo.

Vuelvo de mi baja, proceso todo lo que tengo que procesar, que es bastante, porque cuando no estoy nadie hace mi trabajo y me dispongo a probar la aplicación.

Hola, que tal, click, BUM!

Será algún error de despliegue, que dice que no tiene permisos de ejecución, vale, no hay problema. Vamos a probar por aquí… BUM! otro error de permisos… ¿Y si pulso aquí? Anda, si funciona, vamos a ver si me devuelve datos… BUM!

No perdamos la calma, los errores de despliegue son normales. Es la primera vez que instalan aquí.

Pero… ¿alguien ha probado ésto? Vamos a echar una ojeada al documento de pruebas…

Dice que pulses aquí y aquí y graba aquí… y hasta hay una captura de pantalla.

Pulso aquí y aq… BUM!

OOOOOOOOOMMMMM

«Oye, me han dado estos errores y parecen de despliegue, debe ser fácil porque todo son errores de permisos. Vale, que lo arregláis hoy, perfecto. Me lo probáis, ¿eh? Y haced la migración de datos que está todo vacío. Muy bien, espero noticias».

Viernes, 14:30, mail de BoQuePassa: «Todo arreglado, puedes ir a probar».

Vamos allá y abrimos la aplicación, pulsamos aquí, tengo datos (bien!), pulso aquí y allá, tengo un informe muy bonito.

Parece que lo han arreglado, esto ya no casca. Vamos a crear esto aquí, grabamos … BUM! BUM! BUM! BUM!

Si yo fuese un usuario y me hubiera encontrado un error como el que obtuve probablemente estaría destrozando el ordenador con un martillo. Es que realmente si no sabes lo que es un «stacktrace» acojona ver esa lista infernal de cosas saliendo de una pantalla de colorines y puedes llegar a creer que vas a infectar al resto de la red con a saber qué virus. Mejor matamos al portador e infección resuelta.

Viernes, 14:50, vamos a seguir probando otras cosas por aquí. Click, click, tacatá, meto datos, filtro, saco informe, vale, lo anterior era un sustito y será poca cosa. Click BUM! Toma stacktrace!

Viernes, 15:00, esto pinta mal, vamos a hacer unas pruebas más… BUM! BUM! PADABUM!

Cuando digo BUM es casi una explosión literal. No es un mensaje de «no puedes introducir elemento repetidos» sino algo como «unique key failure nosecuantitos» y un botón de «OK» que te deja la aplicación tiesa. Cada vez que hace BUM tengo que reiniciar la aplicación y perder tiempo.

Viernes, 15:30, termino un mail explicando todos y cada uno de los errores con los que me he encontrado y vuelvo a preguntar «lo habéis probado?». Como remate, como ya tenía las pelotas algo inflamadas, y aunque sé que los programadores se acordarán de mi familia por ello lancé un ultimátum: «el lunes lo quiero funcionando».

Pocas veces en mi vida me he sentido tan mal. Yo, que soy una persona bastante pacífica y con bastante empatía, que sé lo que jode que por una entrega te hagan trabajar un fin de semana y que no se lo deseo ni a mi peor enemigo, haciendo lo que muchos jefes hijos de puta pretendieron hacer en su día conmigo (cuando era joven e inexperto).

¡Joder! ¡Soy el enemigo!

Todavía tengo revuelto el estómago.

Ya en casa, y tras zamparme el doble de la cantidad diaria recomendada de noodles (es que soy grande y no me basta una ración), reflexioné un momento y llegué a ciertas conclusiones.

Yo debo ser raro pero no me atrevería a entregar una chapuza que no funcionase, y menos DOS veces. No es por echarme flores (que también) pero si me consideran un buen profesional no es porque me dedique a crear mierda. Lo que hago puede ser más feo o mas bonito pero hace lo que tiene que hacer y no te explota en la cara.

Si me pasa esto en una demo a un cliente me acurrucaría en una esquina y lloraría desesperado. Parece que otros no, que es su pan de cada día. Supongo que el negocio estará, como he oído por ahí, en «coger el mantenimiento». Vamos, te tengo que pagar yo por una castaña de esas características y te quedas con el mantenimiento cuando el infierno se congele.

No es que la aplicación tenga bugs, es que es un gran error, es peor que un demonio del averno, es el quinto jinete del Apocalípsis hecho bytes.

También he pecado de exceso de confianza. He trabajado siempre con equipos más o menos profesionales y parece ser que no todos son así. A algunas personas has de vigilarlas como un halcón vigila a su presa o te clavarán la puñalada en cuanto te das la vuelta.

Y reflexionando un poco más, conociendo casos cercanos dentro de mi empresa y fuera, viendo verdaderas porquerías que ciertas empresas se atreven a hacer públicas, ¿tan mal está la cosa? ¿tanta suerte tengo de no haber caído en el cubo de mierda?

Es que como este sea un caso representativo, que me da en la nariz que sí, empiezo a explicarme por qué las cosas van tan mal en el sector informático. No es que no existan profesionales, es que las empresas no quieren pagarlos y prefieren chupar del bote mientras puedan y mientras no los descubran.

Por el precio de un buen trabajador tienes a 4 mediocres. Parece que la cantidad prima sobre la calidad.

Quizás por eso no hay Googles ni Facebooks españoles, pero sí Renfes.

 

A este pasó dejo la informática y me hago carpintero, como mi padre. Con lo tranquilo que se jubiló…