¿Por qué los desarrolladores no hacen que la instalación sea automática en Windows? [cerrado]

35

Esta es la inversa a " ¿Por qué no hacen los desarrolladores asistentes de instalación en Linux? ", Lo cual es interesante, pero me hizo pensar "Instalación automática es la forma natural. ¿Por qué utilizan los magos?".
Entonces aquí está la pregunta inversa:

Estoy seguro de que no se trata de holgazanería, ni nada de eso, pero no entiendo por qué los desarrolladores, incluso principalmente de aplicaciones orientadas al consumidor, no realizan una instalación completamente automática en la que no se molesta en absoluto. Las mismas aplicaciones generalmente tienen instalación automática en Linux, entonces ¿por qué no Windows y Mac OS?

¿Hay alguna razón técnica para esta tendencia, o es solo una convención?

Volker Siegel
fuente
66
MacOs también es automático (casi): normalmente solo arrastra el icono a la carpeta "Aplicaciones". Supongo que en Windows no funciona debido a algunas cosas raras del registro
Lovis
3
"preguntado al revés" es realmente una opinión. No creo que sea justo fragmentar las respuestas a esa pregunta con este inverso porque no te gusta cómo se hizo (y un poco imo pedante ). Cualquier respuesta que termine aquí será simplemente la inversa de una respuesta válida a la otra. Siento que la respuesta adecuada si cree que la pregunta es al revés es agregar su propia respuesta que explique por qué se siente así, y luego responder la pregunta desde ese punto de vista.
Selali Adobor
2
La tienda de aplicaciones de Windows 8 es un intento de establecer un repositorio de software centralizado al igual que la mayoría de las distribuciones de Linux.
Philipp
10
Si lo hacen automático, ¿cómo pueden agrupar adwares maliciosos sin evitar la corte?
Raestloz
3
Creo que la premisa de esta pregunta es incorrecta: muchas aplicaciones de Windows pueden instalarse a través de una opción optimizada de 'usar configuración estándar' en un instalador. Brindar opciones adicionales, como dónde instalar el programa, es simplemente lo más educado. Realmente no me gustan los programas que no me permiten decidir en qué parte del disco se instalarán.
GrandmasterB

Respuestas:

49

Consentimiento informado

Los usuarios deben poder decidir, en primer lugar, si desean que el programa se instale en su computadora o no. Puede parecerle evidente que las personas obviamente eligen instalar un programa, pero la característica principal de un programa malicioso es que se puede instalar sin que el usuario de la computadora lo sepa.

El consentimiento informado se hace aún más explícito a través de UAC .

Acuerdo de licencia

La mayoría de los softwares modernos siguen un modelo de "clic" para la licencia; es decir, el usuario acepta los términos de la licencia durante el proceso de instalación como condición para instalar el programa. Que los usuarios rara vez lean estos acuerdos no significa que no estén obligados por ellos, especialmente si han hecho clic en la casilla de verificación "Acepto estos términos".

Configurando Opciones

Muchos paquetes de software tienen opciones que le permiten cambiar la forma en que se instala el software de ciertas maneras. El más trivial de estos le permite decidir si desea o no un icono en el escritorio, pero en aplicaciones más grandes puede decidir qué características desea instalar.

Instalación en progreso

Si bien los programas en el ecosistema de Windows están mejorando para ser menos intrusivos durante el proceso de instalación (por ejemplo, instalación sin registro), la instalación sigue siendo a menudo una operación no trivial. Las barras de progreso y otras ayudas visuales dan una indicación de que algo está sucediendo realmente. La página final del asistente le indica si la instalación se realizó correctamente o no.

Empezando

Finalmente, los mejores paquetes de software le dicen qué hacer a continuación. Cuáles son los primeros pasos, cómo comenzar, cómo obtener ayuda. La mayoría del software, cuando está instalado, te deja con un ícono de inicio, y eso es todo. Nunca sobreestime el nivel de experiencia de sus usuarios; Por increíble que parezca, todavía hay personas que no saben cómo encontrar e iniciar los programas de software que acaban de instalar.

Robert Harvey
fuente
55
La ilusión de que el proceso de instalación fue rápido e indoloro.
Rotem
66
A costa de que el software en sí no sea rápido e indoloro. Un instalador molesto es más fácil de perdonar que una aplicación molesta.
nwp
18
Pedirle a alguien que acepte los términos después de la instalación me parece una forma problemática de hacer las cosas.
Eric King
66
Su primera razón "Consentimiento informado" es falsa. La instalación automatizada no significa una instalación silenciosa sin que el usuario sepa que la está instalando. La instalación automatizada significa que inicias el instalador y se encarga del resto desde allí. El mero hecho de iniciar el instalador en sí mismo ya es consentimiento, si el usuario quiere averiguar qué hace un programa antes de la instalación, entonces ya lo han descubierto desde el sitio web desde donde descargaron el instalador o la descripción del paquete en el paquete gerente.
Lie Ryan
8
@LieRyan: muchos programas de Windows Installer incluyen un interruptor "silencioso". Si una persona es lo suficientemente inteligente como para saberlo y usarlo, entonces sí, es un consentimiento informado.
Robert Harvey
21

