27
mars
2019
DotGo Europe 2019

DotGo Europe 2019

J'ai eu la chance d'aller à l'édition 2019 de la conférence Dot Go. Bien que je n'ai pas l'occasion de pratiquer le Go quotidiennement (breaking news, les journées ne font toujours que 24h), ce 25 mars 2019 était pour moi l'occasion de rentrer un peu plus dans le monde du Go.

Premier contact, nouveau lieu pour moi : le ThĂ©atre de Paris. Autant ĂȘtre franc, assister Ă  une confĂ©rence tech dans un lieu aussi prestigieux, ça en jette ! Bon, par contre, si vous mesurez plus d'1m70, les places Ă  l'Ă©tage ne sont pas du tout confortables :)

Constat suivant : j'étais habitué à des conférences JS (ReactEurope pour ne citer que celle là). Ici, on est sur une volumétrie plus réduite, mais pas forcément moins intéressante. C'est moins l'usine.

Venons-en Ă  prĂ©sent aux talks, l'essence mĂȘme de la confĂ©rence. Pour faire le parallĂšle avec les confs JS oĂč chaque talk est lĂ  pour vous prĂ©senter une nouvelle lib^H^H^HbibliothĂšque, ici les sujets sont plus gĂ©nĂ©ralistes, et mĂȘme pas forcĂ©ment rattachĂ©s au Go en lui-mĂȘme. Assez dĂ©stabilisant (surtout le talk d'Ellen Körbes, j'y reviendrais), pas forcĂ©ment dĂ©sagrĂ©able. On est moins dans le "matuvu", mais en contrepartie, peut-ĂȘtre moins d'effet wahou Ă  la clĂ©.

Voici le détail des talks auxquels j'ai pu assister :

Matin :

  • Daniel MartĂ­ - Optimizing Go code without a blindfold

    Ici, on parle de benchmarks. Mais pas nĂ©cessairement uniquement sur le Go. Pour faire de l'optimisation, il faut avoir des metrics. Et les metrics doivent ĂȘtre stables et fiables. Or, lorsque vous faites des benchmarks en local, tout ce qui tourne en mĂȘme temps sur votre machine influe sur le rĂ©sultats (Slack, Chrome, et je passe les autres CPU hogger.) Approche intĂ©ressante sur le throttling du CPU pour Ă©liminer la variance sur les benchmarks. https://docs.google.com/presentation/d/1cUVp8OuzOW4lzClsiptgacW7nSFkcgvhLRVAOgVPpYg/edit#slide=id.g550f852d27_228_0

  • Kat ZieƄ - How do you structure your Go apps

    Ce talk me semblait prometteur, au niveau de son intitulé, moi qui me demande à chaque fois comment structurer un projet quand je joue avec un nouveau langege / framework. Au final, ce talk s'est plus axé sur le Domain Driven Development. TrÚs intéressant sur le fond, mais je ne peux m'empecher d'avoir un peu de déception par rapport à mes attentes initiales. https://github.com/katzien/talks/blob/master/how-do-you-structure-your-apps/dotgo-2019-03-25/slides.pdf

  • Ignat Korchagin - Go as a scripting language in Linux

    Comment utiliser du Go comme un simple langage de scripting (donc sans compilation). TrÚs bonne approche et découverte du special mount linux /proc/sys/fs/binfmt_misc.

    https://blog.cloudflare.com/using-go-as-a-scripting-language-in-linux/

  • Michael McLoughlin - Better x86 Assembly Generation with Go

    Il est parfois nĂ©cessaire de recourir Ă  l'assembleur : performance, Ă©limination des effets de bords, ĂȘtre plus prĂšs de la machine. C'est notamment le cas dans l'implĂ©mentation de la crypto. Ecrire de l'assembleur est fastidieux. Et actuellement, c'est en python que la gĂ©nĂ©ration d'assembleur se fait. Pourquoi ne pas utiliser le Go ? https://speakerdeck.com/mmcloughlin/better-x86-assembly-generation-with-go https://github.com/mmcloughlin/avo

  • LT1: Joan LĂłpez de la Franca Beltran
  • LT2: Olivier Wulveryck - ONNX-Go, neural networks made easy
  • LT3: Natalie Pistunovich - TensorFlow and Go

    Aborder l'aspect machine learning en Go au lieu du Python.

  • LT4: Roberto Clapis - Channels

    La gestion de la concurrence et des mutex en Go : https://docs.google.com/presentation/d/1tyLYa5ucxVx-_h-GRaHYKzhQBaCTBP4B-Lai3wkmj6A/edit#slide=id.p

    Talk avancé, mais abordé de maniÚre efficace en 5 minutes.

  • LT5: Valentin Deleplace - Semaphores

    Comment expliquer les sémaphores en Go ? Simple : des gophers, une piscine et comment optimiser/maßtriser l'occupation de la piscine. Simple, efficace et trÚs abordable.

