# Software inflado

Software inflado (del inglés bloatware) software hinchado o software de relleno, son términos que se emplean, con connotación tanto neutra como peyorativa, para describir la tendencia reciente de los programas informáticos modernos a ser más grandes y usar mayor cantidad de recursos del sistema (espacio de almacenamiento, capacidad de procesamiento o memoria) que sus versiones predecesoras, sin que de ello se deriven beneficios evidentes para los usuarios finales.
El crecimiento desmesurado de los programas se achaca a diversas causas, que incluyen desde la tendencia a reemplazar aplicaciones centradas en la eficiencia por versiones mejoradas menos eficientes, la introducción de ineficiencias o módulos innecesarios en la forma de trabajo y diseño de los programas, o la incorporación de funcionalidades añadidas que apenas tienen valor para el usuario y disminuyen el rendimiento general del programa incluso si no se usan.
Este último punto es severamente criticado por ser consecuencia de dar prioridad a la mercadotecnia y a tener un conjunto de funcionalidades que llamen la atención antes que a la calidad, o a creer que el mercado del software demanda la inclusión continua de nuevas funcionalidades, lo que se traduce para muchos productos en la necesidad de proveer de versiones mejoradas cada cierto tiempo, para ser vendidas al usuario.
Este término también se usa, de manera más general, para referirse a aplicaciones que parecen usar más recursos del sistema de los que deberían ser necesarios. Al software con este tipo de comportamiento se le denomina: bloatware (inflaware), que en concreto son los programas que se expanden y ocupan mucho más espacio del que justifican las funciones que cumplen: algunos llevan peso muerto metido por los programadores iniciales (huevos de Pascua). Otros instalan sin pedir permiso componentes o partes que el usuario medio jamás utilizará. En esta época en que la memoria RAM ha bajado tanto de precio, las empresas de software ya no se preocupan de lo que fue un imperativo básico de la programación: la economía de recursos. También se le llama, aunque con menos frecuencia, fatware o crapware.

## Antecedentes históricos

Los desarrolladores de software implicados en la industria durante los años 70 tenían limitaciones severas en los recursos de que disponían (espacio y memoria de disco). Por ello, importaba cada byte, cada bit y cada ciclo del reloj del procesador; estas restricciones suponían un gran esfuerzo a la hora de programar. Además, se intentaba reducir al máximo las horas de trabajo que los programadores requerían para su trabajo, con el fin de bajar el coste de producción y con ello, por consecuencia directa, el precio final del software al usuario.

## Actualidad

Esta situación ahora se ha revertido. Los recursos disponibles para esta industria son baratos, y la rapidez de las características de la codificación y del título para la comercialización son ahora la prioridad de las empresas, en vez del estudio serio y a conciencia de un programa antes de lanzarlo al mercado. Este fenómeno es representado y resumido en el lema de la compañía Facebook "Muévase rápido y rompa cosas" que más tarde fue suavizado como "Muévase rápido con un Fondo estable". Esto implica dejar de lado la optimización o perfeccionamiento de los programas para agregar rápidamente funciones nuevas aun si no son perfectas.
En parte esto es así porque los avances tecnológicos han multiplicado desde entonces la capacidad de proceso y densidad del almacenamiento por órdenes de magnitud, mientras que se reducen los costos relativos por órdenes de magnitud similares (véase la ley de Moore).
Además, el hecho de que haya computadoras en todos los niveles de negocios e industrias, a que en los hogares se haya multiplicado enormemente el número de ellas y a la penetración masiva de los teléfonos inteligentes en la población de todas las edades y niveles socioeconómicos ha producido una industria del software mucho mayor de la existente en los años 70.

## Una nueva carga

Finalmente, las herramientas de desarrollo del software, cuando son actualizadas con nuevas características, también traspasan su nueva carga al software que se crea con ellas.
Estas funciones nuevas que los programas nuevos incorporan en su programación rara vez terminan siendo utilizadas por el usuario. Particularmente, los avances en los recursos disponibles para el desarrollo de software han conducido a la creación de más herramientas que permiten una creación más fácil del código fuente, a costa de una menor prioridad de la eficiencia final del programa.
Niklaus Wirth ha resumido la situación en la ley de Wirth, que indica que la velocidad del software está disminuyendo más rápido de lo que la velocidad del hardware está aumentando.

## Ejemplos y reacciones

