Que s’est-il passé au meetup Elm de rentrée à Paris ?

Image for post
Image for post

Jeudi 26 septembre 2019 a eu lieu le premier meetup Elm parisien de la saison après la trêve estivale. Mais que s’est-il passé durant cette soirée ? Venez, je vous explique !

Théophile nous a déjà donné sa vision de la conférence Elm Europe s’étant déroulée les 27 et 28 juin 2019. Un des points marquants est l’utilisation abondante des “Custom Types” (appelés aussi “Algebraic Data Types”) afin de représenter les problématiques métier.

Il nous a aussi rappelé les talks de Romans Potasovs expliquant comment créer des jeux vidéos en Elm atteignant 60 fps, et celui de Andrey Kuzmin introduisant un moteur physique entièrement écrit en Elm.

Au vu de ses deux dernières présentations, Théophile conclut : « On peut utiliser Elm pour n’importe quelle application, il n’y a vraiment pas de limite ». Retrouvez ses slides !

Jeroen nous a ensuite présenté elm-review, son nouvel outil permettant d’imposer des règles dans le code Elm.

Il a illustré son utilité grâce à l’exemple suivant : mettons que nous décidons d’utiliser un module Color pour être sûr d’utiliser la même palette de couleurs dans une application. Seulement, un programmeur nouvellement arrivé sur le projet ne sera pas forcément au fait de ce module et pourrait créer ses propres couleurs arbitraires.

L’idée est donc d’écrire une règle empêchant la construction arbitraire de couleurs. Et c’est exactement ce que elm-review propose. En effet, par défaut ne sont livrées aucunes règles : chaque projet ayant ses propres besoins, cela n’a pas de sens de tenter de d’imposer des règles communes à tous les projets.

Image for post
Image for post
Exemple de message d’erreur affiché pour notre règle “NoDefiningColorsOutsideOfUiColor”

Il fournit néanmoins dans des paquets séparés quelques règles “basiques” comme la détection des variables inutilisées ou les occurrences de Debug .

L’outil s’utilise en ligne de commandes et l’affichage est conçu pour ressembler à l’affichage des messages d’erreur du compilateur Elm.

Après ces deux talks, notre hôte Mobiskill, cabinet de recrutement spécialisé dans les profils technique, nous a offert un buffet de haute qualité : charcuterie, fromages, guacamole (je plaide coupable quant à sa disparition !), légumes frais en bâtonnets…

Ce fut un moment très convivial où chacun a pu discuter de manière informelle et découvrir de nouveaux visages.

Sur la dernière partie de la soirée, Théophile (et oui, encore lui !) a proposé un atelier d’initiation pour les débutants. Ils ont pu découvrir la syntaxe, les principaux concepts du langages et commencé à coder un application affichant aléatoirement des citations.

Citation “Only God knows… You’re talking to him now” by Zlatan IBRAHIMOVIC
Citation “Only God knows… You’re talking to him now” by Zlatan IBRAHIMOVIC
L’application de citations proposée par Théophile

Les elmiens confirmés ont échangé autour de plusieurs projets présentés par certains participants. Nous avons pu voir trois projets.

Tout d’abord, Benoît nous a expliqué comment son équipe à Veepee écrit du Elm sans jamais avoir besoin d’écrire un décodeur ou un requête HTTP manuellement : leur serveur est en Haskell, un autre langage fonctionnel avec un système de type proche de celui de Elm ; c’est cette proximité qui permet de générer automatiquement les décodeurs et les requêtes HTTP en Elm.

logo Haskell
logo Haskell
Le logo Haskell

Ensuite, Christophe nous a présenté son paquet elm-io. Il propose de tordre un peu “The Elm Architecture” afin de rendre certains enchaînements plus naturels. Voici par exemple, comment on peut gérer une commande HTTP avec ce nouveau modèle :

Un exemple d’utilisation de elm-io

Cette présentation a suscité beaucoup de discussions : cette approche doit-elle être intégrée dans “The Elm Architecture” ? Quelles conséquences cela sur le modèle de (non-)concurrence de Elm ?

Image for post
Image for post
L’interface de “Not Only Meetings”

Pour finir, Thibaut a présenté son application “Not Only Meetings”, visant à dynamiser l’organisation des réunions et augmenter l’engagement des participants. Il nous a notamment parlé de l’architecture qu’il a mis en place : son application ne va jamais faire de requête explicitement pour avoir des données mais à la place s’abonne à ces données. À chaque fois que ces données changent sur le serveur, ce dernier envoie la nouvelle donnée directement à l’application ; vu que la communication se fait par websockets le changement est quasi instantané !

En résumé, ce premier meetup de la saison, riche en contenus et rencontres nous donne très envie d’organiser beaucoup d’autres événements cette année !

Image for post
Image for post
Hackathon Elm le 5 octobre 2019 à Paris

La suite ? Très bientôt, un hackathon le samedi 5 octobre 2019 à Paris de 9h à 19h. Le programme ?

  • 9h: Accueil — petit déjeuner
  • 9h45: Keynote d’ouverture
  • 10h05: Présentation des différents projets
  • 10h15: Formation débutants Elm OU Hacking
  • 12h30: Pause repas (fourni)
  • 13h30: Fin de formation débutants puis “mini-hacking” OU Suite du Hacking
  • 18h30: Présentation du travail lors des “hackings"

Vous venez de loin ? Nous pouvons vous aider pour les frais de transport et/ou d’hébergement !

Vous pourrez aussi nous retrouver lors des prochains meetups, le prochain se tiendra aux alentours de début novembre.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store