Hackathon Elm à Rennes, Janvier 2020
Tags: elm, hackathon, functional
Published: 2020-01-26 12:05:22

---
title: Hackathon Elm à Rennes, Janvier 2020
published: true
description: 
tags: elm, hackathon, FP
---

Jeudi 16 janvier a eu lieu le troisième hackathon organisé par l'association Elm France, après ceux d'[octobre 2019 à Paris](https://medium.com/@sebastien.fabrice.besnier/hackathon-elm-du-5-octobre-2019-1cd7a6484c6f) et de [décembre 2019 à Rennes](https://knplabs.com/fr/blog/on-etait-au-hackathon-elm-de-decembre-a-rennes). 

20 personnes se sont retrouvées dans les locaux de [l'incubateur d'IMT Atlantique](https://www.imt-atlantique.fr/fr/entreprises/incubateur-startup), à Rennes également. Cette édition était co-organisée par l'association [Elm France](hackathon-elm-france.github.io/) et le [meetup Lambda Rennes](https://www.meetup.com/fr-FR/Meetup-Lambda-Rennes-Programmation-fonctionnelle), et bénéficiait ainsi du soutien de plusieurs sponsors : Orange, Zénika, Conserto et Microsoft.

![Logos des sponsors](https://thepracticaldev.s3.amazonaws.com/i/dzp8t3vf8cnhikvq7imh.png)

Pour cette nouvelle édition le format était légèrement différent des précédentes. Au lieu de se dérouler sur une journée entière, ce hackathon a démarré à 18h30, pour finir vers 22h30. C'est pourquoi il n'y avait pas de conférence pour démarrer la rencontre. Nous avons commencé par un pot d'accueil et une rapide présentation de l'incubateur d'IMT Atlantique puis des activités proposées. Après quoi 13 participants ont commencé l'atelier d'initiation, tandis que 6 autres ont choisi de se lancer dans une contribution à [I Hate Money](https://ihatemoney.org/), un service en ligne pour gérer les dépenses d'un groupe d'amis lors d'une soirée ou d'un week-end par exemple.

![L'atelier d'initiation à Elm](https://thepracticaldev.s3.amazonaws.com/i/bkyo6g6giaruuixomabp.jpg)

Dès le départ nous avions fait le choix d'organiser deux hackathons plutôt qu'un seul, pour permettre à chacun de venir en fonction de ses disponibilités et préférences. Certains en ont profité pour venir aux deux, afin de contribuer à un projet open source après avoir suivi l'atelier d'initiation lors de leur première participation. A l'inverse, et sans surprise, le public de cette seconde édition était purement Rennais, là où 4 Nantais avaient fait le déplacement jusqu'à Rennes lors du hackathon de Décembre.

![Le repas a été très convivial](https://thepracticaldev.s3.amazonaws.com/i/nrkz7om23e2xq9fpzp6y.jpg)

Vers 20h00 nous avons bénéficié, grâce à Caroline, d'un repas assez exceptionnel pour ce type d'évènement, constitué de délicieuses spécialités québécoises faites maison : Tourtière du Lac Saint-Jean, [Salade de Macaronis](https://www.allrecipes.com/recipe/81108/classic-macaroni-salad/), Tarte aux pacanes, Carrés aux Rice Crispies. Et c'est ainsi que nous avons pu découvrir que nos amis québécois parlent de "pacanes" pour désigner ce que nous appelons les "noix de pécan".


## I Hate Money

![L'IHM de I Hate Money](https://thepracticaldev.s3.amazonaws.com/i/wf7wj4x3q6k2cnnbznfx.png)

En ce qui concerne la participation au projet I Hate Money, deux groupes se sont formés.
L'un des groupes a constaté que les montants d'argent étaient représentés par des nombres flottants, et a voulu utiliser une représentation plus proche du métier, tandis qu'un autre groupe a constaté que la page ne se mettait pas à jour automatiquement quand deux intervenants effectuaient des modifications sur des machines distinctes.
Le premier groupe a d'abord pris la décision de transformer tous les montants en un nombre entier de centimes, puis, afin de mieux prendre en compte les divisions liées au partage, a décidé d'utiliser une représentation sous forme de nombres rationnels. Cette représentation n'étant pas cohérente avec le serveur back-end de stockage des données, ils ont toutefois dû convertir ces montants en nombres flottants lors de la communication avec le serveur.
Cela s'est concrétisé par une [pull request](https://github.com/spiral-project/elm-ihatemoney/pull/16).

![Le groupe qui travaillait sur I Hate Money](https://thepracticaldev.s3.amazonaws.com/i/c1bt1bxjh4moz7meacs8.jpg)

Le second groupe a décidé de mettre en place un rafraîchissement des données de la page se déclenchant lors du clic sur un bouton. Cet ajout a généré plusieurs "problèmes". Tout d'abord, un rafraîchissement de la page impliquait la nécessité de repasser par la page d'identification. Une fois ce premier problème réglé, cela a permis de mettre en évidence un défaut au niveau de la gestion des événements, pour lequel ils ont proposé un correctif. En effet, au chargement de l'application, un premier événement forçait un affichage avec des données incomplètes. Pour éviter cela, il a fallu retarder l'affichage jusqu'au dernier événement, en transférant les données intermédiaires d'événement en événement.

Le résultat est également visible [sur Github](https://github.com/spiral-project/elm-ihatemoney/pull/17).

## Réception

Les retours que nous avons sont excellents. Voici par exemple les commentaires publiés sur meetup :

![Commentaires sur meetup](https://thepracticaldev.s3.amazonaws.com/i/4vwsds5xhwa4yqpdeif7.png)

## Conclusion

Nous ne prévoyons pas de refaire de hackathon sous cette forme à court terme sur Rennes. Les prochains hackathons Elm auront lieu à Bordeaux (le 7 mars) et à Nantes.

A Rennes par contre, nous allons organiser des meetups mensuels, probablement le midi, à partir de février 2020. Si vous êtes intéressés, nous vous invitons à vous inscrire sur le site du [meetup Lambda Rennes](https://www.meetup.com/fr-FR/Meetup-Lambda-Rennes-Programmation-fonctionnelle), afin d'être prévenus par mail lorsque ces évènements seront annoncés.