Présentations

IT Holy Wars

Guillaume Laforge   Keynote  09:30 - 10:00   Salle Casoar Tadorne

Vous êtes plutôt tabs ou spaces ? Ou bien Vi ou Emacs ? On a beau être ouvert d'esprit et tolérant, il y a toujours des sujets sur lesquels les développeurs se polarisent. Dans cette keynote, nous reviendrons sur certaines de ces légendes urbaines, de ces mythes fondateurs, de l'informatique !

Découvrons et expérimentons RxJava2 ensemble

Laurent Huet   Conférence  10:00 - 11:00   Salle Chanchardon

Les concepts associés à la programmation réactive apportés par les Reactive Extensions ne sont pas toujours aisés à comprendre. L'idée de cette session est de présenter RxJava2 et son API à l'aide de plusieurs exemples codés en live. Pas de slide dans cette session, que du code ! L'objectif est aussi de rendre cette session interactive pour modifier le code et expérimenter l'API RxJava en fonction des questions/remarques de l'ensemble des participants. Cet aspect collectif devrait nous permettre de nous enrichir mutuellement et de repartir avec plein d'idées !

Les problèmes que l’on rencontre en microservice : configuration, authentification et autre joyeusetés

Quentin Adam   Conférence  10:00 - 11:00   Salle Casoar Tadorne

Ok, tout le monde est persuadé, les microservices, c’est cool. Moi aussi je le crois, ça fait 5 ans que l'architecture de Clever Cloud est basé là dessus. Mais comme tout les nouveau machin trendy, en fait, c’est pas la panacé, et ça apporte son lot de problèmes. Au rang desquels la gestion de l’authentification en mode distribué, je vais donc lister les quelques possibilités de gestion à ce point là. La gestion de la configuration est également un problème quand on déploie des applications distribué. Le talk sera donc fait pour expliquer le moyen de mettre en place une démarche de microservice dans la vie réelle et de soulever les problèmes qui vont être rencontré, et comment les régler.

CTF - Sortez le Mr Robot qui est en vous !

Mickael Jeanroy   Houssem Belhadj Ahmed   Hands-On Lab  10:00 - 13:00   Hall Espace Encan

Vous avez déjà entendu parler de SQL Injection, de failles CSRF ou autres ? Ok, mais les avez-vous déjà exploitées ? Dans cette session, nous vous proposons un "Capture The Flag" qui vous permettra de chercher, analyser et exploiter différentes failles de sécurité. Que vous soyez novice ou non, ne vous inquiétez pas, nous serons là pour vous aiguiller dans le seul but d'apprendre des choses tout en passant un excellent moment ! Ce hands-on se déroulera en plusieurs temps : - D'abord un tour d'horizon de différentes failles, avec des exemples concrets mettant en évidence que même les meilleurs développeurs du monde font des erreurs :) - Ensuite, nous vous fournirons des liens vers différentes applications dont le but sera d'exploiter une faille vous permettant de récupérer un code. - Chaque code récupéré vous permettra de gagner un nombre de points dépendant de la difficulté. - Nous essaierons de récompenser les plus chevronnés d'entre vous ! Notre rêve caché : trouver le Mr Robot de ce JugSummerCamp !

Du peer to peer pour vos applications

Jérôme Creignou   Conférence  11:00 - 12:00   Salle Chanchardon

Le peer 2 peer n'est pas qu'une technologie qui permet de télécharger *légalement* des films (et séries) depuis l'internet. Le but de ce talk est de vous aider à repenser le modèle centralisé du web et de lister quelques briques qui permettent de construire des applications distribuées.

Patterns utiles pour akka streams

Alexandre Delègue   Conférence  11:00 - 12:00   Salle Casoar Tadorne

D'un côté nous avons les reactive streams, l'une des spécifications les plus intéressantes des ses dernières années. De l'autre côté nous avons akka, la boîte à outils parfaite pour créer des applications concurrentes, résilientes, distribuées et ultra performantes. L'union des deux nous donne Akka streams, une librairie permettant d'utiliser la puissance d'akka avec une jolie API de stream. Si les streams permettent de résoudre simplement certains problèmes complexes, à l'inverse, certaines problématiques très simple habituellement deviennent compliquées à gérer sur un flux de données volatiles continue. L'utilisation des streams peut également paraître déroutante quand on est habitué à du code java classique. Heureusement pour vous cette session sera l'occasion de découvrir l'api et ses concepts ainsi que des patterns très utiles pour résoudre des problématiques courantes. Nous verrons en autre comment gérer les api bloquantes, comment utiliser la backpressure ou encore comment écrire de manière concurrente tout en parallélisant. A la fin de cette session vous aurez toutes les clés pour coder avec akka streams le lundi suivant au travail !

