Quantcast
Channel: Débrief – SFEIR Mag
Viewing all articles
Browse latest Browse all 43

Débrief dotGo 2016

$
0
0

Une fois n’est pas coutume, nous allons vous parler de Go, le langage qui monte, qui monte…  Le 10 octobre dernier se tenait la troisième édition de la Dot Go Europe. SFEIR était présent à cet évènement majeur au théâtre de Paris et voici le récit de cette dense journée.

dsc_0886

Tout commence dans la file d’attente. Gage de qualité, les #DockerCaptain sont dans la place, on ne devrait pas s’ennuyer.

Après la récupération des badges, un petit tour au bar à goodies et un petit déjeuner en bonne et due forme, nous voilà parés pour les premières conférences de la journée.

dsc_0894 dsc_0891dsc_0901

Les sujets de la conférence étaient des plus variés : architecture, trans-compilation, tooling, best practices, retours d’expérience, le langage attire de plus en plus de monde et visiblement les idées ne manquent pas.

dsc_0952 dsc_0928

Hello, I’m “Le Gopher

Focus langage

dsc_0929

Le premier à prendre la parole, n’est autre que le grand évangéliste du Go, j’ai nommé, Dave Cheney. Depuis 2010, Dave entretient une mine d’information très utile pour tous les développeurs avec son blog éponyme. Il ouvre ici le bal pour nous parler des fonctions as first-class citizen. Comprenez, ne vous contentez pas de passer de simples données à vos méthodes, mais allez plus loin en utilisant  des fonctions en tant que paramètres comme vous le permet le langage. Ce sujet n’est pas nouveau, mais pour les développeurs venant de Java par exemple, il est bon de rappeler que cet outil fait partie des features à disposition. L’exemple de la calculatrice reposant directement sur les fonctions de la bibliothèque Math de Go, est un exemple de l’intérêt des patterns construit avec des fonctions. Vous les avez surement déjà rencontrées au détour d’une configuration d’objet dans votre bibliothèque favorite.

dsc_0945

Le second talk orienté langage a été présenté sous forme de retour d’expérience. Le réseau Ethereum a fait l’objet d’une attaque par DDoS au mois de septembre dernier. Ce ne sont pas moins de 70% des noeuds de la crypto-monnaie qui ont été malmenés. Péter Szilágyi nous a présenté le fruit de ses recherches en matière d’immutabilité en Go, principe qu’il a eu l’occasion de creuser pour lever les faiblesses du client Go d’Ethereum.

Focus bibliothèques

dsc_1001

La compilation du Go impose des contraintes fortes sur la disponibilité de l’ensemble des sources de votre application. Cette contrainte est un grand frein au développement de plug-ins pour les applications Go. Brad Rydzewski de chez Drone.io nous a présenté les solutions qu’il est possible de mettre en place pour créer un bon système de plug-in, qui respecte les contraintes suivantes :

  • performance
  • isolation par rapport au coeur de l’application
  • support de l’internationalisation

Les solutions apportées vont de la plus simple à la plus complexe :

  1. Inclure les sources du plug-in dans le code de l’application (isolation faible)
  2. Plug-in via RPC comme l’implémente Hashicorp dans ses produits
  3. Pour aller plus loin, plug-in via stream RPC depuis un container docker comme implémenté dans Drone.io

Les solutions avec un faible couplage au niveau des sources des plug-ins passant toutes par de l’appel RPC avec un serveur de plug-in et un registry dans l’application hôte et des plug-ins qui s’y enregistrent au lancement de l’application.

dsc_1009

Let’s Encrypt fait sa révolution dans le monde des certificats SSL/TLS depuis quelques mois. Avec tous les efforts faits autour des services Web dans son API, il serait dommage que Go  soit en reste concernant le renouvellement de certificat automatique.

C’est le créateur du serveur web static Caddy, Matthew HOLT, qui nous a présenté les bibliothèques disponibles actuellement pour l’automatisation de renouvellement de certificats à la Certbot. En voici la liste avec chacun leurs petites spécificités :

Tools in action

dsc_0979

