Pour aider nos participants à trouver le (nouveau) lieu de la conférence, nous avions prévu une belle banderole. Bon, notre dictateur bénévole n’étant pas très doué, la banderole a été commandée tardivement - certains dirons “à l’arrache” - et sans prendre l’option “Bon A Tirer” qui permet en principe de valider le rendu avant impression.

Et donc …

Bâche

Interrogé sur le sujet, le responsable de ce qui semble une belle boulette répond : “Pas du tout, il s’agit d’un challenge que nous proposons à nos participants”

A vous donc de compléter le nom et le slogan de la conférence. Envoyez nous vos propositions sur twitter @breizhcamp, celle qui nous fera le plus rire gagnera … un Pass BreizhCamp A VIE

Attention, il y a du niveau, mais même si des propositions comme celles de Sebastien nous font bien rire, elles ne sont as conforme au cahier des charges : il faut respecter le patter: “ BreizhCa…. La conférence à l’ …. “

A vous de jouer, soyez créatifs !

Jeudi soir (le 18 février 2016), il y avait une étape très importante pour l’équipe de l’organisation du Breizhcamp. Nous devions vous préparer un programme qui déchire.

L’objectif de la soirée, transformer ça :

Fiches des propositions

En ça :

Programme

Oui, on ne voit rien. Mais c’est comme ça ! Je pourrais même dire que c’est fait exprès.

Voici le déroulement de la soirée :

Nous avons commencé par les piles les plus petites et facile. Faire rentrer 7 lab dans 8 slots, c’est plus facile que 400 conférences dans 80 slots (les chiffres sont arrondis).

Ensuite choix et assignation de Quikies.

Et enfin, le plus gros morceau, les conférences. Il nous a fallu faire une sélection dans beaucoup de propositions de bonne qualité. Trouver les doublons. Et malheureusement en écarter une partie.

À partir de là, les sessions sont toutes sélectionnées et positionnées pour remplir tous les espaces.

Mais maintenant, le moment le plus important de la soirée arrive. Enfin c’est surtout les pizzas qui arrivent.

Pizzas

Le but était de tacher de gras le programme. Et il ne faut pas oublier de parler des facilitateurs que nous avons utilisés dans la soirée. Oui nous avons des agilistes dans l’équipe :

Bières

Il fallait bien compléter le stéréotype de la malbouffe de l’ingénieur informatique : couple pizzas/bières.

Une fois bien restaurés, nous avons réorganisé les sessions pour avoir un ensemble cohérent.

Et voilà, la soirée est presque terminée. Il ne nous manquait qu’à tout noter pour préparer la programmation au format JSON. L’année dernière la technique était simple : - Photos - Retranscription à la main dans un fichier JSON

Mais c’était à s’arracher les cheveux. Pour préserver la chevelure magnifique des organisateurs - et surtout pour la classe - une application a été développée. Et si vous avez été bien attentif, il y a des codes barres sur les fiches des sessions. Mais aussi sur le programme vide.

Mais à quoi cela peut-il bien servir ? Le plus simple est de regarder la vidéo :

Merci à Benjamin qui a développé une application qui permettait de scanner le créneau horaire, puis la session. Et d’en faire l’association pour préparer le fameux fichier JSON.

Résumé de la soirée :

  • 5 tracks
  • 253 propositions de sessions au total
  • 48 TiA
  • 153 Conf
  • 9 Lab
  • 30 Quickie
  • 13 Univ
  • 3509 revues/votes
  • 88 sessions sélectionnées
  • 85 orateurs retenus
  • 9 pizzas
  • 3 packs de bières

Le CFP est fermé depuis le 2 février … et l’équipe doit maintenant faire des choix pour établir un programme le plus équilibré possible. Pour cela, chaque membre de l’équipe passe en revue toutes les propositions et vote pour chacune d’elle. Les votes se terminent mercredi prochain (le 17/02) ouvrant ainsi la voie à l’élaboration du programme.

Sur la base d’environ 3000 votes, certaines propositions font l’unanimité. Nous pouvons donc les sélectionner et vous annoncer une (petite) partie du programme en avance de phase, histoire de vous allécher !

La suite des sélections viendra d’ici une semaine. Stay tuned …

En résumé

Conférences :

Tools In Action

Universités

Labs

Quickie

Vous trouverez les descriptions détaillées des talks retenus ci-dessous.

Conférences retenues

L’Ere de la Plateforme

Responsables de produit, équipes marketing, entrepreneurs, développeurs… Pour nous tous de nos jours, “créer une plateforme” ou “avoir son API” est un enjeu crucial. Cette session a pour objectif d’expliquer au travers de 7 étapes indispensables tous les impacts de la transition d’un ensemble logiciel vers une plateforme à tous les niveaux : produit, marketing, technique, projet, humain.

