Loading…
SnowCamp 2019 has ended
23rd-26th of January 2019 / 23-26 Janvier 2019, Grenoble

Sign up or log in to bookmark your favorites and sync them to your phone or calendar.

Language & Paradigms [clear filter]
Thursday, January 24
 

10:45

Go(lang) soyez plus fort que le garbage collector grâce l'escape analysis
Les caractéristiques du langage Go sont multiples: la concurrence, le typage statique et sa gestion de la mémoire par Garbage Collector. Mais bien avant que ce Garbage Collector entre en jeu le compilateur Go optimise la gestion de la mémoire en fonction de votre code grâce à ce qu’on appelle l’escape analysis. Voyons ensemble comment optimiser votre code Go pour limiter l'empreinte mémoire et moins solliciter le garbage collector et donc le CPU. Grâce à ces explications vous pourrez enfin y voir plus clair lorsque vous devrez choisir entre utiliser un pointeur ou pas mais aussi avoir une bonne perception de la mémoire de votre application

Speakers
avatar for Benjamin Coenen

Benjamin Coenen

Developer continuous delivery team, OVH
Développeur/Gopher @ OVH team Continuous Delivery.Je m'intéresse au développement web ainsi que toute la partie déploiement et performance. Je joue avec du Go et un peu de Rust. "Opensource everything" est mon objectif. Aussi speaker à mes heures perdues. J'adore partager et... Read More →
avatar for François Samin

François Samin

Senior SWE, OVH
Senior Software Developer @OVH. Working on Continuous Delivery "at scale", trying to make developers happy with their own development process.Also gopher, metalhead, hated by UTF8 and fighting against SMA disease


Thursday January 24, 2019 10:45 - 11:30
Chrome 1 La Maison Minatec, 3 Parvis Louis Néel, 38000 Grenoble

11:45

Clojure en production: ça donne quoi ?
De notre object store à nos outils de stream processing, du frontend au backend, chez Exoscale Clojure est partout. Ce langage original présente bien des avantages: programmation fonctionnelle, immutabilité, REPL driven development… Vous voulez en savoir plus sur Clojure ? Ce talk est pour vous !

Clojure est un langage de la famille des Lisp. Ce langage peu commun présente un certain nombre d’avantages:

  • Le langage favorise la programmation fonctionnelle: en Clojure, les données de notre programme sont représentées via des structures de données immutables que l’on peut facilement manipuler grâce à une librairie standard riche.
  • Fonctionnant sur la machine virtuelle Java, tout l’écosystème Java est accessible depuis Clojure.
  • Clojure fournit de nombreux outils pour écrire du code concurrent et parallèle de manière efficace et sans risque.
  • Lorsque l’on code en Clojure, notre code est en permanence connecté au REPL (un interpréteur avec un certain nombre de fonctionnalités). Cela permet au développeur d’avoir un feedback très rapide sur son code et facilite l’exploration de solutions via le REPL.
  • Une syntaxe simple, concise et cohérente, bénéficiant d’un système de macro très intéressant.
  • ClojureScript permet de coder nos frontend en Clojure, et de partager du code et des librairies entre le frontend et le backend (lui tournant sur la JVM).

Chez Exoscale, nous utilisons Clojure à quasiment tous les niveaux de notre stack technique: applications web, outils de stream processing et de monitoring, pour notre infrastructure Cloud interne (en particulier notre object store) et depuis peu pour nos applications frontend.
Dans ce talk, je présenterais Clojure, sa syntaxe et sa philosophie, en mettant l’accent sur ce que Clojure apporte aux développeurs au quotidien. Pour cela, je m’appuierais de l’expérience que nous avons de Clojure chez Exoscale.

Je ferais également une rapide démo de mon workflow de développement et des avantages qu’apportent le REPL.

Speakers
avatar for Mathieu Corbin

Mathieu Corbin

System Engineer, Exoscale
Je m’intéresse à tout ce qui touche à l’administration système, l’automatisation, le déploiement et l’exploitation d’infrastructures robustes.Après quelques années à automatiser des infras et à mettre en place des pipelines de déploiement, je suis maintenant ingénieur... Read More →



Thursday January 24, 2019 11:45 - 12:30
Chrome 2 + 3 + 4 La Maison Minatec, 3 Parvis Louis Néel, 38000 Grenoble

14:00

Rust 101
Jusqu'à présent, si nous devions choisir un langage pour écrire du bas niveau, nous choisirions généralement entre C et C++.

Une nouvelle option s'offre à nous: Rust, un langage de programmation système conçu pour la manipulation sécurisée de la mémoire, avec une synthaxe haut niveau pour le développement bas niveau et également utilisé sur le Web pour les serveurs HTTP ou Web assembly.

Cette présentation donnera un aperçu des problématiques que Rust tente de résoudre et comment débuter avec ce langage.

Speakers
avatar for Alessio Coltellacci