Por lo que he visto, realmente se reduce a toda la "experiencia de Windows". Es decir, hacer que cualquier acción u opción sea lo más visible posible para el usuario.

La razón por la que digo esto es que una GUI no es necesaria para la instalación. Los instaladores basados ​​en MSI pueden instalarse silenciosamente de manera similar a los paquetes basados ​​en Linux. La GUI es completamente opcional, pero nuevamente está ahí para darle al usuario una representación visual de lo que está sucediendo en segundo plano.

En Linux, esto se logra fácilmente mediante el uso de un administrador de paquetes. Si quiero instalar un paquete, tengo que solicitarlo específicamente. Por lo menos técnicamente incluido, generalmente un administrador de paquetes basado en GUI está disponible para que el usuario instale el software deseado.

En Windows, no existe tal cosa. Si un usuario desea instalar un software basado en Windows, debe buscarlo y descargarlo por separado. No existe una herramienta estandarizada para ayudar al usuario a configurar e instalar el software. Por lo tanto, la GUI de instalación que viene incluida con cada software es muy similar a la GUI del administrador de paquetes en Linux. Simplemente existe para permitir al usuario configurar la instalación y seguir su progreso.

Hay muchos casos en los que no es necesaria una GUI de instalación debido a la presencia de una GUI de administración. Por ejemplo, la popular plataforma Steam instalará automáticamente cualquier juego o software disponible a través de la tienda Steam con la ayuda de guiones de instalación.

Otro gran ejemplo sería SCCM. System Center Configuration Manager (SCCM para abreviar) es un software utilizado para administrar grupos de computadoras en una red. Incluye la capacidad de hacer que el software esté disponible para su instalación a través de una GUI llamada Centro de software. Cualquier instalador basado en MSI puede estar disponible para instalar con solo hacer clic en un botón. En el entorno en el que trabajo, tenemos disponible un software que abarca desde Creative Suite de Adobe hasta cosas como WinZip. Todo lo que un usuario debe hacer es buscar en el catálogo para encontrar lo que está disponible, hacer clic en instalar y esperar la confirmación. Es casi el mismo proceso que si quisiera instalar algo en la computadora de mi casa con Linux Mint.

Thebluefish
fuente
55
"Es decir, hacer que cualquier acción u opción sea lo más visible posible para el usuario". - Definitivamente Al igual que Windows detallará con gusto qué actualizaciones instala en segundo plano; ¿Quién estaría satisfecho con un simple mensaje "Reiniciar para terminar de instalar 67 actualizaciones"?
Raphael
Mucho antes de la App Store de OS X o Homebrew, el proceso de instalación aún era automático. La gestión centralizada de paquetes no es el principal impulsor aquí.
james_womack
6

Window utiliza archivos msi , que funcionan en gran medida de la misma manera que otros paquetes de programas. Se pueden instalar silenciosamente configurando un indicador, pero el comportamiento predeterminado es que Windows presenta una GUI con todas las opciones de configuración definidas en el paquete. Para un usuario normal, los archivos msi se comportan como instaladores exe.

Como usuario que a menudo elige cambiar los valores predeterminados, encuentro que usar la GUI es la forma más fácil de aprender qué opciones tengo al instalar un programa, y ​​es conveniente cambiarlos al mismo tiempo.

En cuanto a la posibilidad de un instalador que por defecto es completamente silencioso. En Windows, es costumbre que el usuario pueda elegir el directorio de instalación, se equivocaría con muchos usuarios si no permitiera esa opción en una GUI. Además, los usuarios están acostumbrados a ver al menos un mínimo de diálogo cuando instalan un programa; si no muestran nada, podrían pensar que la instalación falló.

aaaaaaaaaaaa
fuente
5

Los desarrolladores hacen que la instalación sea automática en Windows, pero no todo el software se ofrece en este formato. Contrariamente a muchas otras respuestas aquí, Windows tiene un "administrador de paquetes" estándar y ampliamente utilizado (tenga paciencia conmigo), pero es relativamente poco conocido incluso entre los desarrolladores porque se dirige a empresas, no a usuarios finales.

Se llama SCCM y es utilizado por todas las grandes empresas para administrar sus instalaciones de Windows. Además de poder administrar paquetes (software de inserción y dependencias para máquinas cliente), también administra actualizaciones para Windows y otro software instalado.

SCCM no es utilizado incluso por usuarios técnicos para administrar sus propias computadoras. Realmente no está destinado a ofrecer un gran beneficio para administrar una sola computadora; de hecho, puede que ni siquiera funcione sin Active Directory / máquinas sin dominio unido. Por lo tanto, realmente no lo llamaría un administrador de paquetes de Windows , incluso si administra el software y la implementación de actualizaciones.