AprĂšs-midi :

  • Dave Cheney - Constants

    Monsieur Dave Cheney, MC de ce DotGoEu a fait un talk intéressant (mais avancé) sur les erreurs sentinelles,en Go et l'utilisation de vraies constantes : https://dave.cheney.net/2016/04/07/constant-errors

  • Jean de Klerk - Multi-Module Repositories

    Comment gérer les sous modules au sein d'un projet Go. Ici, on parle de dépendences, de versionning et de problématique de package manager. Intéressant, bien que le scénario exposé ne soit pas à la portée du premier venu. Il le dit d'ailleurs dans ce talk : à n'utiliser que si vous ne pouvez pas faire autrement, sinon préférez deux repositories, deux projets.

  • Johan Brandhorst - Get going with WebAssembly

    Ahhhh, là, je retrouve un marronnier des confs JS : WebAssembly. Pourquoi ne pas utiliser du Go dans votre navigateur. Alors, oui, pourquoi pas. Mais les perfs (notamment la taille des bundles générés) ne sont pas là. https://www.youtube.com/watch?v=jKKFf77Qwno https://talks.godoc.org/github.com/johanbrandhorst/presentations/wasm/wasm.slide#1

  • Bryan Boreham - Tune Your Garbage-Collector!

    Ce talk a abordé la notion de Garbage Collector (et de son tuning) en Go. Si vous avez déjà eu à faire à un GC, le talk est une autoroute. Intéressant, mais pas forcément novateur. https://www.youtube.com/watch?v=r_hT7Z2YE-8

  • Ellen Körbes - 3D modeling with Go

    Un talk qui parle d'impression 3D, de génération programmative. Bon, la techno est super intéressante mais l'application faite ici est pour le moins surprenante : la modélisation et génération de dildos/"dilator". La présentation la plus surprenante de cette journée (dans le bon sens !)

  • James Bowes - An introduction to reflect and unsafe

    DĂ©monstration de reflect et unsafe en Go. J'avoue ne pas avoir tout compris :)

  • Jessica Frazelle - Introduction to RISC-V

    Ici, ça parle architecture CPU, instructions, registres, etc. Moi qui pensais que le RISC était mort et enterré, j'ai été surpris d'apprendre qu'un portage Go pour tourner sur RISC-V avait déjà été entrepris. Par contre, bien qu'intéressant (car pas forcément lié au Go), ce talk était particuliÚrement difficile à suivre, la speaker ayant un débit de parole ahurissant :) https://blog.jessfraz.com/post/digging-into-risc-v-and-how-i-learn-new-things/

  • Marcel van Lohuizen - Go 2 Error Values Today

    La gestion d'erreur en Go, et les propositions pour les prochaines versions de Go. Je n'ai pas eu assez à faire avec les erreurs en Go pour apprécier la teneur du Talk

Quelques photos en vrac : dotGo EU 2019 dotGo EU 2019 dotGo EU 2019 dotGo EU 2019

Et parce que je suis une "victime", j'ai ramené un nouveau compagnon à la maison ;)

dotGo EU 2019

PostĂ© par Ă  22:24 dans la catĂ©gorie Développement
Tag(s) associé(s) :
Partager cet article :
Arnaud ASSAD
Arnaud ASSAD
03/04/2019 20:25:11
Merci pour cet excellent retour sur la conf.

J'aurais juste une question : Comment avez vous trouver la communauté ?
(c'était bien votre première conf Go ?)
Mathieu Lesniak
Mathieu Lesniak
07/04/2019 13:31:46
Rien à redire sur la communauté, j'ai pu échanger un tout petit peu au début, bon feeling.
Et oui, c'était ma première conf Go

Ajouter un commentaire




Les champs obligatoires sont marqués d'une *

A table !



Derniers commentaires