Las 50,000 vidas de Silverlight

Posted by & filed under , , , , .

Tras culminar uno de los mayores eventos en la historia de Microsoft, BUILD, regresó la controversia que ya se volvió un cliché en el mundo tecnológico: “Silverlight está muerto”. Siguiendo esta personificación propongo que se le diga a Silverlight gato porque lo han matado tantas veces y sigue vivo, aún más, evolucionando como plataforma.

Debido a que no participé presencialmente en BUILD, no puedo exponer mi punto de vista con total seguridad pero puedo usar argumentos de EXPERTOS que si asistieron al evento y demuestran con SOLIDEZ porque Silverlight seguirá existiendo durante un largo tiempo (ojo, largo != eternidad).

En primer lugar, la publicación de mi mayor gusto se titula:

“I know what you’re thinking, and you’re wrong” / “Se lo que estás pensando, y estás equivocado”

Escrita por Doug Seven, Vice – Presidente ejecutivo en Telerik, Microsoft Developer Community Partner, Developer Tools Marketing Team Member, Microsoft Regional Director, Most Valuable Professional, Program Manager in Microsoft.com, Senior Product Manager for Visual Studio Team System.

Se habrán aburrido con tantos títulos de este señor, pero creí necesario enlistar su experiencia para demostrar que sabe de lo que habla / escribe.

A continuación les comparto una traducción aproximada  de este artículo, como siempre que realizo una traducción, los invito a proporcionarme su retroalimentación por si hay palabras ambiguas o malas interpretaciones.

Se lo que estás pensando, y estás equivocado

(14 / 09 / 2011)

Es el día 2 de las conferencias de Microsoft Build, y si has estado al tanto de la publicidad probablemente estés pensando que tenés que deshacerte de las aplicaciones que has desarrollado en WPF o Silverlight y empezar de nuevo con HTML5 o este nuevo XAML que se proyecta como el futuro. Si eso es lo que estás pensando, estás equivocado. Todo lo que estás haciendo hoy deberías de seguir haciéndolo. El mundo no se acabó para vos, y tu trabajo no está en riesgo ( ¡al menos por esto no!) Como un .NET adicto que se remonta al primer Release pre-beta del .NET Framework en el PDC 2000 (llamado NGWS en ese entonces) y ex – director de Gestión de Producto para Visual Studio, puedo decirte que me siento satisfecho con la utilidad de mis habilidades y mi código existente para el futuro. También confío en el valor de los controles y herramientas Telerik en el futuro. Ciertamente yo sabía suficiente sobre lo que estaba sucediendo con Windows 8 y Visual Studio antes de aceptar el cargo de Vice-Presidente ejecutivo en Telerik. Si confío lo suficiente como para apostar el sustento de mi familia en eso, deberías de confiar también en tus habilidades, tu código existente y proyectos.

También he estado hablando con muchos asistentes de Build, y he escuchado a muchos clientes de Telerik vía Twitter y Correo Electrónico. Hay mucho desconcierto acerca del futuro de las tecnologías que usamos hoy en día – específicamente WPF y Silverlight. Como estas tecnologías trabajan en el mundo de Windows 8, y que tan diferente es XAML en Windows 8.

Lo primero es lo primero, permíteme ayudarte a aclarar un poco de lo que Windows 8 se trata. La manera de pensar acerca de esto es que hay dos entornos de ejecución totalmente distintos. Por un lado se encuentra el nuevo modelo de aplicación estilo Metro que corre en el nuevo entorno de Windows (WinRT) y por otro lado se conoce como el Modo Escritorio que corre sobre el CLR, Win32 y/o Internet Explorer. A continuación el diagrama presentado por Microsoft.

clip_image002

En este diagrama se encuentra un lado verde (Estilo Metro) y un lado azul (Modo Escritorio) Aunque no se muestra allí, hay una gran pared que divide ambos lados. Lo que se ejecuta en el lado verde, no puede ejecutarse, ni acceder a nada en el lado azul y viceversa. Las aplicaciones que construyes para Windows 8 son ya sea aplicaciones estilo Metro o aplicaciones Modo Escritorio. No habrá mezcla. Esto es un gran diseño. Algunas aplicaciones nunca deberían ser aplicaciones basadas en Metro, y algunas apps SOLO deberían de ser aplicaciones estilo Metro.

