Devoxx Belgium 2014 (1)

16/11/2014
conference devoxx java

Voici le retour de ma première journée à Devoxx Belgique.

Keynotes

Devoxx s'étends au fur et à mesure sur l'ensemble de l'europe. Après Anvers, Paris et Londres, en juin prochain il y aura un devoxx pologne à Cracovie (krakow).

Red Hat digère ses différents rachats et nous propose un PAAS (platform de développement dans les nuages). Au programme de programmation d'application mobile et un middleware basé sur activemq et camel (donc du rachat de fuse source) avec à priori un éditeur en ligne.

Oracle ramène peu à peu Java dans son objectif initial des années 90 ... dans l'embarqué : microcontrolleur, internet des objets, voitures...


La gare d'Anvers

Apache Mesos / Cluster

Une présentation de mesos par un petit français @samklr. Mesos est un manageur de conteneurs qui fourni une API utilisable par un orchestrateur de jobs.

Cela permet de passer outre les limites du partionning statique et de lisser et optimiser l'utilisation des ressources des serveurs. On va pouvoir ainsi balancer la charge des jobs sur des contenaires dédiés.

Mesos est de la fondation apache et a été mis à l'épreuve du feu de Twitter & AirBnB. Il est testable sur la plateforme de google si j'ai bien compris.

Le système de containeur s'est d'abord basé sur LXC pour aller ensuite vers c-groups. Zookeeper est utilisé pour la gestion de la haute disponibilité. Cette année le support de docker a été ajout, ainsi les 2 systèmes de containers peuvent cohabiter derrière l'API de Mesos.

Dans les type containeurs, on a tous un écosystème. Example Marathon pour des services qui se lance dans la durée (exemple un site web). A contrario l'orateur ne conseille pas d'héberger de base de données dans les containeurs.

Plus d'information : Mesos Mesosphere


L'architecture globale de mesos

Chet Haase - Process, Process, Process

Une session "détente" qui démontre par l'absurde la bétise de pas mal de sociétés et des boites de conseils. Les qualités de Stand up de Chet Haase font tout le travail.


Plus il y a de lignes de codes, plus il y a de bugs, il faut donc écrire moins de code

Probably, Definitively, Maybe

C'est la présentation qui pique avec beaucoups de théorie mathématiques :

  • la description des différentes variantes de le l'algo de classification de Bayes,
  • la prise de décision avec le modèle de Markov,
  • les filtres de kalman qui est très robuste et utilisés par la Nasa et l'armée depuis longtemps.

La présentation aurait gagné à être accessible en mettant 50% de théorie et 50% d'exemple. Le trop de théorie m'a rappelé la prépa et l'école d'ingénieur.


Slide en mode tableau noir pour bien te rappeler l'école

Web performance tuning

C'est la session qui m'a le plus intéressé. Au final très peu de technique, mais une description très clair d'une approche d'amélioration des performances d'une application web.

La première chose c'est de s'entendre avec les utilisateurs sur ce qui est lent. Cela demande des efforts des 2 cotés pour avoir un langage commun. Du coté utilisateur, il faut partir du "c'est lent" à combien, quelle unité et quelles attentes. Du coté développeur, ne pas partir trop tôt dans une mauvaise direction, prendre la donnée et résoudre les vrais goulots d'étranglement