Aujourd’hui, de grands noms du Web réalisent jusqu’à 90% de leur chiffre d’affaires grâce à leur Application Program Interface (API). C’est devenu un argument marketing. De leur côté, les développeurs sont depuis longtemps convaincus que le futur se trouve dans les plateformes.

En tant que développeurs, il est facile de nous convaincre qu’une API ouverte est standard est le meilleur moyen de propulser nos applications vers plus de flexibilité, d’ouverture et de scalabilité. Pourtant… Il est difficile de transformer ces principes en une transition complète vers une plateforme. Et c’est bien de la même chose dont il est question ! Mener la construction d’une plateforme quand on est développeur implique de voir plus loin que le seul aspect logiciel.

Dans cette session, je vous propose de parcourir la transition d’un ensemble logiciel Web / Services vers une plateforme et son API. En parlant d’abord des enjeux pour le produit, le business, et ensuite des aspects techniques et de conception, pour enfin en venir aux considérations essentielles sur le plan organisationnel et humain.

Speakeuse : Aline Paponaud - @bootis

Ionic, Native Script, React native… Quel framework mobile hybride choisir ?

Vous avez envie de développer une application mobile, mais quel framework choisir parmi les plus populaires? Et si nous faisions un comparatif entre ces framework pour savoir comment orienter notre choix…

Speakeuse : Stéphanie Moallic - @steffy_29

Jenkins 2.0 - On jette tout et on recommence ?

Né Hudson en 2004 le projet Jenkins est aujourd’hui omniprésent dans toutes les DSI.

Avec plus de 600 releases, Jenkins a essayé (avec plus ou moins de succès) de conserver la compatibilité au fur et à mesure du temps que cela soit pour ses données (vos projets) ou son ecosystème (ses plugins).

Aujourd’hui l’équipe a enfin pris la décision de lancer les développements de Jenkins 2.0 qui devrait voir le jour d’ici la fin du premier semestre de cette année.

Cela pose beaucoup de questions:

  • Pourquoi après plus de 10 ans, franchir enfin le pas dans la création d’une nouvelle version majeure?
  • Quels sont les changements et les nouveautés que les utilisateurs vont en tirer?
  • Quels vont être les impacts en terme de compatibilité pour les utilisateurs et son ecosystème?

Si les réponses à ces questions vous intéressent cette conférence est faite pour vous!

Speaker : Arnaud Héritier - @aheritier

Applications “cloud-native” avec Spring Cloud

Cette présentation commence par démonter le buzz “Microservices” et explique les avantages et les défis de ce type d’architecture. On parlera “Distributed/versioned configuration”, “Service registration and discovery”, “client-side load-balancing” ou encore “circuit breakers”. On expliquera tous ces concepts avec une application exemple réalisée avec Spring Cloud et Netflix OSS.

Speaker : Stéphane Nicoll - @snicoll

Docker en Production ? Et quid de la sécurité ?

Envie de pousser votre application dockerisée jusqu’en Production ? Mais est-ce suffisamment mature pour protéger correctement les donnés et les systèmes qui nous sont confiés ?

Docker est devenu une star technologique rendant accessible et utilisable la conteneurisation. En trois ans, cette techno a beaucoup murri et apporte désormais des réponses, souvent innovantes, aux challenges du monde de la Production. Beaucoup d’annonces passionnantes ont d’ailleurs été faites lors du Dockercon EU 2015 à Barcelone.

Cet exposé fera l’état des lieux de l’aspect “sécurité” pour y voir plus clair à travers le “FUD” (Fear, Uncertainty and Doubt) qui entoure cette techno (surtout dans les milieux du Management). Nous aborderons des sujets comme “user name space”, “secarmor/selinux”, Trusted Registry, project Nautilus sans pour autant nécessiter une connaissance approfondie de Docker.

Speaker : Jean-Marc Meessen - @jm_meessen

Les nouveaux supers pouvoir du web

Et si je vous disais que votre navigateur est doté de pouvoirs dont vous n’avez pas conscience ? Et si l’installation d’une application n’était plus nécessaire pour interagir de façon riche avec les objets qui nous entourent ?

Bref, vous l’aurez compris dans ce talk, je vais vous parler des nouvelles possibilités qui s’offrent à vous en tant que développeur web et qui vont vous permettre de créer des applications web universelles !

Nous évoquerons donc Sensors, Bluetooth, Physical Web, Usb, AppManifest, …

Speaker : Jean-François Garreau - @jefbinomed

Tools In Action retenus

Flexbox, et le CSS redevient fun !

Tu penses que CSS c’est trop compliqué et que centrer verticalement un bloc relève de l’exploit, cette session est faite pour toi.