Nous avons également eu le droit à une démonstration live de la toute-puissance du Cloud Google et de Kubernetes couplé à leurs API pour permettre à des applications de se déployer elles-mêmes. La présentation à débuté avec la citation de Luiz Andre Barroso : “We must treat the datacenter world itself as one massive global-scale computer”, comprenez le Datacenter as a Computer (DaaC). Avec une petite bibliothèque de son cru, Kelsey Hightower, developer advocate pour la Google Cloud Platform, nous a montré comment une application pouvait se construire, s’uploader dans le cloud, se lancer dans un container et se déployer à travers plusieurs régions du Cloud Google. Bienvenue dans le 21e siècle, Skynet n’est plus très loin.

dsc_0993

Je ne sais pas si vous avez déjà eu à faire aux outils de debug de Go, mais ils sont assez redoutables, à l’instar de ce que l’on peut trouver dans un JDK. Mais comme toujours, il faut savoir lire les petites lignes pour tomber sur les pépites et apprendre à les apprivoiser. C’est ce que nous a montré Rhys Hiltner avec le traceur d’exécution de programme Go. Vous conviendrez que la documentation de cet outil est assez succincte, en revanche il permet d’analyser très finement ce qui se passe lors de l’exécution de vos programmes. Rhys vous promet des heures d’amusement à la découverte de cet outil. Son conseil est de vous entraîner et de maîtriser les outils avant la tempête, à l’instar des médecins, qui répètent les mêmes gestes encore et encore afin d’avoir le référentiel d’une application opérationnelle pour mieux identifier les dysfonctionnements le moment venu.

Cross compilation

dsc_0936

Go ne cesse de se populariser, de plus en plus de curieux de tous horizons viennent à Go avec leurs expériences et leurs savoir-faire. Certains, désireux de combiner plusieurs passions, se sont mis en tête de créer des ponts entre JavaScript et Go, ou le développement mobile (iOS ou Android) et Go. Les résultats sont assez surprenants et encourageants. Lors de sa démonstration, Dmitri Shuralyov est allé jusqu’à montrer le résultat d’un petit jeu WebGL cross compilé en Go et disponible dans tout browser WebGL compatible. Une belle performance.

Les formats quicky n’ont pas été en reste, les retours d’expériences non plus. On retiendra la méthode Noop-Noop-Noop-Interface de Katrina Owen pour refactorer (chut on ne l’a pas dit) votre code et l’excellentissime John Cinnamond et son humour universel.

dsc_0961

La journée a été clôturée par un des pères fondateurs, Robert Griesemer, dont le message est qu’à l’heure de l’agilité, il était important de prototyper ses designs et que Go ne fait pas exception à la règle.

En résumé, cette troisième édition de la DotGo était très riche à l’instar de l’écosystème Go. Des talks de qualité qui répondent aux problématiques du quotidien des développeurs ou tout du moins qui leur permettent d’approfondir de nouveaux sujets qui pourraient les concerner dans un avenir très proche.

Vous trouverez l’ensemble des talks filmés sur le site des conférences Dot. N’hésitez pas, les vidéos sont accompagnées des présentations de chaque speaker. Et pour les photos, c’est sur le flickr Dot que ça se passe.

dsc_1032

The post Débrief dotGo 2016 appeared first on SFEIR Mag.


Viewing all articles
Browse latest Browse all 43

Trending Articles


Girasoles para colorear


mayabang Quotes, Torpe Quotes, tanga Quotes


Tagalog Quotes About Crush – Tagalog Love Quotes


OFW quotes : Pinoy Tagalog Quotes


Long Distance Relationship Tagalog Love Quotes


Tagalog Quotes To Move on and More Love Love Love Quotes


5 Tagalog Relationship Rules


Best Crush Tagalog Quotes And Sayings 2017


Re:Mutton Pies (lleechef)


FORECLOSURE OF REAL ESTATE MORTGAGE


Sapos para colorear


tagalog love Quotes – Tiwala Quotes


Break up Quotes Tagalog Love Quote – Broken Hearted Quotes Tagalog


Patama Quotes : Tagalog Inspirational Quotes


Pamatay na Banat and Mga Patama Love Quotes


Tagalog Long Distance Relationship Love Quotes


BARKADA TAGALOG QUOTES


“BAHAY KUBO HUGOT”


Vimeo 10.7.0 by Vimeo.com, Inc.


Vimeo 10.7.1 by Vimeo.com, Inc.