It’s not a bug

El desarrollo de proyectos complejos es una tarea complicada que necesita una buena gestión para no naufragar. Esto ya lo habíamos comentado en una entrada anterior. Sin embargo, no siempre el resultado es una especie de monstruo de Frankenstein que nos pide con su mirada que no le dejemos vivir de esta manera y acabemos con él. A veces pasa algo que incluso da más rabia, y es que todo parece haberse llevado a cabo bien (bueno, más o menos). Pero hay ESE pequeño fallo que te deja las noches en vela si eres un maldito perfeccionista.

Por suerte, uno de los grandes logros de la evolución del cerebro humano es la infinita capacidad que tiene para justificar cualquier acto a posteriori [2]. Poder convencernos totalmente que el resultado final es justo lo que queríamos desde el principio. En el desarrollo de proyectos de software, la cristalización perfecta de dicha filosofía es decir que no hay fallo alguno, que todo está exactamente como estaba previsto. It’s not a bug, it’s a feature! No es un error, es una característica distintiva.

Un clásico de esta situación ya tiene sus años, y lo encontramos en el viejo juego de matamarcianos, el Space Invaders. Los enemigos bajan lentamente por la pantalla hacia el jugador, que los ha de eliminar antes que lo alcancen. Pero fallo tonto, el desarrollador no contó que, en la máquinas que había diseñado, a medida que en la pantalla había menos enemigos, el programa se ejecutaba más rápido, y los enemigos aceleraban. Complicar el código para compensarlo daba un poco de pereza y, en el fondo, así el juego era más interesante, por lo que un fallo se convirtió en una característica distintiva.

Date prisa, que nos matan a todos...

Date prisa, que nos matan a todos…

Un caso similar suele pasar con juegos antiguos de ajedrez por ordenador. Hace unos lustros (como pasa el tiempo), el modo de calibrar los niveles de dificultad de estos programas pasaba por limitar el tiempo que el ordenador estaba pensado. Pero claro, unos instantes en un ordenador actual dan bastante más de si que en uno de hace 15 años…y el nivel “fácil” ahora hace entrecerrar los ojos a Kasparov. Bueno, solo es cuestión de decir que tu programa ya estaba pensado para auténticos campeones, y listo.

De hecho, los videojuegos están llenos de comportamientos extraños en la inteligencia artificial de los personajes, o decisiones absolutamente obtusas en su interfaz que, según los desarrolladores, actúan “tal y como se esperaba”, y así hacer el juego más difícil, y un reto solo para campeones (alerta, no entrar en el enlace a menos que no tengas nada que hacer en las próximas horas).

Otro caso simpático, por no ponerse a buscar otro adjetivo, lo encontramos en la protagonista de una de las franquicias de videojuegos más populares de los últimos años. Un pequeño error hizo que lo que tenia que incrementarse en un 50%, para llamar un poco la atención a los adolescentes de la época, saltara al 150%. Y así nació una de las grandes heroínas de los videojuegos. Y que Angelina Jolie, y no otra actriz, pudiera añadir un par de películas más a su lista.

Pero no todo van a ser aplicaciones viejas o videojuegos. Incluso aplicaciones más recientes y de gran uso pueden reconvertir errores en funcionalidades avanzadas por el bien de los usuarios. Si tu programa de gestión de correo tarda unos segundos en procesar los datos, no admitas que es lento, di que, en realidad, lo haces pera dar tiempo a pensar dos veces si querías enviarlo realmente y poder dar marcha atrás.

Con un poco de imaginación y morro, todos podemos ser judokas del código. Redirige la fuerza del error en su contra, hacia algo positivo, que te lleve a la victoria. Y en cualquier caso, recordad que, a las malas, ante cualquier fallo que dé rabia, uno siempre puede aplicar el principio de no futilidad: nada es completamente inútil, siempre puede servirle a otros como un mal ejemplo.

Así me gusta, todo en orden. Justo como yo quería.

Así me gusta, todo en orden. Justo como yo quería.

CC BY-NC-SA 4.0 It’s not a bug por jarnedo está licenciado bajo una Licencia Creative Commons Atribución-NoComercial-CompartirIgual 4.0 Internacional.

3 Comments

  1. En Apple son expertos en este argumentario… xD Muy buen post!

    Reply
  2. Instead the diet industry just keeps chugging along, raking in billions of dollars a year, making more outrageous promises. Once detached from the internal lining of the intestines, the remaining microorganisms need to be ejected out through the bowel.

    Reply
  3. First of all, bananas are a perfect low calorie snack, good for anyone trying to maintain or lose weight. You love your grandmother’s stuffing ‘ but her recipe calls for one pound sausage, one stick of butter and three eggs.

    Reply

Trackbacks/Pingbacks

  1. Bitacoras.com - Información Bitacoras.com... Valora en Bitacoras.com: El desarrollo de proyectos complejos es una tarea complicada que necesita una buena gestión…

Comentar

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

Leer entrada anterior
De programas y proyectos

Un programa no es un proyecto, ni muchos proyectos. Un proyecto consigue unos productos (un software, unos manuales, un entrenamiento,...

Cerrar