27 Juin 2016

Journée de transfert d’expertise Microsoft de juin 2016

Jeudi 9 juin dernier, Microsoft organisait une journée humblement appelée “Journée de transfert d’expertise” pour des clients sélectionnés. L’agenda de la journée était :

  • Retour de la build 2016
  • Développement Agile sur mobile
  • Passer vos applications sur le cloud
  • Donner de l’intelligence à vos applications

J’ai pu participer à cette journée et je vous propose ici de vous livrer les éléments qui m’ont marqué.

Le retour de la build 2016

Avant de livrer leur vision des annonces de la build, les speakers (Julien Corioland, Etienne Margraff et Jean-Sébastien Dupuy) démarrent par LA mission de Microsoft annoncée par Satya Nadella en juillet 2014 – je n’avais jamais vu cette citation auparavant – “empower every person and every organization on the planet to achieve more”. Pour y parvenir, il y a une stratégie claire :

Mobile First AND Cloud First.

Le ton de la journée est donné !

La vidéo suivante montre que les salariés de Microsoft sont partie prenante de l’innovation de l’entreprise.

Voici une liste des annonces retenues par nos speakers :

Développement Agile sur mobile

Jean-Sébastien et Julien présentent par l’intermédiaire d’une application d’exemple la boucle de développement/livraison/feedback. Cette application est développée à l’aide de VisualStudio 2015 et Xamarin. Les sources sont hébergées sur GitHub, les activités de build sont portées par VSTS. Un WebHook notifie VSTS de chaque archivage et déclenche les activités/tâches de build : compilation, tests unitaires, tests UI et mise à disposition sur un store.

Les points importants sont :

  • génération des binaires depuis VSTS/Xamarin pour Android et Windows Phone
  • les tests UI exécutés par Xamarin Test Cloud (les tarifs ont été revus à la baisse). Ces tests sont automatisables par du code C#, VS Test Recorder ou Calabash/Ruby
  • le déploiement et la collecte de feeedback (crash report et commentaires utilisateurs) depuis HockeyApp

Pas de magie pour iOS, il faut un Mac et une licence développeur pour générer une application…

Dans l’écosystème des produits Microsoft, nos speakers sont clairs, pour surveiller des applications il faut utiliser :

  • sur Azure : AppInsight
  • sur mobile : HockeyApp

Passer vos applications sur le cloud

Nous débutons par une présentation autour de ASP.NET Core (RC2) avec quelques key features. La version finale est prévue pour “Later in 2016”. Je suis super avancé là…

Avec le changement de nom, on s’en doute, pas de support des applications ASP.NET 4 dans cette nouvelle version.

Le serveur web utilisé en “self hosting” est Kestrel. Ce serveur utilise en interne libuv qui est également utilisé par NodeJS. Et comme la performance sur fichier statique est, a priori, importante pour les clients, toute la chaîne .NEt Core/ASP.NET Core a été optimisée. Les benchmarks, protocoles de tests et résultats, sont disponibles ici. La progression par rapport à ASP.NET 4.6 est très importante. Par rapport aux autres solutions techniques proposées dans le benchmark (entre autre Node ou Netty) : Netty premier, ASP.NET Core second et Node troisième. Ironie du benchmark, on peut voir les performances d’ASP.NET Core sur un serveur Linux.

L’utilisation de .NET Cli et de .NET Core permet la compilation et donc l’exécution d’une application serveur sur iOS, Windows ou Linux.

On comprend bien qu’il sera très facile de réaliser des applications ASP.NET Core pour Azure mais aussi pour d’autres fournisseurs ne proposant pas forcement de machines Windows. On aborde donc les différents scenarii de migration vers le cloud. Je crois voir un remake d’une présentation AWS :

  1. Bascule des machines physiques vers le cloud
  2. Utilisation des “conteneurs” Web et des services cloud (stockage principalement)
  3. Enrichissement des applications avec d’autres services cloud (cache, monitoring, file de message, sécurité, etc…)
  4. Exploitation des containers Docker avec docker toolbox et docker tools for VS

En démo, le niveau d’intégration est assez bluffant : un serveur Linux  fournit des pages ASP.NET Core par un “simple F5” depuis Visual Studio 2015.

Si le sujet vous intéresse, vous pourrez trouver sans effort pas mal d’info sur Docker et Hyper-V.

Donner de l’intelligence à vos applications

Nous revenons sur Cortana Intelligence Suite. Les services sont organisés en 5 familles :

  • Vision
  • Speech
  • Language
  • Knowledge
  • Search

Chaque service est démontré dans l’espace réservé. Faites un tour pour essayer, j’ai été très étonné de la précision des réponses données et j’ai bien rigolé 1 fois ou 2.

Nous avons droit à trois démos :

  • la première dans un use case automobiliste : reconnaissance vocale, identification d’intention et synthèse vocale,
  • la seconde dans un use case “au bureau” : reconnaissance vocale, bot, identification d’intention et interaction avec l’agenda,
  • la dernière dans un use case prévision pour cycliste citadin : collecte de données, traitement à chaud, traitement à froid et restitution Power BI.

L’intelligence artificielle est au cœur de ces services, LUIS est, pour moi, l’un des services les plus aboutis. Connecté avec un bot, on pourrait presque rêver de disposer prochainement d’un serveur vocal qui comprend vraiment ce que l’on veut et nous répond correctement ou pourquoi pas de donner sa liste de course et choisir l’heure de livraison par rapport à son agenda et au prévision de trafic.

Synthèse

Cette journée m’a principalement permis de découvrir de manière plus détaillée les cognitives services et des usages possibles avec les bots. L’intégration de chacune des briques est possible dans les univers Web ou Mobile avec au coeur des préoccupations : la valeur apportée à l’utilisateur.

Share