Uno de los ejemplos famosos más tempranos fue el de Netscape Navigator, un navegador que inauguró la era punto com en los años noventa. Tiempo después, al ver que su principal competidor Internet Explorer comenzaba a ganar en popularidad y funcionalidad, sus desarrolladores respondieron agregando cada vez más prestaciones, haciendo que los usuarios se quejaran de su creciente lentitud y dificultad de uso, lo que le hizo perder al final la primera guerra de navegadores. Actualmente el navegador Google Chrome está presentando un problema similar, situación que están aprovechando sus competidores como Mozilla Firefox, Microsoft Edge, Brave y Opera para promoverse.
Otros ejemplos son los programas de Adobe Systems Incorporated, que en cada versión exigen mayores requisitos que las previas, siendo el caso más famoso su programa gratuito Adobe Reader, el cual era cada vez más demandante de recursos en cada versión sucesiva, hasta que tras ver el éxito de alternativas más ligeras como Foxit Reader y SumatraPDF decidieron revertir la tendencia.
Otro ejemplo célebre fue Windows Vista. Entre las críticas que recibió, eran sus elevados requisitos de hardware para la época y la lentitud e inestabilidad mayores a la de su antecesor, Windows XP. Por lo que algunos de los puntos de venta que uso Microsoft para promover a su sucesor, Windows 7, fueron su simplicidad y menor consumo de recursos.
Comparación de los requisitos mínimos de hardware de Microsoft Windows (para versiones x86 hasta Windows 11 que solo es compatible con la plataforma x64) :
| Versión | Procesador | Memoria | Disco duro |
| Windows 95 | 25 MHz | 4 MB | ~50 MB |
| Windows 98 | 66 MHz | 16 MB | ~200 MB |
| Windows 2000 | 133 MHz | 32 MB | 650 MB |
| Windows XP (2001) | 233 MHz | 64 MB | 1.5 GB |
| Windows Vista (2007) | 800 MHz | 512 MB | 15 GB |
| Windows 7 (2009) | 1 GHz | 1 GB | 16 GB |
| Windows 8 (2012) | 1 GHz | 1 GB | 16 GB |
| Windows 10 (2015) | 1 GHz | 2 GB | 16 GB |
| Windows 11 (2021) | 1 GHz, 2 núcleos y 64 bits | 4 GB | 64 GB |
Nero Platinum fue un caso similar. La versión 5.0 ocupaba 12 MB, su sucesora, la 6.0 escaló a los 500 MB y la versión 8 llegó a requerir 1.2 GB de espacio en el disco duro. La versión actual (2021) requiere 5 GB de espacio.
Otro caso célebre fue el programa iTunes, que inicialmente sirvió para administrar y transferir la biblioteca musical guardada en una Mac (o PC en versiones posteriores) hacia el reproductor de audio digital iPod. Posteriormente lanzaría su propia tienda de música virtual con notable éxito. Sin embargo con el paso del tiempo y a medida que los reproductores iPod (y posteriormente los teléfonos iPhone) ganaban nuevas funcionalidades Apple agregó cada vez un mayor número de características a la aplicación. Esto ocasionó que los usuarios se quejaran de problemas como lentitud, inestabilidad, dificultad de uso y la necesidad de actualizar constantemente la aplicación. Por lo que Apple debió distanciarse de ella con el tiempo. Primero dejó de hacer obligatorio su uso para activar los dispositivos en 2011 con el sistema iOS 5. Luego agregó el almacenamiento en la nube iCloud como opción de transferencia. Finalmente en 2019 Apple decide descontinuarlo en MacOS y reemplazarlo con tres aplicaciones para música, videos y películas, y podcasts, conservando solamente su versión para Windows.
Un caso significativo más fue Dropbox que fue un Servicio de alojamiento de archivos pionero en el campo lanzado en el año 2007 como una forma simple y amigable de almacenar y compartir archivos en la nube. Sin embargo en el año 2019 la compañía decidió reinventarlo como un espacio de trabajo y colaboración en la nube. Como resultado recargaron el servicio de características adicionales y los usuarios comenzaron a quejarse del elevado consumo de recursos y la mayor dificultad de uso.
En el caso de los teléfonos inteligentes, aplicaciones como Facebook, Facebook Messenger, Skype, Spotify, Google Maps, Instagram, Twitter y Shazam han sido acusadas de consumir demasiados recursos y batería para las prestaciones que ofrecen. Por lo que los desarroladores respondieron lanzando versiones "light" o reducidas, o bien, autorizando que otros desarrolladores creen aplicaciones alternativas para acceder a sus servicios.
Una solución habitual ha consistido en mantener versiones reducidas de los mismos programas para no cargar con accesorios sobrantes. Nero Burning ROM, ACDSee Standard, Microsoft Office Hogar y Estudiantes, Photoshop Elements, Facebook Lite, Messenger Lite, Instagram Lite, Shazam Lite y Spotify Lite entre otras variantes reducidas disminuyen los requisitos del sistema sin sacrificar en exceso la funcionalidad original. Sin embargo una queja común de los consumidores es la práctica de los desarrolladores de priorizar las versiones originales, ocultando, limitando su distribución a determinados territorios (como algunas versiones reducidas que sólo se distribuyen en países subdesarrollados), o en último extremo descontinuando las reducidas. Si bien como táctica comercial resulta comprensible, eliminar o negar el acceso a la versión reducida perjudica al usuario final, el cual ve limitadas sus opciones de consumo.
En cierta forma, se cumple una variante del Principio de Pareto. El 80 % de los usuarios usa sólo el 20% de las prestaciones, y aunque muchos expertos no concuerden, las opiniones de los usuarios son distintas al grado de influir ocasionalmente el desarrollo de las aplicaciones como muestran varios de los ejemplos anteriores.