Sorry, this entry is only available in French. For the sake of viewer convenience, the content is shown below in the alternative language. You may click the link to switch the active language.

Pour la 3ème année consécutive, le Scala.io se déroule dans la capitale de la gastronomie, Lyon. Il s’agit d’un événement technique qui ravit les néophytes comme les aguerris du genre.

L’édition 2018, qui a eu lieu du 29 au 31 Octobre 2018 au CPE de Lyon a été riche en enseignement. Cette année, les organisateurs ont eu la bonne idée de séparer la journée workshop des 2 jours de conférence. J’aime cette formule, elle permet de profiter des workshops sans manquer son speaker préféré.

Dans cet article, je vous présente les 5 conférences qui m’ont le plus enthousiasmées. 


Retour d’expérience

Tout ce que vous avez toujours voulu savoir sur la programmation fonctionnelle sans jamais oser le demander.

Xavier Detant (@XDetant)

Voir la vidéo de la conférence

C’est exactement ce genre de talk que j’attendais en participant au ScalaIO. Xavier est drôle et connaît clairement son sujet.

Il propose une initiation à la programmation fonctionnelle en live codingIl prend en exemple une application, écrite en Javascript, de recherche de titre de film. Le point de départ est un code Impératif. Il mettra alors en avant les problèmes liés à ce type de paradigme (effets de bord, style du code, réutilisabilité …) à travers du refactoring étape par étape. Au bout du temps imparti, on obtient une application purement fonctionnelle. 

J’ai particulièrement apprécié le format du live coding, sans diapositive, qui permet d’introduire les grands principes de la programmation fonctionnelle de façon ludique:

  • – Les fonctions d’ordre supérieur
  • – Les closure
  • – Les lambdas
  • – La curryfication
  • – L’application partielle
  • – La composition de fonction

 

Je recommande ce talk si:

  • – Vous voulez comprendre les limitations des paradigmes impératifs et orienté objet
  • – Vous voulez comprendre la force de la programmation fonctionnelle
  • – Vous aimez apprendre par l’exemple

 

  • Langue: Français
  • Level: Débutant

7 conseils pour démarrer avec Spark

Nastasia SABY (@saby_nastasia)

Voir la vidéo de la conférence

Dans ce talk, vous aurez une parfaite introduction à Spark ainsi que des conseils pour bien débuter. Nastasia est une bonne speakeuse car très pédagogue, elle reste accessible dans sa démonstration. Etant moi-même néophyte en Spark, j’ai apprécié ce talk ludique à base de live coding et d’exemples concrets.

Voici quelques sujets abordés:

  • – Utiliser Spark-Shell pour apprendre et tester ses algorithmes
  • – Bien connaître son infrastructure
  • – Ne pas abuser des UDFs (User Defined Functions)
  • – Comprendre les différents API de Spark (RDD, Dataframe, Dataset)

 

Je vous recommande de visionner ce talk si :

  • – Spark est un mystère pour vous
  • – Avoir un retour d’expérience sur Spark

 

  • Langue: Français
  • Level: Débutant

Tu penses quoi de mon Scala ? Parlons code review !

Tristan Sallé (@TristanSoullz)

Voir la vidéo de la conférence

Si vous faites déjà des revues de codes, cette conférence vous sera utile pour revoir les bonnes pratiques et avoir un retour d’expérience. Dans le cas échéant, vous comprendrez pourquoi vous devez absolument vous y mettre ! Tristan traite parfaitement le sujet en soulignant les problématiques récurrentes de ce genre de pratiques et comment les adresser.

Les deux parties sont responsables du bon déroulement de la revue

Le commiter :

  • – Découper son code et ses commits en sous-tâches
  • – Proposer un descriptif clair de la Merge Request et des changements apportés
  • – S’exercer en relisant son code
  • – Ajouter des tests clairs et lisibles

 

Le reviewer:

  • – Se réserver un créneau dans son emploi du temps
  • – Etre proactif (discuter des développements en cours avec l’équipe)
  • – Etre attentif aux fonctionnalités, en priorité
  • – Faire des commentaires utiles et descriptifs
  • – Proposer des solutions aux problématiques levées

 

Une phrase marquante: “Le code appartient à l’équipe

Je vous recommande de visionner la vidéo si:

  • – Vous vous posez des questions sur la pratique des revues
  • – Vous ne faites pas encore de revue

 

  • Langue: Français
  • Level: Débutant

ZIO: Next-Generation Effects in Scala

John A. De Goes (@jdegoes)

Voir la vidéo de la conférence

La keynote de la deuxième journée était tenue par John A De Goes, auteur, contributeur, speaker et programmeur fonctionnel bien connu de la communauté. Mixant l’humour et des métaphores bien trouvées, John fait le constat du Scala actuel et ses axes d’améliorations. Il introduit alors Zio, librairie Scala, qui aide à produire, élégamment, du code purement fonctionnel.

Je vous recommande de visionner ce talk si:

  • – Vous aimeriez aller plus loin dans le fonctionnel
  • – Vous ne connaissez pas Zio

 

  • Langue: Anglais
  • Level: Intermédiaire

Building GraphQL API with Sangria

Oleg Ilyenko (@easyangel)

Voir la vidéo de la conférence

GraphQL, développé par Facebook, est une spécification d’une API pour requêter les ressources de son application, plus concretement une alternative à REST (https://graphql.org/learn/).

Un des grands intérêts de graphQL réside dans sa flexibilité de requêtage. Elle est déjà implémentée par plus de 15 langages de programmation et profite d’un engouement ces dernières années. Sangria en est l’implémentation Scala et Oleg est son créateur. Au travers d’exemples et de live-coding, Oleg nous guide à travers la création d’une API Sangria. Il abordera les points suivants :

  • – Pourquoi utiliser GraphQL ?
  • – Comment le mettre en place avec Sangria ?
  • – Comment définir des types et un schéma ?
  • – Comment définir une query ?
  • – Comment définir une mutation ?

 

Ayant mis en place et utilisé Sangria depuis une année, j’aurais aimé voir ce Talk à l’époque, il nous aurait permis d’éviter certains pièges.

Je vous recommande le talk si:

  • – Vous ne connaissez pas GraphQL / Sangria
  • – Vous êtes en train de mettre en place Sangria sur votre projet.
  • – Visionner un tutoriel, pas à pas, de construction d’une API via Sangria

 

  • Langue: Anglais
  • Level: Intermédiaire

Bonus

Towards Scala 3 – A Status Report

Martin Odersky (@odersky)

Voir la vidéo de la conférence

Il n’y aurait finalement pas de ScalaIO sans Martin Odersky, créateur de ce beau langage de programmation qu’est Scala. Sa Keynote est axée sur la feuille de route de Scala et ses fonctionnalités pour la future version 3 (en 2020). 

Je vous recommande de regarder son talk, même si cela devient un peu complexe sur la fin.

  • Langue: Anglais
  • Level: Intermédiaire / Confirmé

Conclusion

Je recommande cet événement: les talks sont de qualité, le format est bien pensé, les journées “denses” en information et la communauté accessible. Programmation fonctionnelle, BigData, Tooling, Monitoring, Haskell, Scala, débutant et expert, il y en a pour tous les goûts au ScalaIO. 

La cerise sur le gâteau est la soirée “community” sur la péniche “La plateforme”, un beau moment de partage et de détente. 

Merci à tous les participants et à l’organisation qui rendent ce genre d’événements possibles.

Big up au ScalaIO !