Let’s Sketchnote : prise de notes visuelle

Ane Diaz De Tuesta   Amélie Benoit   Quickie  12:00 - 12:15   Salle Casoar Tadorne

La communication fait aujourd’hui partie intégrante de notre travail; il nous arrive régulièrement de vouloir diffuser une information importante, réaliser une présentation, un compte rendu de réunion… Mais comment être sûrs que le message que l’on souhaite faire passer a bien été compris et retenu par les interlocuteurs ? Le sketchnoting apporte une solution ludique, créative et agréable autant à créer qu’à lire. Venez découvrir comment mettre en valeur votre communication à l’aide de procédés très visuels, simples et accessibles à tous.

Byte Buddy : la génération de bytecode facile !

Nicolas Comet   Quickie  12:00 - 12:15   Salle Chanchardon

La génération de bytecode JVM n'est pas nouvelle (ASM, BCEL, Javassist, CGLIB), mais elle est souvent méconnue. De nombreux frameworks et librairies s'appuient sur celle-ci pour effectuer des opérations transparentes mais essentielles. Byte Buddy est la lib de bytecode gen qui fait parler d'elle en ce moment ! Elle vient d'ailleurs de fraîchement être mergée dans de nombreux projets (Mockito 2.1, Hibernate). Venez apprendre en 15 minutes comment Byte Buddy rend la génération de bytecode amusante et élégante, et surtout à quelles fins elle peut servir au travers de petits exemples parlants live-codés !

Vue.js, même un dev Java peut en faire !

Bruno Bonnin   Quickie  12:15 - 12:30   Salle Casoar Tadorne

__Vue.js__ est entré dans la cour des grands en 2016, 2017 sera son année ! Alors, partons à la découverte de ce framework JavaScript, simple, léger et offrant une excellente alternative à Angular ou React, pour ceux qui souhaitent ne pas investir trop de temps dans l’apprentissage d’un nouveau framework. Lors de ce talk, vous verrez comment construire une web app orientée composants en quelques minutes, que même un dev Java pourrait le faire !

J’ai réparé ma voiture avec une imprimante 3D !

Yann Danthu   Quickie  12:15 - 12:30   Salle Chanchardon

Présenté au départ comme une prouesse technologique, puis comme un gadget hors de prix, les imprimantes 3D se sont rapidement imposées comme un formidable outils de création et de prototypage facile et bon marché. Les domaines d’applications semblent sans fin, on parle même d’imprimer des organes humains. De façon plus modeste j'ai réparé ma voiture grâce à l'impression 3D! Et je vous dis pourquoi et comment. Ce sera aussi l’occasion de faire le point sur les possibilités actuelles et à venir de l’impression 3D.

PagesJaunes.fr ToolBox Java

David De Carvalho   Quickie  13:20 - 13:35   Salle Casoar Tadorne

La toolbox des développeurs PagesJaunes Comment est configuré notre environnement de DEV ? (Eclipse, VisualStudioCode, Atom, Sublim, Vagrant, ...) Quelles sont nos règles de DEV ? PMD, Checkstyle, conf eclipse, Sonar, ... Quels frameworks utilise-t-on ? lombok, selma, podam, jaxb, spring, hibernate, .. A quoi ressemble notre stack technique (BD, langages, batchs) ? mongo, mysql, redis, cassandra, java, python, js, php, spring-batch, ... Nous finirons par un petit tour d’horizon de notre archi logiciel basée sur les APIs REST.

Les joies de la négociation

Olivier Truong   Quickie  13:20 - 13:35   Salle Chanchardon

S’il est bien un aspect du métier de développeur qu’on aime pas toujours/trop, c’est de devoir négocier. Souvent, la négociation se résume à un rapport de force. Lors de l’entretien d’embauche ou l’entretien annuel, négocier son salaire est rarement une partie de plaisir, laissant parfois le sentiment de s’être fait (un peu ?) avoir. Même au sein d’une équipe, les négociations pour les choix techniques peuvent s’avérer... compliquées. Ça n’est pas une fatalité :) À partir d'un livre, « Comment réussir une négociation » (titre original : Getting to Yes), et de quelques retours d’expérience, découvrez quelques clés pour être mieux armés dans vos négociations.

10 conseils pour réussir ses premiers pas en DDD

Benoit Prioux   Quickie  13:35 - 13:50   Salle Chanchardon

DDD vous en avez entendu parler, vous avez envie de vous lancer, cette session est pour vous ! J'ai commencé à utiliser des concepts DDD dans mes projets depuis quelques années et au début c'était pas toujours facile de les mettre en pratique. A travers cette session, je vais vous donner 10 conseils issus de mon expérience personnelle pour réussir ses premiers pas en DDD.

