[10/05/2016] Hace unos días se realizó en Lima el DevDays Latam en su tercera edición, un evento en el cual la empresa presentó ante más de 650 asistentes, las innovaciones y herramientas que permiten sacar el mayor provecho de Azure -la nube de Microsoft. Ésta, acompañada de herramientas como el big data, la Internet de las cosas y el aprendizaje de máquina, permite desarrollar software que sea de provecho para las personas, empresas y comunidades.
Durante el primer día del evento, se llevaron a cabo 33 presentaciones, dictadas por más de 20 expositores de talla internacional como Scott Hunter, director principal para programas de desarrollo en Microsoft Corp; Scott Hanselman, principal community architect para Web Platform y Tools; Donovan Brown, senior program manager para DevOps; y Corey Sanders, director de programa en el equipo Azure, entre otros.
Pudimos asistir a algunas de las muchas presentaciones que se realizaron aquel día y lo que vimos nos trajo algunas sorpresas, como lo fue la información que escuchamos de la primera presentación, la correspondiente a Scott Hanselman, programa manager de .Net, quien nos dijo que Microsoft hace mucho tiempo ingresó al código abierto.
Microsoft y el código abierto
Una de las primeras sorpresas de la mañana se dio con la primera conferencia. En ella Scott Hanselman afirmó que Microsoft se encuentra desde hace una buena cantidad de años presente en el código abierto. De hecho, es desde el 2002 que .NET se encuentra como código abierto y Hanselman lo dice con conocimiento, pues no solo es manager de esta línea de negocios, sino que también corre su blog en .NET 2.0, o, mejor dicho, lo hizo hasta el año pasado en el que cambió a la versión 4.5.
Y es que el código abierto está evolucionando en todos lados, no solo en Microsoft. Por ello Hanselman afirma que uno puede ignorar el código abierto, pero eso es peligroso.
Con algunas inquietudes en la cabeza, decidimos reunirnos con Hanselman en un break para hacerle algunas preguntas más con respecto a la visión que tiene la compañía del código abierto.
Scott Hanselman, principal community architect para Web Platform y Tools.
En su presentación dijo que Microsoft se abrió al código abierto, pero no resultaron las cosas como se quería, ¿por qué no fue el momento adecuado?
Primero quiero decir que lo que digo es mi opinión, no soy miembro del área de marketing o de relaciones públicas. Dicho esto, puedo decir que había muchas cosas que se requerían para que Microsoft fuera así de abierta. Necesitábamos los marcos legales en donde los abogados de Microsoft no dijeran "no” por defecto. Hace unos años, si abríamos el código abierto ASP.Net llamábamos a los abogados y les preguntábamos "Podríamos...” "No”, nos dirían, inmediatamente. El "no” era lo primero que salía de sus bocas. Pero con los años hemos aprendido cosas en el licenciamiento y todo lo que Microsoft podría aprender acerca del código abierto. Entonces ahora que llamo a los abogados de la compañía, ya no lo hago con tristeza. Si antes decían "no”, ahora nos dicen "bueno, veamos cómo podemos hacer eso”.
Otra cosa que necesitamos es una Fundación, como la Fundación .Net, de tal forma que un proyecto de código abierto pudiera vivir en la Fundación y no necesariamente en Microsoft. La compañía auspicia el proyecto, pero el proyecto vive en otro lugar.
Hay que educar a las personas en que puede haber una versión de código abierto y al mismo tiempo una versión, un producto, con soporte de lo mismo. Necesitamos de las licencias de código abierto que podamos usar. Y cada una de estas cosas se combinan con Git o GitHub o la codificación social, pero antes de que existiera GitHub ¿Cómo interactuábamos en el código abierto? Había muchas experiencias poco cómodas, necesitábamos la maduración de todos estos pasos para que fuera el momento perfecto para hacer código abierto en Microsoft. Y a pesar de ellos, junto con otras personas, hicimos código abierto, pusimos las primeras piedras.
¿Y cuál es la diferencia entre algo que ha sido código abierto desde el inicio y algo que se ha convertido en código abierto?
Bueno, por ejemplo, acabo de ayudar a poner en código abierto Windows Live Writer, la herramienta para bloguear. Ese era un producto que se entregaba como parte de la suite Windows Live, y soporte nos dijo que ya no se soportaría, es viejo, entonces, hay que dárselo a las personas. El producto no nació como código abierto.
Tuvimos que investigar en profundidad su origen, cómo nació, y resultó que nosotros compramos una compañía que tenía una herramienta de blogueo y vino con esa herramienta. Así que tuvimos que encontrar a todos los desarrolladores que trabajaron en ella, averiguar con ellos de dónde consiguieron el código, revisar el código y asegurarnos que no habían tomado el código de otro lado. Un ejemplo de esto es que la herramienta tenía un corrector ortográfico incorporado, y eso era algo que no podíamos poner como código abierto, porque era el producto de un tercero. Entonces tuvimos que decidir qué hacer, lanzarlo sin corrector, cómo resolver el problema. Entonces nos preguntamos por qué se usó este corrector y vimos que era porque la herramienta tenía más de seis años de antigüedad y en ese entonces Windows no tenía un corrector, pero ahora Windows 10 tiene un corrector.
Así que decidimos remover esa parte de código para asegurarnos de que el código fuera legalmente seguro y le pusimos el corrector de Windows 10.
Ese es un ejemplo.
Si fuera un código que se hizo en forma interna, no tendría que haber hecho tantas averiguaciones. Si uno hace algo de código abierto desde el inicio, piensas en el licenciamiento desde el inicio, piensas en qué software estás usando, no usarías un software que no fuera de código abierto. Entonces, hacerlo abierto desde el inicio es mucho más sencillo.
Las experiencias y la historia
Luego de la presentación de Hanselman fue el turno de Tim Huckaby, vicepresidente mundial de investigación y desarrollo y experiencias emergentes de Microsoft, quien precisamente habló sobre las experiencias emergentes en las que se encuentra trabajando.
Quizás la más llamativa de ellas es un sistema de cámaras 3D que son capaces no solo de determinar si la persona delante de ellas es un hombre o una mujer, sino también su edad aproximada y el grupo étnico al que pertenece. Más aún, gracias a la interpretación que hace de los gestos de las personas puede determinar con cierto grado de exactitud el sentimiento (humor) de la persona.
Huckaby sostuvo que este tipo de cámaras se pueden utilizar en lugares como los retails para mejorar la experiencia de los clientes al momento de la compra, y para que las firmas determinen la mejor forma de llegar hasta él o ella.
Y con las cámaras 3D se vienen también los proyectores holográficos. ¿Recuerdan la escena de La guerra de las galaxias en la que R2D2 reproduce un mensaje de la princesa Leia en forma de pequeño holograma? Bueno, según Huckaby, no estamos muy lejos de llegar a ese punto. Es más, nos encontramos a 10 años o menos de contar con una versión del recordado Holodeck de Viaje a las estrellas.
Otros expositores también fueron parte de esos días para los desarrolladores.
Donovan Brown anunció que Microsoft es el único fabricante que cuenta con el conjunto de facultades necesarias para habilitar DevOps para el desarrollo de aplicaciones móviles para dispositivos Microsoft y no Microsoft. Las herramientas de desarrollo, pruebas, distribución y monitoreo permiten hacer un único desarrollo para cualquier sistema operativo móvil.
Por su lado, Scott Hunter destacó la versatilidad de .Net; actualmente liberado y disponible para crear aplicaciones para cualquier dispositivo o sistema operativo, Android, IOS, Linux, MAC y Windows, todo como código abierto.
Jose Antonio Trujillo, CIO Perú