Les Flexbox sont une nouvelle spécification W3C qui apportent à CSS une nouvelle manière de placer ses blocs sans hack.

Au menu de cette session, du live-coding pour mieux comprendre comment ça marche, comment les utiliser et dans quels cas il serait compliqué de faire autrement. Nous aborderons également la question du support et l’outil auto-prefixer.

Speaker : Hubert Sablonnière - @hsablonniere

Déploiement ELK en conditions réelles

Le trio Elasticsearch-Logstash-Kibana est très populaire dans le monde de la supervision applicative. Cependant, pour déployer un unique cluster à l’échelle d’une entreprise, même en mettant de côté la volumétrie des données, il reste certains écueils à éviter : * Comment gérer la multitudes de serveurs, tous différents ? * Comment gérer les applications, également toutes différentes ? * Comment adresser la sécurité ? * Comment présenter des données pertinentes à des publics différents (exploitants, MOE, MOA…) ?

Et tout cela sans alourdir la configuration du système ?

Le but de cette présentation est de montrer la mise en place de la stack ELK, la configuration de base ; puis toute la logique permettant d’adresser la complexité d’un système d’information complet.

Outils utilisés : ELK, Redis, rsyslog, nxlog, sans oublier Excel !

Speaker : Geoffroy Arnoud

Feedback Loop pour le développeur

On nous parle Time To Market et boucle de feedback dans les projets agiles, mais qu’en est-il pour vous dans votre travail de tous les jours?

Combien de temps mettez vous pour savoir que la ligne de code Java ou JavaScript que vous avez ajoutée fait bien ce que vous voulez? Que devez-vous faire pour vérifier que votre modification de CSS est la bonne ?

Au cours de cette présentation, nous vous montrerons quelques outils et astuces pour vous permettre de réduire votre boucle de feedback. Nous aborderons les systèmes qui redémarrent automatiquement vos projets ou exécutent vos tests lors des changements de code. Enfin nous vous présenterons des outils permettant de synchroniser vos tests manuels entre plusieurs navigateurs.

Speakers :

Introduction à la programmation Reactive avec RxJS

La programmation reactive est un pattern dont la popularité ne cesse de grandir. Angular2 et Cycle.js se basent sur RxJS pour la gestion des flux d’évènements. Durant ce tools in action nous verrons les concepts et les possibilités offertes par RxJS notamment dans la simplification des traitements asynchrones dans une application JavaScript.

Speaker : Grégory Houllier - @ghoullier

Universités retenues

Docker Birthday #3 Celebration - Training

Docker a 3 ans, et pour fêter l’événement Docker Inc. organise à travers le monde des training pour initier les débutants. Profites du BreizhCamp pour découvrir cette techno les mains dans le cambouis.

Speakers : Plusieurs experts du sujet (annoncés sur le programme)

Challenge Mindstorms - Tester votre capacité à développer

Nous vous proposons lors de ces quelques heures de relever un défi: - Nous fournissons le robot - Nous fournissons le challenge. - Vous fournissez les cerveaux

Coder dans le langage que vous souhaitez, Python, Java ou LabView (Logiciel EV3 Lego), C++, NodeJS, …, notre robot mindstorms.

Mesurez-vous à d’autres développeurs, mesurer vous contre le temps qui court.

Entraîner vous avec votre langage préféré, le jour J, il vous faudra faire preuve d’ingéniosité.

Au final, nous verrons si le langage est plus fort que l’algorithmique !

Speakers :

Labs retenus

Angular 2 Getting Started

Tu as entendu tout le monde parler d’Angular 2 mais tu n’as pas eu le temps de mettre les mains dans le code. Alors, retrousse tes manches et rejoins-nous dans ce hands on consacré à la découverte du monde merveilleux d’Angular 2.

Speaker : Wassim Chegham - @manekinekko

Et si on codait l’IOT ?

L’IOT est le buzzword du moment (même si ça existe finalement depuis longtemps). Plutôt qu’uniquement en parler, je vous propose un atelier où vous apprendrez à “faire” du MQTT, ce qu’est CoAP, … J’aurais un/des objet(s) connecté(s) avec différents capteurs. Vous devrez vous connectez et interagir avec eux à partir de ce que je vous montrerai. Il y aura beaucoup JavaScript, du Java et même un peu de Python. A la sortie de l’atelier, vous aurez les idées plus claires sur ce que peut être l’IOT et comment en devenir un acteur.

