Microsoft intenta forzar periódicamente actualizaciones a sus clientes, mediante la eliminación de apoyo a las versiones anteriores de Windows y Office, mientras que cambia los formatos de archivos utilizados por las aplicaciones de escritorio, dejando a muchas empresas en una posición en la que se ven obligados a actualizar el software y formatos de documentos en los que han invertido tiempo.
Al eliminar el soporte de los sistemas operativos y software, como Microsoft Office, Microsoft no deja a las empresas más remedio que actualizar a versiones posteriores de su software. Las versiones posteriores del software tienen formatos de archivo que difieren de las versiones anteriores, obligando también a las empresas que intercambian estos documentos a actualizar. Además, algunas aplicaciones se niegan a ejecutarse en las versiones anteriores de Microsoft Windows, forzando a las actualizaciones completas del sistema para lo que sería esencialmente un cambio de formato de los documentos.
Este comportamiento no se limita a Microsoft, también a las empresas que fabrican productos de software propietario para Windows. Adobe actualiza regularmente su software para arreglar fallos utilizados para poder eludir las medidas restrictivas en sus lectores de PDF, y Apple utilizó su aplicación Software Update en Windows para obligar a los usuarios de iTunes a instalar el navegador web Safari.
Cómo arregla el software libre este problema: Todo el que utiliza el software tiene acceso al código fuente, esto crea tres opciones diferentes para el soporte del software más allá de cualquier tipo de apoyo que pueda ser ofrecido por los desarrolladores del software: En primer lugar, un subconjunto de usuarios del software podrá decidir que continúen apoyando el producto con las actualizaciones y correcciones de errores propios – un grupo llamado Fedora Legacy hizo esto para Red Hat 7.3 y Red Hat 9, para terminar varios años después las actualizaciones oficiales. En segundo lugar, un nuevo proyecto puede decidir continuar con el desarrollo del software por sí mismo, ofreciendo a los usuarios una opción de actualización alternativa en forma de una nueva versión o distribución del software. Por último, el usuario puede contratar a un desarrollador de software independiente, o un equipo de desarrolladores para mejorar y mantener el software.