jueves, 11 de septiembre de 2008

Thinapp o como virtualizar aplicaciones


Pensamos que la mayoría de las cosas que solemos hacer, se hacen así, por que es la manera de hacerlo. Y para muestra un botón...

Es verano, hace un calor de 40 grados delante de la nevera con la puerta abierta. Y a alguien se le ocurre una buena idea:
"¡Vamos a la playa!"

Vas preparando las cosas, pues un poco lo típico. La sombrilla, la cometa, la balsa hinchable, las toallas... Eso que solo tu eres capaz de cargar y llevar con una sonrisa sin que se note que te están sangrando hasta los pelos del sobaco.

Llegas a la parada del autobús. Son las 12, y ya te has peleado con 2 señoras mayores, 4 niños que no dejan de vacilarte y con tu propia familia.
Te subes al autobús, y por fin sientes lo que se les pasa por la cabeza a los chones antes de morir.
Después de un trayecto sinuoso, con mucho calor, empujones y algún que otro desmayo, se acerca tu parada.

Y aquí, y solo aquí es cuando se demuestra quienes son los débiles y quienes son los fuertes. Hay que llegar al botón de parada. No te preguntes el por qué, pero si tu no das a ese botón te aseguro que nadie lo va a dar por ti.

Esta es la cuestión del asunto. ¿Por que ese botón esta tan lejos?, ¿No podrían poner mas botones distribuidos por el autobús? No sé, aunque solo sea uno en la silla, que tampoco será tan difícil.

La cosa es que nos hemos acostumbrado y damos por hecho que el botón de solicitar parada en el autobús tiene que estar inaccesible. Algo que se parece mucho en la informática podría ser este suceso:

Escenario
Sistema operativo dañado, el cual necesita pasar por un formateo y con su consiguiente planchada de sistema.

Problema
El usuario hace la reflexión mágica...
"Vale, lo he entendido, me vas a pasar los datos pero.... No me puedes pasar los programas es que es un rollo tenerlos que instalar de nuevo" (Si para mi también es un rollo hacer todo esto no te digo!)

Solución
Esto que se va a plantear no es que sea una solución, ya que se trata de un software de pago, pero aun así, la idea funciona, y podemos sacar la conclusión del tipo "No tiene por que ser así"
Es decir podremos pasar los programas también, y poder funcionar correctamente.

Empezando
El software que vamos a usar es de la familia de vmware, y se llama Thinapp.

Desde este enlace vamos a poder descargar una versión de prueba para ver como funciona este tipo de software, lo cual creo que es bastante interesante.

En que consiste
Apoyándose en las ventajas que tiene un sistema virtualizado, lo que intentamos hacer, es desvincular la aplicación del sistema operativo, y así poder moverla de un sistema a otro sin que tengamos que instalarla.

¿Que hace la aplicación?
Básicamente thinapp, funciona en dos fases. Una primera en la que hace una "foto" de como esta el sistema. Y una segunda que es nada mas hemos instalado la aplicación mira que ha cambiado en el sistema y lo "virtualiza" para que podamos funcionarlo con independencia del propio sistema.

Ejemplo
Utilizando este tecnologia vamos a preparar el outlook para poder usarlo en cualquier sistema.

-Primero de todo necesitamos tener un sistema limpio y recién instalado.
-Después de esto instalamos la aplicación thinapp y la arrancamos. Nos encontramos con el siguiente menú.



- Daremos al botón "Next" y la aplicación tomara una "foto" de como esta nuestro sistema.


- Una vez acabe de realizar el proceso, minimizamos esta ventana e instalamos el outlook. (o la aplicación que deseamos virtualizar).


- Realizamos la instalación del otulook, como siempre lo solemos hacer.


- Una vez termine la instalación, volvemos a dar al botón "Next" y volverá a tomar una foto de como esta ahora nuestro sistema.




- Detectara que ha habido una serie de cambios. Esta claro que el outlook es lo que ha cambiado en el sistema, así que lo seleccionamos.



-Elegimos la primera opción "Merged isolation mode" y pulsamos "Next".


- Le tendremos que indicar donde queremos que nos guarde nuestro proyecto virtualizado. Esto va a gusto de cada uno.


- Dando a "Next" iniciara el proceso de creación de proyecto.




- Damos al botón "Build Now" para compilar nuestro proyecto y que así genere la aplicación.
Es posible compilar de otra forma la aplicacion, pero eso ya es otro tema.



- Realizara un pequeño proceso de compilación.



- Si abrimos el explorador de windows, y nos vamos a la ruta donde dijimos que creara nuestro
proyecto, nos encontraremos con algo parecido a esto.
En la carpeta BIN, es donde ha creado el fichero compilado de nuestra aplicación



-Dentro nos encontraremos un fichero que corresponde al microsoft outlook.



Este fichero es la propia aplicación en si. Esto significa que si lo copiamos y lo llevamos a cualquier otro sistema operativo, funcionara perfectamente.

Conclusiones

La idea me ha gustado mucho, y realmente funciona, a no ser que el propio fichero ejecutable detecte el sistema operativo y te diga que no funciona (partition magic 8) o cosas parecidas.

Es una manera muy cómoda de poder desplegar aplicaciones, aunque creo que tendrá que evolucionar mas, para que sea realmente una solución en producción.

De todas formas recomiendo probarlo, para así que cada uno saquemos nuestras propias conclusiones, y nos de una idea de hacia donde va evolucionando la virtualizacion y ver las distintas soluciones que nos ofrece.

Saludos

2 comentarios:

Oky dijo...

Hola. muy buena la intro. es cierto, con tan poco como un pulsador mas para el timbre machisima gente tendria un dia mejor. jeje
en cuanto la aplicacion que presentaste, hay algo que no entendí. con el ejemplo del Outlook. ¿hay que instalar el outlook en el sistema nuevo??!! si tenemos el disco porque no lo instalamos y listo? me parece interesante un programa como ese para los casos que hay que reistalar sistema y no tenes el ejecutable de algun programa y no lo podes volver a conseguir. saludos

David dijo...

La idea de esto por ejemplo, es crearte un sistema virtual, en el cual instalas las aplicaciones que vas a tener que necesitar desplegar en tu escenario.

Una vez las pasas por el thiapp, ya tienes la aplicación virtualizada, por lo que simplemente con copiar y pegar ese fichero, vas a tener la aplicación funcionando en los demás sistemas.

El resto, es pura imaginación personal.
Saludos