Sin embargo, mi punto aquí es que hay instalaciones automáticas en Windows , y son ampliamente utilizadas por los administradores de sistemas en grandes empresas. Si ve un producto que ofrece una descarga .msi, probablemente sea porque quiere ser implementado automáticamente en miles de máquinas a través de SCCM.

Descargo de responsabilidad: yo mismo no he usado SCCM, y sé poco al respecto, por lo que podría estar equivocado sobre algunas sutilezas anteriores.

Roman Starkov
fuente
0

En el aspecto técnico, Windows tiende a una mayor integración entre los programas (a través del registro) que Linux. Eso requiere un proceso oficial de 'instalación' en lugar de simplemente copiar el programa en su disco duro (por ejemplo, para habilitar los menús contextuales). Algunos sistemas operativos (Mac OS, por ejemplo) harán algo de eso detrás de escena o en la primera ejecución, pero Windows prefiere que sea una parte explícita de la instalación.

En el lado no técnico, Windows prefiere el modelo de configuración y olvídalo. Linux, por ejemplo, tiende a no tener tanta configuración (opciones de instalación), pero a menudo usa banderas cuando ejecuta un programa, porque está acostumbrado a hacerlo; o cambia las opciones una vez que está en un programa. Windows prefiere la experiencia de establecer opciones durante un tiempo designado (instalación), y no espera que un usuario use indicadores de línea de comando o establezca opciones cada vez que se ejecuta un programa. Esto disminuye la flexibilidad (ya que puede usar diferentes indicadores cada vez), aunque a menudo esto está expuesto para usuarios avanzados (opciones en un acceso directo, por ejemplo); pero proporciona una interfaz más simple para la mayoría de los usuarios y permite al desarrollador presentar a los usuarios una interfaz limpia para configurar las opciones y los valores predeterminados necesarios.

Joe
fuente
0

Descargo de responsabilidad: esto es en gran parte una especulación, sin embargo, se basa en mis experiencias al empaquetar aplicaciones de Windows para la instalación y la implementación.

Todo se reduce a lo que es el estándar de facto para la instalación en una plataforma. En Linux, el estándar es utilizar herramientas de administración de paquetes como apt(basado en dpkg / Debian) o yum(basado en rpm / RedHat) para la instalación. Una vez que haya proporcionado un paquete para la implementación, la creación de un asistente es una pérdida de tiempo, ya que la gran mayoría de los usuarios usarán el paquete de todos modos (como es el estándar).

Convenientemente en Windows, el estándar es una instalación basada en GUI. No son alternativas, sin embargo ninguna de estas alternativas son adecuados como 100% reemplazos para un instalador:

  • Existen herramientas de administración de paquetes (como Chocolatey , sin embargo, ninguna de ellas ha alcanzado una masa crítica todavía; si solo proporciona una instalación basada en la administración de paquetes, muchos usuarios se molestarán de que necesiten instalar algún otro software solo para instalar su programa (piense en lo molestos que son los administradores de descargas). La mayoría de las herramientas de administración de paquetes también están dirigidas firmemente a usuarios técnicos, por lo que si su software no está destinado a esa base de usuarios, proporcionar un paquete para Chocolatey será una pérdida de tiempo completa como nadie lo usará
  • Algunos programas son adecuados para la implementación de XCopy, sin embargo, esto solo funciona para productos de software relativamente simples. Es bueno para los usuarios que desean instalar en una unidad flash (por ejemplo), sin embargo, para todos los demás es faff. Como resultado, muchos proyectos que eligen liberar archivos para la instalación de XCopy también proporcionan un instalador.
  • Chocolatey proporciona un fragmento de línea de comando que descarga y ejecuta la instalación. Nuevamente, si bien es rápido y funciona bien para usuarios técnicos, los usuarios no técnicos tendrán dificultades y se desanimarán con este método de instalación.

Si su software es lo suficientemente complejo como para requerir la implementación, es bastante obligatorio proporcionar una instalación de GUI como lo esperan los usuarios. También hay una serie de productos que hacen que la construcción de estos asistentes sea bastante fácil, por lo que proporcionar un instalador basado en GUI es generalmente una de las opciones de menor esfuerzo en términos de tiempo de desarrollo. Una vez que tenga un instalador basado en GUI, debe evaluar la relación costo-beneficio para cada uno de los anteriores (recuerde que las nuevas características comienzan con menos 100 puntos), y para muchos productos simplemente no vale la pena el esfuerzo para construir y mantener estas alternativas.

Tenga en cuenta que los instaladores con algún tipo de modo "silencioso" son bastante comunes en Windows, sin embargo, este no suele ser el modo predeterminado, de nuevo, ya que no es el estándar. La mayoría de los usuarios de Windows encontrarían un instalador que se instala inmediatamente tan pronto como lo ejecute, lo que es bastante desconcertante.

Justin
fuente