Evolución software: la obsesión por las navajas suizas

Era una idea que me rondaba la mente y que en Coding Horror ha aparecido no una, sino dos veces en pocos días: es natural que el software se renueve, pero ¿lo hace correctamente? Muchas de las aplicaciones que usamos hace años son ahora verdaderos monstruos que hacen mucho más de lo que la mayoría necesitamos. De hecho, la norma de los desarrolladores es la de convertir un producto que estaba orientado a una tarea en una especia de navaja suiza con todo tipo de prestaciones que originalmente no estaban presentes y que no hacen más que agobiar al usuario.

El ejemplo perfecto es Winamp, un programa que sigo utilizando siempre en su versión 2.91 porque todo lo que vino después me sobraba. Yo sólo quiero Winamp para escuchar música. No lo quiero para grabar CDs, ni para ripear música. Ni siquiera me gusta usarlo como reproductor de vídeos, así que las versiones que aparecieron después - la fallida familia 3.x, y la mucho más completa saga de las 5.x - para mí no tenían sentido.

De hecho, muchas de esas 'funcionalidades extra' que nos venden las nuevas versiones ya están cubiertas por otras soluciones que fueron diseñadas para ese propósito. A mí no se me ocurre grabar un CD con Winamp: siempre lo hago con Nero - o con K3b en Linux -, y tampoco gestiono mis álbumes de fotos digitales desde ACDSee 8: me encanta la versión 3.1 de ACDSee y tengo Picasa para esa otra prestación. Es decir, que en el mundo del software me gusta que cada oveja esté con su pareja. Jeff Atwood lo explica con claridad:

But for some software packages, something goes terribly, horribly wrong during the process of natural upgrade evolution. Instead of becoming better applications over time, they become worse. They end up more bloated, more slow, more complex, more painful to use.

Es una verdad como un templo: muchas aplicaciones 'envejecen muy mal', y muchos usuarios acaban quedándose con versiones casi obsoletas. Las conocen mejor, hacen lo que quieren, y no necesitan más. Las nuevas versiones de Photoshop, por ejemplo, son todo un misterio para mí - aunque no soy un paquete tanto con esta aplicación y con GIMP - y esas nuevas herramientas de edición gráfica me la traen al pairo. Las nuevas versiones suelen deberse a tres causas esenciales:

Corrección de errores: es evidente que ningún software es perfecto y es necesario que sucesivas versiones corrijan bugs y vulnerabilidades que aparecen en las primeras versiones.

Inclusión de nuevas características propias de ese programa: como las que he comentado en el ejemplo de Photoshop, y que son sólo útiles a aquellos que sacan el máximo rendimiento a esas herramientas.

Inclusión de otras características totalmente separadas de la idea original: como Winamp en sus últimas versiones, o como ocurre también con otro de mis programas favoritos, el visor de imágenes ACDSee, que se ha convertido en otro monstruo que ya no sirve para lo que yo quería: un visor ultrarápido de imágenes.

A excepción de la primera causa, las demás casi nunca - hay excepciones, claro está - me han incitado a actualizar las aplicaciones con las que ya estoy cómodo. Uso versiones antiguas de WinRAR, Winzip, PowerDVD, Flashget, Nero y un largo etcétera de herramientas de las que simplemente - y me repito aquí - no necesito más. ¿Por qué actualizarlas?