L'approche est globalement la suivante :

  1. Collecter les données (et prendre uniquement ce que l'on a besoin)
    • Réseau : tester dans les 2 sens et prendre en compte les accès externes.
    • Serveur : utiliser les commandes linux.
    • JVM: paramètre du garbage collectors.
    • Containeur : attention aux sessions.
    • Cache : obligatoire mais à utiliser avec attention.y
    • Application : attention aux sérialisation en chaîne, ne pas se focaliser sur les requête longues, prendre en compte les volumes de requêtes.
    • Base de données, api externe : mesurer
    • Note 1 : une autre paire de yeux.
    • Note 2 : tout le monde ment, vérifier avec des données.
  2. Analyser :
    • Ne pas se baser sur les préjugés (réseau parfait et stable etc...)
    • ne pas oublier les solutions altyernatives
  3. Retirer les goulots d'étranglement
    • aller au dela de votre zone de confort : infra, réseau, virtualisation.
    • Ne pas copier bêtement des réglages de jvm et d'un poste de blog.
    • Aller chercher ce qu'il y aderrière les méthdoes opbjets que vous utiliser (exemple : JPA/Hibernate, arraylist et linked list).

Enfin lorsque que vous fournissez une API, vous ne pouvez prévoir comment elle va vraiment être utilisé, rendez-la configurable. Surtout fournissez des résultats de test de performance pour des scénarios précis.


Step out of your confort zone

Modern App Architecture

Un talk un peu bizarre, la forme, l'humour, les anecdotes, l'énergie était très bonne, par contre c'était un peu vide et le vrai contenu à la fin est passé trop rapidement.

On a eu un historique des archiectures web :

  1. Le projet Xanadu : un web avant l'heure (1970) qui est sortie à la fin des années 2000 et qui s'est avéré être juste mauvais.
  2. L'époque des pages statiques (geocities, mygale..).
  3. Les serveur simple (cgi).
  4. Les applications lourdes sur navigateurs (applet, flash, active-x).
  5. Les serveurds complexes (jsp, jsf, php, ror, asp.net, tous les framework mvc web).
  6. L'apparition des apis (http, soap) qui coincide avec l'arrivé du mobile

Une définition de architecture est la suivante : ensemble des réponse que les développeurs vont poser lors du développement.

Attention aux hypothèses fausses sur lesquels se repose de nombreuses architectures d'entreprise (cf illustration).

Une architecture web moderne est maintenant une plateforme orienté développement sur laquel on a des objets métiers et un jeu de services à documenter propre au métier adressé.

Cette architecture doit pouvoir s'adapter au mobile et au web dès le premier jour

Sur les choix technologiques, c'est à vous de travailler en fonction du besoin (http, jms, hadoop, etc...)


Les fausses opinions sur lesquelles se base beaucoup trop d'architectures

ING / Transformation d'une DSI

La journée s'est terminé par une keynote du CIO/DSI de chez ING direct. Il a expliqué comment il a transformé une DSI moribonde en une DSI qui tire le métiers vers de nouvelles pratiques avec leur client. Agilité, automatisation, dev ops et maintenant cloud privé ont participé à cette conduite du changement. Le mec va même jusqu'à présenter une slide d'architecture avec les technos cool du moment pour dire qu'il recrute les meilleurs ingénieurs possible. La performance est d'autant intéressante, qu'il est aveugle (on me l'a dit après) et que c'est le speakers qui a subit le plus de problèmes techniques (sono, vidéo). Une chose encore inimaginable en france ([troll]quoique il était plus visionnaire que de nombreux DSI français...[/troll]).

Point notable et qu'on retrouvera dans plusieurs présentations, c'est la nouvelle séparation entre exploitation et développement. Il est basé sur modèle PaaS. L'exploitation est responsable de l'infrastructure, des OS et des serveurs d'app et de leur monitoring. De l'autre coté, les développeurs sont responsables du contenu(des applications), de son déploiement et de son monitoring.


Ron Van Kemenade, le DSI d'ING

Soirées et autours de Devoxx

Devoxx est aussi un lieu de rencontre des différentes communautés : par pays, langue, technologies, associations. On y rencontre donc pas mal de personne qu'on suit sur twitter ("attends c'est lui @romaintaz ...").

L'autre particularité, c'est que dans la génération des 30-40 ans il y a beaucoups de profils aux trajectoires alternatives (c'est à dire pas les 5 ans d'université et ou prepa/ecole ingé). Et la motivation et le travail a fait qu'ils sont maintenant dans les leaders technique d'une communauté.


Le repère des frenchies francophones au Kelly's
Pas de commentaires

Le retour du Normandy Agile User Group

12/10/2014
agile scrum kanban cantinenwx

En septembre dernier après 10 mois d'absence le NAUG est de retour. Alexandre Ronsaut a souhaité pousser en avant le sujet pour la communauté web. Avec Nicolas Saillard de Coaxys, on s'est proposé pour faire un tour d'horizon des 2 grandes approches : scrum et kanban.

Pour kanban, j'ai pris une approche différente, je suis parti d'anti-patterns vécus de mise en place de l'agilité pour présenter une approche plus douce dans sa mise en place. Je n'ai donné le nom qu'à la fin.

Si ma première partie peut être assez négative sur scrum. C'est parce que, récemment, il y a eu beaucoup d'approches top-down avec une application des règles en aveugle. Et à chaque fois en oubliant deux choses :

  • La boucle de retour (vous savez les actions à la fin de la rétrospective). Cette boucle de retour ayant le pouvoir de modifier les règles "by the book" mises en place avant.
  • L'aspect humain/motivation. Avec une mauvaise gestion du changement, où on applique les règles en se disant "j'ai suivi le livre, ca va marcher, c'est sûr" alors qu'il faudrait juste observer l'open space devant soit.

Pour ma 2ème présentation, je dois avouer que la fatigue commençait à se sentir et que j'ai été bien moins bon que l'équivalente faite à devoxx france.

Voici l'ensemble des vidéos de la soirée :

Scrum, une des méthodes Agiles / Nicolas Saillard :

Pratique Agiles : anti pattern et mise en œuvre :

Outils pour le manager :

L’Agilité dans le cadre d’une prestation / Nicolas Saillard :

Les slides :

Pas de commentaires

Bureau Debout : Essai 1

28/09/2014
startup rouen

Après la coupure estivale et le rush de la rentrée, voici un article de retour d'un 2ème passage à Seine Innopolis.

J'ai été accueilli par Alex Ronsaut/ApolloNet pour tester leurs bureaux debouts. Ce ne sont pas de bureaux debouts réglables à 500 ou 1000 € mais de simple tables fabriquées avec quelques planches. J'ai fait 2 séances d'une heure chacune (fin de matinée et début d'après midi) de tâches courtes : chat, mails, vérification d'hypothèses dans des documentations.

Bilan : (au moins) la première fois c'est fatiguant. Je ne veux dire pas particulièrement le dos (qui était ma peur) mais globalement, le corps n'as pas l'habitude et ca se sent rapidement (surtout quand la nuit a été courte). D'un autre coté, j'avais l'impression d'être plus focalisé sur mes tâches.

Chose curieuse, mes voisins de bureaux avait tendance à faire les 100 pas devant leur bureaux lorsqu'il avait un problème (de CSS la plupart du temps).

A retenter dans la durée avec des tâches plus longue de type programmation et rédaction.

Petites note technique de Alex Ronsault : en fonction de comment tu es foutu, quelques centimètres de différence sur la hauteur du bureau jouent énormément sur ton confort.

C'est un sujet à la mode, voici quelques ressources :

Et d'autres ressources sur des approches encore plus innovante, marcher en travaillant (ou l'inverse) :