Job Crafting en ESN : Make Your Job Great Again

Pierre Tibulle   Quickie  13:35 - 13:50   Salle Casoar Tadorne

Le "job crafting" consiste à refaçonner un job imparfait pour le rapprocher de son job idéal. En ESN/SSII, les missions s'enchaînent rapidement ou à l'inverse parfois on peut rester chez le même client plusieurs années. Au bout d'un certain temps, l'impression peut grandir de ne plus avoir réellement la maîtrise dans sa carrière. Est-ce une fatalité ? Ce talk est un retour d'expérience sur ma démarche de "job crafter" en ESN : au prix d’un peu de changement dans mon travail en mettant fin à ma passivité, je suis devenu l’artisan de mon propre plaisir au travail en le réinventant !

Scala, moins d’1 heure pour comprendre, apprendre et aimer 💖

Philippe Charriere   Conférence  14:00 - 15:00   Salle Casoar Tadorne

J’avoue, j’ai trollé longtemps sans connaître, j’ai essayé plusieurs fois sans succès… Et finalement un jour, l’illumination ✨ Je suis persuadé que: - On peut écrire du code Scala simple 🤔 - Scala c’est aussi simple que du JavaScript 😜 - Que ça ouvre l’esprit pour programmer autrement avec d’autres langages (ceux que vous utilisez actuellement ou d’autres) ✌️ Du coup lors de cette présentation, j’explique comment: - Mes parti-pris (attention ce talk peut piquer les yeux de certains Scalafistes 😪 ) - Installer - 👷 Paramétrer Atom (ou VSCode) avec Ensime pour faire du Scala (ben oui Scala c’est pas non plus léger, alors si je rajoute un IDE, sur une petite config, c’est pas gagné) - un petit script pour se simplifier la vie: mon script magique pour démarrer un projet - Premier “Hello 🌍” - Les 5 concepts qui vont vous permettre de vous en sortir partout: - les case class - le pattern matching - None et Some - Left et Right - Try, Failure, Success - Et une dernière pour la route: créer une WebApp Vert.x en Scala - quelque chose de simple: juste une route (nous n'avons qu'1 heure) - et là aussi mon autre script magique Si vous codez déjà (JavaScript, ou PHP, ou Java etc...) et si je me débrouille bien, vous pourrez coder en Scala à la fin du talk Si vous codez en Scala, normalement vous n'avez pas besoin de moi (mais par contre open pour discuter à la fin) Si coder en Scala vous rend 🤢 donnez lui une dernière chance 😉

Laravel et Vue : une stack simple et efficace pour le WEB

Benjamin Cavy   Yvonnick Frin   Tools in action  14:00 - 15:00   Salle Chanchardon

Un développeur *heureux* produit du *meilleur code*. Laravel et Vue ont bien compris ce concept et nous proposent des APIs élégantes, expressives et faciles à prendre en main. Elles nous permettent de construire des applications web en un rien de temps. Laravel est un framework implanté depuis 5 ans dans l’écosystème PHP, façonné de manière à pouvoir construire des APIs REST rapidement. Il embarque aussi tout un ensemble d’outils pour faciliter les tâches quotidiennes du développeur. Vue js est un framework léger et performant, orienté composant qui gagne rapidement en popularité dans l’écosystème Javascript. Les nombreuses fonctionnalités présentes “out of the box” dans le framework permettent de se concentrer sur ce que _l’on veut réaliser_ plutôt que sur _la manière de le réaliser_. Au travers du live coding d’une petite application permettant d’enregistrer vos gifs favoris, nous allons vous présenter la synergie qui existe entre ces deux frameworks.

La programmation fonctionnelle expliquée à ma grand mère

Charlotte Cavalier   Hands-On Lab  14:00 - 16:00   Hall Espace Encan

La programmation fonctionnelle vous rappelle de vieux souvenirs scolaires, les monades vous font peur et vous pensez que 'High Order Function' est une insulte. Et pourtant vous aimez les lambdas et vous avez le sentiment que l'immutabilité est une bonne chose. Je vais vous présenter quelques principes de la programmation fonctionnelle sans complexité et vous pourrez les appliquer directement dans votre navigateur.

Ōpun : devenir une plateforme de service

Mathieu Ancelin   Alexandre Delègue   François Desmier   Conférence  15:00 - 16:00   Salle Casoar Tadorne