win8-new-platform

Tomado de dougseven.com

Las aplicaciones estilo Metro se ejecutan en el Contenedor de Aplicación que impone algunas restricciones de seguridad y limita el acceso a algunos recursos del sistema. Esto les permite volverse aplicaciones interesantes y atractivas, con acceso a algunos servicios de identidad y otros recursos apropiados, pero aún hay limitaciones que protegen a los usuarios finales. Las apps en Modo Escritorio no corren en el Contenedor de Aplicación, y tienen todo el acceso a nivel de sistema que tengas disponible hoy dependiendo de cómo construyas tus aplicaciones (Ejemplo, .NET y niveles de confianza, o Win32 y API´s de nivel de sistema)

El más grande ejemplo del correcto uso del Modo Escritorio no dicho esta semana fue Visual Studio 2011 (si, VS2011 fue expuesto pero nadie ha señalado porque no es una aplicación estilo Metro) Tu entorno de desarrollo no es una aplicación compatible con sensores táctiles que ejecutarás sobre un pequeño espacio. Éste (el entorno) es una poderosa aplicación que necesita acceso a muchos recursos del sistema y obtendrás la mejor experiencia con un ratón y teclado (y preferiblemente más de un monitor de alta resolución). Las apps estilo Metro están destinadas a enfocarse en el tacto, basadas en sensores, de una sola pantalla que es probable corran en espacios pequeños con más frecuencia que en una PC de Escritorio o portátil (de hecho estábamos pensando sobre llamar a estas apps “Apps NISA” – Interfaces Naturales, Aplicaciones enfocadas en sensores… entendimos la idea)

Al igual que Visual Studio es una app Modo Escritorio, así son muchas de las apps que vos desarrollas. Esto no quiere decir que no es una oportunidad para desarrollar apps “Matadoras” Estilo Metro, simplemente significa que necesitas pensar sobre la experiencia de usuario que querés ofrecer y elegir el mejor modelo de app para tus objetivos.

Mientras construís aplicaciones entre ahora y cuando sea que salga windows 8 y mas allá, lo más probable es que a menos que estés construyendo una aplicación enfocada en sensor (como aplicaciones centradas en dispositivos o un juego) o una experiencia rica en contenido (como una revista) aún deberías de elegir modo Escritorio. Todas esas aplicaciones de negocio seguirán siendo apps de modo Escritorio, y si ese es el caso, el uso de WPF o Silverlight (incluyendo controles Telerik) es seguro. Todo ese código que tenés hoy corre en modo Escritorio en Windows 8.

Para estar seguro, hoy pasé un tiempo con algunas personas que desarrollaron el .NET CLR. Ellos confirmaron que esto es cierto, y nos pasamos un rato hablando sobre su prioridad/compromiso de no afectar las aplicaciones .NET Framework que se ejecutan en Modo Escritorio.

Las aplicaciones estilo Metro son diferentes. Allí no hay soporte para Silverlight ni WPF. Y francamente no lo necesita. Lo que necesitas son controles y componentes compatibles con el nuevo modelo de XAML para apps estilo Metro…y telerik los ofrecerá. Vamos a empezar a trabajar inmediatamente en crear controles que funcionen en el nuevo modelo de apps estilo Metro (de hecho hoy @worksonmypc mostró una de las demos de Telerik corriendo sobre dispositivos de Windows 8 entregados en Build). En el futuro tendrás un conjunto de herramientas que incluirán controles Telerik Modo Escritorio y controles Telerik estilo Metro. En algunos casos estos podrían brindar experiencias iguales o similares, pero también vamos a entregarte controles estilo Metro que tomen ventaja de todo lo que el nuevo modelo de aplicación ofrece, como pequeñas resoluciones de pantalla, táctil, acelerómetro y otras entradas de sensores.