Pas de commentaires

Une journée à Seine Innopolis

06/07/2014
startup cantine rouen

Mercredi dernier j'ai été télétravaillé depuis le batiment "Seine Innopolis" à Petit Quevilly. Le batiment à ouvert en septembre dernier et s'est rapidement fait envahir par les startups et indépendants normands. Pour compléter le tout, la cantine NWX vient d'ouvrir.


J'ai croisé un mineur de bitcoins

Un serveur "big data" chez Creative et Coaxys

L'étage des startups et indépendants

Le 3ème étage de Seine Innopolis a permis de (re) regrouper les Normandy Web eXpert (42 stores, spread button, Powertraffic, Digiworks Studio ...). Les indépendants et de nombreuses petites sociétés en croissance ont pris le reste de l'étage.

De mon coté, j'ai squatté un bureau chez Coaxys et Creative Data, 2 petites SSII qui redémarre de zéro. Arnaud (le gérant de Creative Data) était le premier arrivé à Seine Innopolis dans la partie incubateur au rez de chaussé. C'est le premier intérêt d'un tel endroit, les sociétés "déménagent" au sein du batiment en fonction de leur croissance.

L'autre intérêt de ce 3ème étage, c'est le networking/réseautage. Les métiers et les profils sont différents. Les mises en relations sur du recrutement ou des contrats sont importantes.

Un point que l'on remarque rapidement dans la journée, c'est la modernité des pratiques. Les créateurs et indépendants entendent à travailler dans un environnement qui leur plaise. Cela va de la playstation aux bureaux sur mesure pour travailler debout. Cela passe aussi par la présence de canapés et de coin café confortable. On le voit aussi dans les pratiques de management : Arnaud Muller de Creative data choisissait les pcs/outils de travail avec chacun des membres de son équipes (en même temps quand tu fais de la BI et du Big Data faut de la babasse qui tienne). Enfin graphiquement, les différentes sociétés ont colorées leur lieu de travail, que ce soit par le choix du mobilier et de la mise en avant de leur marque.


L'indépendant Bertrand Keller en plein travail son bureau debout

Arnaud Muller en plein management

Conclusion, ce 3ème étage est vraiment le poumon de Seine Innopolis. On y retrouve l'enthousiasme des créateurs de startups ou autre petite société à croissance plus lente. On croise pas mal d'indépendants assumant leur choix de liberté (et de risques). Pour regonfler son énergie, cette journée fait du bien!

Cantine NWX

J'ai commencé la journée et terminé à la journée à la Cantine Numérique NWX (note c'est un espace de co working). J'y étais bien seul... Elle vient d'ouvrir. Quelques problèmes de wifi et de climatisation (mais on m'a prété un cable réseau et on m'a fait les réglages adéquats) - l'asso. NWX devrait bientôt régler ce problème de wifi -.