Lorsque ta direction te dit qu'il faut diversifier les activités et devenir une plateforme de services, un reset s'impose pour penser, from scratch, un nouveau pan du système d'information. Durant l’année passée, nous avons pensé et mis en oeuvre un ensemble de méthodologies, pratiques, solutions techniques pour servir de nouveaux produits innovants bénéficiant d’un time-to-market compétitif et de coûts maîtrisés. Cette initiative prise dans une grosse entreprise de la région nous permet le droit à l’erreur, la possibilité de jeter au besoin tout en valorisant son legacy et en responsabilisant les développeurs. Nous verrons donc ensemble les différentes étapes que nous avons suivi lors de cette “rupture”, les méthodologies employées, les façons de travailler, les patterns utilisés. Nous vous présenterons la suite d’outils que nous avons créé à l’occasion, lorsque les outils du marché ne convenaient pas à nos cas d’utilisation (la stack Netflix n’est pas faite pour tout le monde ;-). Au programme, reverse-proxy, API gateway, ingestion de data, feature flipping, A/B testing, des démos qui plantent et bien plus encore.

Une application qui voit, entend et répond

Christophe Jollivet   Mickael Débonnaire   Conférence  15:00 - 16:00   Salle Chanchardon

Avec l'explosion du machine learning, vous avez sans doute rêvé de rendre plus intelligentes vos applications. Lorsque vous avez regardé ces technologies, vous avez pris peur devant ces nouveaux domaines de l'informatique à appréhender : les réseaux neuronaux, le deep learning, le natural language processing, ... Et si vous vous reposiez sur des services existants ? Nous vous proposons de construire un jeu de "Qui est ce ?" en utilisant différents web services et une pile de photos. Nous ferons un petit panorama des API de vision, du Text to Speech, du Natural Langage Processing. Nous verrons aussi comment vous pouvez utiliser un bot pour simplifier l'implémentation du jeu.

Eclipse Vert.x for Dj fun and for profit!

Julien Ponge   Conférence  16:15 - 17:15   Salle Casoar Tadorne

Vert.x est un toolkit pour écrire des applications réactives et polyglottes pour la JVM. Il fournit aujourd’hui un écosystème complet et modulaire qui intègre le paradigme réactif de bout en bout, performant et facile à utiliser pour tous types d’applications. La richesse de l'écosystème Vert.x permet de développer aussi bien une application web de type temps réel, de faire de l’IoT, d’implémenter des adaptateurs de protocoles, d’écrire des applications distribuées et bien entendu de concevoir et intégrer des micro-services. Cette conférence introduira Vert.x à travers du live coding, puis fera place à une démo web temps-réel basé sur un Dj mix collaboratif.

Stream Processing avec Apache Flink

Tugdual Grall   Conférence  16:15 - 17:15   Salle Chanchardon

Les données sont au coeur de nos applications, et sont créées de façon continue sous forme de flux (stream). L'architecture orientée flux (Streaming Architecture) permet de réduire la latence entre l'émission d'un évènement et les décisions à prendre en fonction des évènements passés et en cours, tout en gardant une architecture globale simple et efficace. Apache Flink est un framework permettant de créer des application orientées flux, avec: * Une API en Java et Scala qui facilite l'analyse et le traitement des flux * Intégration avec l'ecosystème Big Data : Kafka, YARN, HDFS, MapR-FS, HBase, MapR DB, Cascading, Elasticsearch) * Des fonctionnalités avancées: Complex Event Processing, Machine Learning et Gestion des Graphes de données. Le tout déployé de façon distribuée et hautement disponible. Cette présentation est l'occasion de découvrir Flink, son coeur, ses APIs et l'approche "streaming first" pour vos applications. Flink est utilisé en production par de nombreuses entreprises: Bouygues Telecom, Netflix, Alibaba, Ericsson, King, Zalando, et bien d'autres, supporté par la société Data Artisans et une communauté de plus de 140 contributeurs.

Cloud : le couteau SaaS du développeur (et de la startup) !

Yann Danthu   Adrien Desola   Conférence  17:15 - 18:10   Salle Casoar Tadorne

Et si on pouvait développer une application sans coder! Ou pas… Retour d'expérience sur le développement et la mise en production d’une application web s'appuyant sur +15 SaaS. Ce partage nous permettra d’aborder les points suivants: * Tour d’horizon de l’offre *aaS? * Pourquoi du SaaS? * Avantages et inconvénients. * La sécurité. * Les limites. * ...

Architecture Migroservices

Francois Teychene   Conférence  17:15 - 18:10   Salle Chanchardon

Microservices, microservices, microvervices ... LA solution à vos problèmes de SI ! Les architectures microservices ont été pensées pour éviter les écueils des grosses applications "monolithiques" (complexité, difficultés d'innovation, scalabilité, ...) mais la mise en place n'est pas si simple. Modification des pratiques de développement, discovery, déploiements, adaptation au changement, authentifications ... Pour commencer à migrer tranquillement votre SI vers cette nouvelle architecture il existe une solution intermédiaire : le Migroservice.

Ils soutiennent le Jug SummerCamp