La única cosa que no he abordado es el roadmap de Silverlight, y es porque Microsoft no tiene nada para compartir más allá de Silverlight 5 que se encuentra actualmente en Release to Candidate. No está claro si habrá o no Silverlight 6, pero si sé que habrá SL5, y que tendrá un soporte para ciclo de vida de 10 años. De forma segura podés invertir en Silverlight ahora, sabiendo que esa inversión estará apoyada aún por más tiempo que la aplicación sea útil, y Telerik continuará creando controles de interfaz de usuario para Silverlight, siempre y cuando suficientes personas usen la plataforma.

Cambios en la tecnología como los que estamos enfrentando ahora tardan mucho tiempo para alcanzar la ubicuidad. La gente sigue usando Windows XP (alrededor del 40 % de todos los Windows aún son XP) y la gente utilizará Windows 7 durante un largo tiempo. Aunque la gente se vaya a Windows 8 todavía existirá el modo Escritorio la mayor parte del tiempo, excepto cuando usen una Tablet. Mi consejo…seguir haciendo lo que está haciendo, e invertir un 20 % de su tiempo aprendiendo sobre Windows 8 y los modelos de aplicaciones de estilo Metro. Tenemos tiempo antes que Windows 8 salga, y un buen rato antes de que se convierta en la versión de Windows más utilizada.

Fuente original

Si Silverlight está muerto…

El siguiente artículo fue escrito por Jeremy Likness, Microsoft MVP en Silverlight, Developer, Software Architect y Project manager, con especialidad en RIA. El título del escrito es:

If Silverlight is Dead… / Si Silverlight está muerto…

Lastimosamente por falta de tiempo no he traducido este post pero espero realizarlo en posteriores fechas, aunque está en inglés espero que se animen a leerlo. A modo de extracto, Likness destaca las razones de la viabilidad de Silverlight:

  • Multi – Plataforma / Soporte para OSX
  • Despliegue y distribución de XAML basado en Web
  • Comunidad
  • Ingresos
  • P / Invoke (Platform Invoke)
  • Aplicaciones de Línea de Negocio

Enlace

¿Cómo elegir tu plataforma? Silverlight, Metro o HTML5

Les comparto un diagrama de flujo realizado por Todd Anglin (gracias a Rodrigo Díaz por la observación), un trabajador de Telerik donde nos recomiendan como elegir entre Silverlight, Metro o HTML5.

PickingPlatformsDiagram-1

Enlace

Por último, he escuchado y visto a muchos desarrolladores (incluso diseñadores) que aseveran haber perdido su tiempo con Silverlight porque ni su mismo creador (Microsoft) lo promociona / apoya. Con todo el respeto, creo que alguien que dice eso no comprendió completamente, o los keynotes de BUILD o el paradigma de desarrollo que presenta Silverlight.

Suponiendo en un mundo paralelo donde Microsoft anuncia mañana mismo que Silverlight está muerto,  Silverlight / WPF básicamente es XAML + Código Administrado (C#, Visual Basic .NET, Iron Python / Ruby, etc..) Sé que hay diferencias en que no ahondaré pero la base es exactamente la misma. Ofreciendo un ejemplo, cuando aprendiste Java por tu Universidad (en la mayoría de los casos sucede) y conociste C#, pensaste que habías desperdiciado TODO tu tiempo? Obviamente tu respuesta será no.

Para fundamentar lo anteriormente dicho, te invito a que leas esta otra publicación, donde el autor explica lo sencillo que es migrar una Silverlight app a Metro app gracias a buenas prácticas y otros conceptos como el patrón de diseño MVVM.

Enlace

MetroTwitter

Conclusiones

  • Silverlight está vivo.
  • NO desperdiciaste tu tiempo aprendiendo Silverlight / WPF
  • No informarse de una sola fuente.
  • Averiguar sobre el grado de conocimiento y prestigio de los generadores de esas fuentes.
  • Leer, Analizar y Discernir como desarrolladores que es veraz y que no.

Espero que esta publicación haya sido de su agrado y les sea de utilidad. Está demás decir que pueden compartir su opinión en la sección de comentarios.

Agradecimientos a Josué Panameño, Jimmy Campos, Alejandro de Arriba Gabriel Pérez, Ana Rocha y Rodrigo Díaz por la retroalimentación

Compilación Completa…