Si l'endroit est plaisant pour travailler, son problème est la localisation de la cantine dans le batiment. En effet, elle n'est pas dans le chemin des lieux de rencontres (ie le 3ème étage - accessible via badge ou si on connait du monde - et la caféteria). A ajuster donc...

Vous trouverez plus d'information sur le site de nwx.


La cantine NWX rien que pour moi.

Le Jug Big Data

Avec mes compères du Normandy JUG, on a rempli la cantine NWX à partir de 19h. Et - grace ou à cause d'un contre temps - on a exploité les infrastructure de la Cantine. En effet, Vincent Heuschling nous a fait la présentation via Google hang out. Chose que l'on aurait pas pu faire dans les écoles ou le soirées jug se sont déroulées les dernières années.


Vincent en direct chez lui à la cantine NWX

Démo de spark (ouch... du scala)

Il nous avait déjà fait une séquence introductive il y a un peu plus d'un an. Ici, il s'agissait d'aller davantage de mettre les mains dans le cambouis. Comme d'ahbitude avec Vincent, c'est très bien expliqué : j'ai donc casiment tout compris!

Pas de commentaires

Conférence NWX 2014

28/06/2014
conference web rouen

Ce jeudi 26 a eu lieu l'édition 2014 de la conférence annuelle des Normandy Web Expert. Contrairement aux autres années, j'ai pu me libéré et tenir un stand pour le normandy jug, codeurs en seine et devoxx 4 kids.


On a inauguré notre roll-up doté d'un gros juggy

Généralités

Sur les 341 inscrits entre 150 et 200 ont du venir (c'est le problème des conférences gratuites), il y avait 3 tracks en même temps : la plénière avec les gros invités, la e-commerce et la technique. J'ai passé 80% du temps dans la technique et le reste du temps j'ai "réseauté"" : le principal attrait de cette conférence est qu'elle mélange des personnes de différents profils.

Petite déception sur la keynote du nouveau président, un discours pas assez dynamique (disclaimer : j'ai eu un débat avec lui sur une partie du contenu et la forme). Rien que des slides avec juste des photos derrière lui pour illustrer les différentes actions comme salon e-commerce et codeurs en seine aurait aidé à la compréhension.

ERRATA: Romain Prat m'a indiqué que 250 badges avaient été retirés, c'est à dire que comme pour codeurs en seine pas mal de personnes sont venus juste pour quelques heures.

Les conférences techniques

Nos comparses de codeurs en seine et notamment Alexandre Ronsault ont organisé un track web/technique (une première pour la conférence NWX). Au programme, on a eu du phonegap, de l'agilité, de l'ergonomie, du php bien écrit (..bon j'ai pas assisté à la conférence donc je n'ai pas pu vérifié ;-), de la mesure de performance et de la réflexion sur la conception avec le client.

Coté agilité, on a eu Nicolas Saillard, a fait une rapide introduction à l'agilité en présentant rapidement scrum et kanban. Quelques inexactitudes, mais une bonne idée pour relancer le NAUG.


Nikos nous décrit son aventure dans la création de Coaxys

Bertrand Keller nous a présenté une approche très pragmatique pour améliorer et mesurer les performances d'un site avec son client. Il a mis en place, via une page html statique, un suivi très simple pour historiser et partager les indicateurs clefs.


Betrand montre l'historique des performances suite à ses actions sur une page

Dans le milieu de l'après midi, on a eu, pour moi, la meilleure conférence de la journée avec Ivan Dalmet, designer chez Gabel. En 15 mn, il a présenté les principes d'ergonomie tout en donnant quelques astuces. Je sens qu'on va le revoir au JUG, à NWX ou à Codeurs en Seine en fin d'année.


Clin d'oeil pour l'équipe de Masternaut Louviers

Enfin, pour les non-initiés du monde des intégrateur web, Alexandre Ronsault nous a fait découvrir comment la conception se passe entre l'intégrateur et le client (...le .psd = le contrat...). Il a proposé quelques pistes d'intégration comme travailler le wireframe directement en html plutôt que de faire du balsamiq.

Conclusion

La journée s'est terminé par quelques conférences en plénière avec notamment celle de Emmanuel Assié sur la pollution cachée que génère nos programmes informatiques. Par exemple, entre 2 développeurs on peut avoir un rapport de 1 à 10 selon la qualité du code. Je vous ferais un retour sur ce livre bientôt.

Enfin les politiques ont terminé avec discours très court! (ouf!)

Pour conclure, quelques idées à prendre pour codeurs en seine : 1/ prévoir des auto-collants pour l'aspect communautaire et marketing. 2/ l'idée du traiteur de donner des doggy-bag sur les restes du buffets.

Pas de commentaires