Objectifs: - apprendre à utiliser MQTT (broker+client) - survoler CoAP - Utiliser MQTT, le SDK Groove et Johnny Five pour interagir avec du matériel physique (Raspberry Pi, GrovePi, Arduino) - Et si vous êtes assez rapide vous apprendrez à piloter un drone “en équipe”, avec MQTT et CylonJS (et si vous ne l’êtes pas, on pourra toujours continuer dehors, mes “Raspberries” fonctionnent sur batteries)

Speaker : Philippe Charrière - @k33g_org

Quickie retenu

XSS is beautiful ou comment j’ai hacké le CFP du BreizhCamp

Qu’est qu’une XSS ?

Une faille toute pourrie pour les Noobs, ça sert à rien, c’est que du Fishing.

Je vais vous prouver le contraire avec un cas concret sur le site même du CFP du BreizhCamp! Une XSS est une porte d’entrée gigantesque à un grand nombre d’attaque web. A l’heure de la “cyberdéfense”, après les traditionnelles SQL injections, il est indispensable de prendre en compte ce type d’attaque et de prendre en compte ce risque dans nos développements. La sécurité ne doit plus être le parent pauvre du développement.

Speaker : Michel David - @mimah35

Depuis le 3 décembre, Let’s Encrypt est passée dans sa phase d’Open Beta. Nous avons donc décidé d’en profiter pour exposer le CFP en HTTPS.

Préambule

Avant d’expliquer les étapes techniques de mise en œuvre, arrêtons nous un instant sur Let’s Encrypt : il s’agit d’une autorité de certification libre qui apporte la possibilité d’obtenir des certificats X.509 pour le chiffrement TLS. La nouveauté réside principalement dans la combinaison de 3 éléments :

  • Le service est gratuit. Il suffit de “posséder” un nom de domaine pour pouvoir l’utiliser.

  • Le service est automatisable, notamment grâce à l’utilisation du protocole ACME : Automated Certificate Management Environment.

ACME

  • Le service est opéré par un groupement d’intérêt public, l’ISRP : Internet Security Research Group, ayant pour but une gouverance ouverte et transparente.

Il devient donc possible d’obtenir automatiquement et gratuitement des certificats émis par une autorité de certification en laquelle on peut a priori avoir confiance, ce qui représente une belle avancée pour la sécurité sur Internet.

Mise en œuvre

Passons maintenant au déploiement du certificat sur le CFP du Breizhcamp. Ce déploiement va se dérouler en deux étapes : la génération du certificat (et des éléments nécessaires à son utilisation), et la mise en place de ce certificat dans l’application. Je ne vais pour le moment vous parler que de la première partie, la génération du certificat.

Let’s Encrypt fournit un client en python permettant l’interaction avec son autorité de certification. Bien que ce client ne soit pas parfait (n’oublions pas qu’il s’agit encore d’une Beta), nous allons quand même nous baser sur lui pour l’obtention du certificat. Ce client nécessite notamment que le port 80 soit “disponible” pour les échanges dans le cadre du protocole ACME, et il a besoin d’être exécuté sur la machine portant le nom de domaine pour lequel on souhaite un certificat. J’ai donc choisi d’exécuter le client dans un conteneur Docker sur le serveur de production du CFP (qui n’était pas encore ouvert à l’époque, je me suis donc autorisé l’interruption de service générée par le fait d’arrêter le CFP le temps de générer le certificat).

Après avoir arrêté le conteneur du CFP, j’ai donc lancé un nouveau conteneur Ubuntu en prenant le soin d’exposer le port 80 :

docker run -ti -p 80:80 ubuntu /bin/bash

Puis j’ai installé et exécuté le client Let’s encrypt dans mon conteneur. Le client est exécuté en mode “standalone” et “certonly” (il lance un serveur HTTP sur le port 80, et génère les certificats sans chercher à les déployer) :

apt-get update

apt-get install -y git

git clone https://github.com/letsencrypt/letsencrypt

cd letsencrypt

./letsencrypt-auto --help all

./letsencrypt-auto certonly --standalone --email contact@breizhcamp.org -d cfp.breizhcamp.org

Et voilà, le dossier /etc/letsencrypt/ contient maintenant votre certificat, la clé privée associée, et la chaîne de certification complète. Il ne reste plus qu’à l’utiliser dans votre serveur Web préféré (ou, comme nous l’expliquerons dans un autre article, dans votre application Spring Boot).

Gagnez votre place au BreizhCamp 2016!

Dans notre vidéo trailer, nous nous sommes bien marrés à mettre en scène un combat à la Final Fantasy à grand coup d’épée/clavier. Du coup, nous vous proposons de nous envoyer la vidéo de vos propres combats avec cette même arme, dans votre openspace.

Le plus original/amusant/délirant (d’après un juri totalement impartial et parfaitement sobre durant le visionnage) se verra invité pour le BreizhCamp 2016.

A vos caméras !