Alessio Coltellacci

System developer, Clever Cloud
System developer at Clever Cloud and passionate about low level stuffs and actor model. CG artist on my free time.


Thursday January 24, 2019 14:00 - 14:45
Amphi La Maison Minatec, 3 Parvis Louis Néel, 38000 Grenoble

15:00

Zero-downtime deployment with Kubernetes, Spring Boot and Flyway
Kubernetes allows a lot. After discovering its features, it’s easy to think it can magically transform your application deployment process into a painless no-event. For Hello World applications, that is the case. Unfortunately, not many of us do deploy such applications day-to-day.

You need to think about application backward compatibility, possible rollback, database schema migration, etc. I believe the later is one of the biggest pain point. In this talk, I’ll demo how to update a Spring Boot app deployed on a Kubernetes cluster with a non-trivial database schema migration with the help of Flyway, while keeping the service up during the entire update process.

Présentation : https://docs.google.com/presentation/d/17UqkWkCgntJCVBzNPWkh1chGVzDwbY1kxQsFnq3l-YA/edit#slide=id.p

Speakers
avatar for Nicolas Fränkel

Nicolas Fränkel

Developer Relationships Manager, Exoscale
Developer Advocate with 15+ years experience consulting for many different customers, in a wide range of contexts (such as telecoms, banking, insurances, large retail and public sector). Usually working on Java/Java EE and Spring technologies, but with narrower interests like Software... Read More →


Thursday January 24, 2019 15:00 - 15:45
Titane 2 La Maison Minatec, 3 Parvis Louis Néel, 38000 Grenoble

16:00

Développez avec une boucle de retour rapide sur votre cluster Kubernetes
Développer sur un cluster Kubernetes va devenir la norme dans un futur assez proche. Mais il est impératif que les développeurs puissent avoir la même expérience qu'auparavant. Nous verrons à l'aide d'exemples concrets quels sont les outils qui permettent d'obtenir une boucle de développement rapide et quel est le support de ces outils selon les IDEs.

Speakers
avatar for Jeff MAURY

Jeff MAURY

Red Hat
Lead technique du projet JBoss Tools et Red Hat JBoss Developer Studio après plusieurs années à diriger des équipes de développement dans des startups fournissant des frameworks techniques d'intégration avec un accompagement avec des outils de développement.


Thursday January 24, 2019 16:00 - 16:45
Chrome 2 + 3 + 4 La Maison Minatec, 3 Parvis Louis Néel, 38000 Grenoble
 
Friday, January 25
 

10:00

Fun with functions
Quand on parle de programmation fonctionnelle tout le monde pense monade. Venez découvrir un talk on où ne parle pas de monade mais de fonctions, ce qu’elles sont et de ce qu'on peut en faire.

Après un rapide tutoriel d'Haskell (c'est pas si compliqué que ça, vous verrez ;-)) on attaquera le vif du sujet avec un live coding d'un mini framework de test

Présentation : https://t.co/0mOWqcL82T
Démo : https://repl.it/@EmmanuelLongeau/FunWithFunctions

Speakers
avatar for Emmanuel Longeau

Emmanuel Longeau

SFEIR
Dév java depuis de nombreuses années je suis tombé dans le fonctionnel par accident et n'a plus voulu en sortir. D'abord Scala puis Haskell, je pratique dans mon garage. Papa, geek, troll (gentil)


Friday January 25, 2019 10:00 - 10:45
Chrome 1 La Maison Minatec, 3 Parvis Louis Néel, 38000 Grenoble

15:00

Spring Boot with Kotlin, functional configuration and GraalVM
In this talk, I will live code a Spring Boot application with no annotation that will run as a native image compiled with GraalVM. This application will leverage Kofu configuration, a Kotlin DSL designed to configure your application in a functional way.

I will also present various features currently incubated in Spring Fu:

* Kofu (Kotlin DSL) and Jafu (Java DSL) configuration for Spring Boot
* Minimal set of features enabled by default
* No classpath scanning, no feature enabled based on classpath detection
* Both declarative (via the DSL) and programmatic (code auto-complete, allow any kind of if, for statements)
* Functional configuration based on pure lambdas
* Minimal reflection usage, no CGLIB proxy, no annotation processing
* Faster startup and lower memory consumption
* GraalVM native images support
* Reactive SQL via R2DBC
* Coroutines web and persistence API

I will explain where we are, what we learnt, and what's coming next in term of new Spring Framework and Spring Boot features.

Speakers
avatar for Sébastien Deleuze

Sébastien Deleuze

Pivotal
Sébastien is a Spring Framework and Reactor committer at Pivotal. He mostly works on Kotlin support across Spring portfolio, and on Web and Reactive topics. He is also part of MiXiT conference staff crew.


Friday January 25, 2019 15:00 - 15:45
Titane 2 La Maison Minatec, 3 Parvis Louis Néel, 38000 Grenoble