El pasado Sábado, 18 de Febrero tenía lugar la tercera edición de la Sevilla Developer Conference. Una iniciativa para fomentar tanto las distintas comunidades tecnológicas de Sevilla como tambien para darnos oportunidad de, durante un día, ver cómo resuelven sus retos en otras plataformas o lenguajes.
Como se puede ver en las fotos del evento, un enorme día de comunidad donde ver grandes sesiones, ver a antiguos amigos pero principalmente, para dar la oportunidad de conocer a muchos otros nuevos.
El material
He tenido la oportunidad de participar este año hablando de desarrollo para HoloLens.
Tras una breve introducción donde repasamos conceptos como realidad virtual, realidad aumentada o que es un holograma, entramos de lleno a conocer las HoloLens. Conbinando presentaciones, el dispositivo físico y el portal del dispositivo conocimos las características, sensores y posibilidades.
A continuación, entramos de lleno a hacer una App. Utilizando Wave Engine realizamos una aplicación sobre el sistema solar (en directo).
Terminamos con algunas aplicaciones desarrolladas ya publicadas en la Store, consejos y preguntas. Durante la sesión fue muy divertido ver las expresiones y el feedback de aquellos que pudieron probarlas!.
El pasado Martes, 07 de Febrero en la E.T.S. Ingeniería Informática tenía lugar un evento de las comunidades, CartujaDotNet, grupo de usuarios .NET de Sevilla y SVQXDG, grupo de desarrolladores Xamarin de Sevilla aprovechando una visita a la Universidad de los chicos de Microsoft DX. El evento que tenía como título «Containers y Xamarin everywhere!» proponía una divertida tarde donde hacer una introducción a Containers y Docker de la mano de Diego Martínez y posteriormente una sesión sobre testing de Apps Xamarin de la mano de un servidor.
El material
He tenido la oportunidad de participar en una de las sesiones tratando la creación y mantenimiento de pruebas automáticas de aplicaciones Xamarin. Concretamente vimos:
Introducción al concepto de pruebas unitarias.
Como crear pruebas unitarias a un proyecto Xamarin.
En cuanto a las demos técnicas realizadas, las tenéis disponible en GitHub:
Quisiera terminar agradeciendo a Diego Martínez por su colaboración y sesión en el evento, a la E.T.S. Ingeniería Informática y al club .NET de la universidad por su ayuda y facilidades a la hora de disponer de sala y por supuesto a todos los asistentes.
El pasado Microsoft Connect 2016, en San Francisco, Samsung en colaboración con Microsoft anunciaba la primera versión en modo Preview de las herramientas Tizen para Visual Studio.
Las herramientas Tizen para Visual Studio facilitan emuladores, extensiones para Visual Studio con la posibilidad de tener IntelliSense y capacidades de depuración, se utiliza Xamarin.Forms para definir la interfaz de usuario, como ya hacíamos con iOS Y Android. De esta forma, Xamarin.Forms añade una nueva plataforma a la que dar soporte ampliando las posibilidades del mercado.
Tizen.NET Preview 2
Recientemente, se ha liberado la Preview 2 de Tizen.NET. Una actualización importante que añade una enorme cantidad de novedades con respecto a la priemera versión lanzado el pasado Noviembre.
Entre el conjunto de novedades más detacadas encontramos:
Soporte a TV: En la primera release se incluía el soporte a .NET Standard, Xamarin.Forms y APIs Tizen de móviles. Ahora se incluyen todo lo necesario para desarrollar aplicaciones para televisores.
Asistente de proyecto: Dado que ahora contamos con diferentes tipos de posibles proyectos (móviles y TV), al crear un nuevo proyecto para Tizen tendremos un sencillo asistente que nos permitirá configurar las opciones básicas.
Nuevas herramientas: Gestión de emuladores, administrador de certificados o editor de manifiesto. Se han añadido varias herramientas nuevas para permitir desarrollar aplicaciones de forma más sencilla.
Nuevas APIs: Incremento alto del conjunto de APIs Tizen soportadas con respecto a la Preview anterior. Entre las novedades encontramos uso de NFC, gestión y administración de multimedia, geofence, etc.
Ante tal conjunto de novedades, ¿algo mejor que verlas todas en video?
Tras dos exitosas ediciones, Sevilla Developer Conference continua como una iniciativa para fomentar tanto las distintas comunidades tecnológicas de Sevilla como tambien para darnos oportunidad de, durante un día, ver cómo resuelven sus retos en otras plataformas o lenguajes.
La agenda
9:30h – 9:55h Apertura de puertas y registro
10:00h – 10:50h El mito del Betatester con Ana Trujillo Ruiz
11:00h – 12:00h Tecnologías para microservicios con Pedro J. Molina
12:00h – 12:50h Abriendo el código con Macarena Madero
13:30h – 14:30h Comida
14:30h – 15:50h Bienvenidos al mundo holográfico con Javier Suárez
15:30h – 16:20h El juego de tronos de los proyectos con Julían Gómez
16:30h – 17:30h Networking y cierre de puertas
Múltiples sesiones técnicas pero un solo track para poder aprovechar al maximo las conversaciones entre desarrolladores y desarrolladoras de distintas áreas.
Hace poco he tenido la oportunidad de asistir al Xamarin Partner Summit de Londres representando a Plain Concepts.
Xamarin Partner Summit
Estamos ante un evento de un día celebrado en múltiples lugares (Londres, Amsterdam y Silicon Valley) donde se reunen y agrupan los partners de Xamarin con el objetivo de facilitar la comunicación y el networking además de tener algunas sesiones técnicas e información relacionada con el programa.
Keynote
La Keynote del evento con Greg Urquhart se enfocó a analizar el mercado móvil actual. Con una previsión de más de 6 billones (OJO con b) de usuarios con teléfonos inteligentes en el mercado para el año 2020, el equivalente al 70% de la población mundial estamos ante un mercado lleno de posibilidades. Apps have won. Tras un repaso a la estrategia «Mobile first, Cloud first» llevada a cabo por Microsoft en los últimos años, se profundizó en el camino llevado a cabo hasta conseguir ser el mayor contribuidor de código Open Source de GitHub, la adquisión de Xamarin y la expansión de Azure.
Las sesiones técnicas avanzadas
Tras la Keynote podíamos elegir entre diferentes Tracks:
Negocio
Nivel medio técnico
Nivel avanzado técnico
A ser desarrollador y contar con experiencia en el desarrollo me aventuré a lanzarme al track de desarrollo técnico avanzado. Divida en dos partes, la primera parte fue un conjunto bastante interesante y diverso de puntos y consejos donde tuvimos a Colby Williams. Se trataron diversos puntos entre los que destacaría:
Ventajas e incoventienes de PCL vs Shared. Independientemente de favoritos, pros y contras, la clave es su uso en conjugación con buenas prácticas para poder compartir la mayor cantidad de código posible.
Reutilización de código. Uno de los puntos claves que se trataron fue la reutilización de código. Pero no reutilizar código entre diferentes plataformas en una misma aplicación. El factor que se trataba era reutilizar código entre diferentes aplicaciones. El beneficio de crear paquetes NuGet, versionar y reutilizar las versiones adecuadas en diferentes aplicaciones.
Olvidad el porcentaje. Suena extraño cuando durante mucho tiempo se ha utilizado el porcentaje de código compartido como signo de salud, buen hacer y ventajas del proyecto Xamarin. Colby indicó que de nada sirve compartir un poco más de código si esto afecta al rendimiento o complica el mantenimiento de la aplicación. Al final, el usuario final utiliza una aplicación este realizada como este realizada, la clave es poner el enfoque en la reutilización, rendimiento y mantenimiento. El porcentaje es una consecuencia, no el factor principal.
No reinventar la rueda. En muchas ocasiones se ven implementaciones similares o dudas sobre aspectos que se encuentran muy bien cubiertos. Conocer los plugins que aporta la propia Xamarin y la comunidad.
Es un pequeño extracto de una sesión donde también tuvimos tiempo para hablar de otros aspectos como la distribución y reutilización de librerías o Visual Studio Mobile Center.
La segunda parte de esta sesión se basó en una mesa redonda. Fue una «lluvia» brutalmente interesante de puntos como, aspectos que necesita integrar Visual Studio Mobile Center para poder cubrir las posibilidades de VSTS Build + Xamarin Test Cloud + HockeyApp, rendimiento en aplicaciones con diferentes consejos y prácticas (Ojo a la suscripción a eventos sin posteriormente eliminar el event handler delegate), patrón MVVM y frameworks en combinación con aspectos relacionados con el rendimiento (bindings principalmente), etc.
En otras sesiones correspondiente a otros Tracks se vieron otros puntos o algunos similares desde otro punto de vista (no pude asistir, lo capté hablando con otros compañeros). Cabe destacar la mención especial a lo que se considera como otra gran oportunidad que llegará proximamente, la realidad aumentada / realidad virtual y realidad mixta.
Cierre y networking
Llegábamos a la parte final del evento con una Keynote de cierre. En este punto vimos los próximos pasos del programa de partners de Xamarin que pasará a ser MPN (Microsoft Partner Network) desde el próximo año fiscal (Julio). Repasamos ideas claves, próximos eventos y fin. Fin de las sesiones y llegada de un momento divertido de networking. Pude conocer a otros compañeros Microsoft y Xamarin MVP de otros países, otros desarrolladores Xamarin y las conversaciones fueron muy variadas y nutritivas. Vi alguna aplicación interesante, igualmente mostré algunas de las desarrolladas, etc.
Las plantillas de proyectos así como de diferentes tipos de archivos son una necesidad básica y muy requeridos a la hora de arrancar un proyecto. En la última actualización de Xamarin, la versión RC del Cycle 9, nos encontramos con novedades en las plantillas de proyectos Xamarin.Forms:
Ahora al seleccionar la plantilla Cross Platform App disponible en la categoría Cross Platform, tenemos disponible un asistente que nos permite configurar el proyecto:
Entre utilizar Xamarin.Forms o Xamarin.Classic.
PCL o Shared.
Plantilla vacía o maestro detalle.
Añadir proyecto Azure Mobile App directamente.
Tras crear un proyecto Xamarin.Forms, podemos añadir nuevas páginas y tenemos novedades:
Ahora contamos con plantillas para crear nuevas páginas utilizando:
Mapas
Pestañas
Listado
Si añadimos una página de tipo listado:
No solo añade la vista, también una ViewModel asociada con datos FAKE.
Un vistazo en video
Suena interesante, ¿cierto?. Si te lo parece, no te pierdas el siguiente recorrido por las novedades en video.
Aprovechando una visita a la Universidad de los chicos de Microsoft DX, ¿algo mejor que montar un evento de comunidad?. De esta forma tan sencilla nace Containers y Xamarin everywhere!.
Tendremos la siguiente agenda:
• 19:00h – 19:45h: Containers Everywhere. La evolución en el mundo de IT es constante, y si hace unos años comenzamos a utilizar las máquinas virtuales, estos ya se estas ya se están comenzando a quedar obsoletas para algunas tareas siendo remplazadas por los contenedores: entornos más ligeros y multiplataforma. En esta sesión veremos una introducción a estos y cómo usarlos en Windows y Microsoft Azure. Por Diego Martinez.
• 19:45h – 19:50h: Descanso.
• 19:50h – 20:35h: Testing de Apps Xamarin. La calidad en el desarrollo de aplicaciones móviles es innegociable. Ante un mercado que se mueve con suma rápidez contando con una enorme diversidad de dispositivos con factores de forma, resolución, tamaño de pantalla y caracterítiscas diferentes debemos de conocer como asegurar un buen comportamiento de la aplicación ante diferentes condiciones. En esta sesión vamos a ver como realizar pruebas unitarias y de UI de nuestras aplicaciones Xamarin. Además, conoceremos Xamarin Test Cloud y sus posibilidades. ¿Te apuntas?. Por Javier Suárez.
El lugar
El evento se celebrará en la ETS de Ingeniería Informática. Dirección detallada:
E.T.S. Ingeniería Informática – Universidad de Sevilla, Aula B1.32 Av. Reina Mercedes s/n Sevilla Se 41012
La fecha
El evento tendrá lugar el próximo Martes, 07 de Febrero de 18:30h a 20:00h. Tendremos dos sesiones técnicas de 45 minutos de duración cada. Además contaremos con algún detalle entre los asistentes.