Compte-rendu de ma première FOSDEM

Publié par Grégory Paul, le 5/02/2013, dans Événements, Java, Mobile, Test, Valtech

logo-fosdem

Je me suis rendu à la FOSDEM pour la première fois cette année et j’en reviens enchanté.
Cette conférence anglophone, ayant lieu chaque année à Bruxelles pendant un week-end en début d’année, est conséquente : plus de 5000 participants et 250 présentations réparties dans plusieurs bâtiments d’un campus universitaire de l’Université Libre de Bruxelles.

De nombreuses sessions m’ont laissé une bonne impression, j’en détaille ici quelques unes.

Ian Barber, développeur sur Google +, a présenté comment Google conçoit ces APIs (How Google builds Web Services). Google expose plus de 50 APIs requêtées plus d’un milliard de fois par jour, toutes basées sur un format et un socle commun.
Historiquement au format Atom, le format est passé à JSON mais respectant un vocabulaire standard (JSON shema), partagé entre toutes les APIs.
amphi fosdem
Ainsi, les exemples que donne Ian sur Google + et Google Books sont très similaires même si les entités manipulées sont de nature différente.
Une ressource Discovery permet d’explorer les APIs disponibles, ainsi que leurs méthodes et paramètres d’appels.
Ian nous explique également que toutes les APIs partagent des services communs (authentification, limitation de l’utilisation pour chaque client, reporting, etc). Ces 2 composantes permettent à Google de générer leurs documentations et leurs librairies pour de nombreux langages. Cela facilite également le maintien de la promesse pour Google de conserver ces APIs stables et homogènes pendant des années.

fosdem cabash

Karl Krukow nous présente la session BDD for mobile using Calabash.
Calabash est un outil OpenSource développé par sa société Less Painful.
C’est une solution pour écrire et exécuter des tests fonctionnels sur mobile, reposant sur Cucumber. Le scénario est écrit une seul fois pour les 2 types d’appareils, ainsi que les étapes du test. La description technique des étapes est, quant à elle, propre à chaque type d’appareil.
fosdem cabash demo
C’est ici qu’on écrit les actions du téléphone (touch, swipe, type, etc) via l’API de Calabash.
Enfin, une brique s’insérant dans une application iOS ou Android permet de piloter un simulateur ou un périphérique réel et d’exécuter les tests.
Les assertions ou attentes (waitFor) peuvent vérifier les éléments natifs (comme les roues de chargements) ainsi que des éléments HTML dans le cas des applications hybrides (sélecteurs CSS dans ce cas).
Calabash offre également une console interactive permettant de faciliter la construction des tests.
Enfin, une vidéo nous montre les bancs de tests de sa société ou des dizaines de robots font tourner des téléphones pour tester l’écran sous toutes les orientations.

fosdem user research

La présentation d’Alexandra Leisse, Better software through user research, nous rappelle quelques principes de conception d’interfaces. Ainsi, elle évoque différents points comme le fait de “quitter sa maison” et aller voir, interroger les utilisateurs tout en restant le plus neutre possible. Elle conseille également d’observer les utilisateurs afin de voir comment ces derniers travaillent ou détourne l’outil pour arriver à leurs fins. Alexandra nous incite également à utiliser les techniques de prototypage les plus rapides possibles, comme le papier pour commencer puis plus tard une maquette HTML. Ce prototype sera ensuite soumis à des tests utilisateurs sous la forme de plusieurs itérations pour arriver à la meilleure interface.

fosdem

J’ai assisté à la présentation de Ben Evans du London Java User Group, What I learned from the Perl community, au sujet de ce que Perl pour apporter à Java. Venant du monde Perl, il dresse un portrait intéressant sur Java, avec ces qualités (10 millions de développeurs, plus de 200 JUGs, plus de 250 languages sur la JVM) et ces défauts (lourdeur du JCP et lacunes face à Perl). Entre autre choses, il nous apprend qu’il a contribué au JDK 8 à travers différents patchs portant sur unicode et les expressions régulières venant de la base de code de Perl.

fosdem jenkins

Anders Nickelsen nous présente ensuite Scale your jenkins build pipeline to minimize test time.
Anders est “QA Engineer”, responsable de l’automatisation des tests et de son infrastructure au sein de sa société, Tradeshift. Dans sa startup, les développeurs pratiquent TDD et la suite de test comprend plus de 2000 tests unitaires et 300 tests Selenium. La suite complète de test prend plus de 2 heures à se jouer, ce qui est bien trop long.
fosdem jenkins
Aussi, grâce à Jenkins, au Swarm plugin et à Puppet, les tests sont regroupés en “sets” en les répartissant uniformément par rapport à leurs temps d’exécution. Les tests sont alors joués sur 12 machines en parallèle, hébergées sur EC2 (et configurées via puppet).
Le temps de build est maintenant passé à 15 minutes, ce qui est redevenu acceptable.
L’idée est intéressante, et me rappelle une optimisation récente pour jouer des tests CasperJS plus rapidement via la commande GNU/parrallel (le temps est passé de 20 à 5 minutes).

fosdem arm

La conférence suivante, ARM support in the Linux kernel de Thomas Petazzoni, fut le retour d’expérience d’un développeur de pilote du noyau linux racontant l’immense diversité des SoC ARM et comment la situation s’est largement améliorée en 2 ans.

Fut le tour de la session What Java can learn from the rise of JavaScript où Steve O’Grady, de la société RedMonk (un cabinet d’analyse des languages et technologies) raconte comment JavaScript a vu sa popularité décoller depuis quelques années et vient de passer juste devant Java. Java n’est pas prêt de disparaître mais il donne quelques indicateurs pouvant entraîner des frustrations pour les nouveaux utilisateurs, comme par exemple le fait qu’il existe beaucoup de framework Web pour Java, là où pour les autres technos les plus utilisées il n’y en a qu’un majoritaire (nodejs, rails et django).

fosdem robot

Alice Lieutier et Antoine Duparay, à travers la présentation Privacy on the Web, nous rappellent les informations que l’on laisse derrière nous en surfant sur le web à travers les cookies tierces parties. Ces cookies sont partagés parmis plusieurs sites web car ils sont chargés depuis la même URL comme le sont par exemple les boutons facebook, twitter ou google + ou encore les publicités. Ces cookies sont majoritaires (85 %) car utilisés à des fins commerciales. Les présentateurs nous présentent Collusion, un plugin Firefox permettant de visualiser ces cookies et nous présente comment agir contre cette fuite d’informations en limitant notre exposition en les bloquant ou encore via l’entête Do Not Track. J’ai récemment parlé de cela à mes collègues à travers un cours du soir sur HTTP.

fosdem mozilla

Toujours chez Mozilla, Fabien Cazenave nous présente webl10n : client-side i18n/l10n library, une librairie permettant de localiser les applications Web. Ce projet est utilisé par Firefox OS et pdf.js mais s’applique aussi bien à des applications web classiques. C’est une solution élégante pour traduire ces applications web, notamment par le fait qu’il gère la pluralisation (le message est différent selon le nombre) et les paramètres.

fosdem mozilla

Paul Adenot, dans la session Current state and future of audio and video in Firefox, nous présente les travaux de Mozilla pour gérer un nouveau codec (Opus, très performant pour tous les usages, utilisé par WebRTC) et nous rappelle le fait que Mozilla s’appuie sur les décodeurs des plateformes pour assurer le décodage de codecs propriétaires (h264, mp3, aac).
Cela fait d’ailleurs écho à la nouvelle récente annonçant que Firefox et Chrome peuvent maintenant faire de la vidéo-conférence grâce aux technologies WebRTC et le codec Opus.

fosdem Firefox OS

Dans la session du même nom, des téléphones Firefox OS nous furent présentés et paraissent très convainquants. L’approche de Firefox OS est d’être basée sur des technologies Web (HTML/JS/CSS) et surtout, de permettre à n’importe quel site web de pouvoir offrir ou vendre des applications. Il décentralise ainsi les marketplaces et rend la création d’applications accessibles à chaque développeur Web. Pour en savoir plus sur le sujet, je vous invite à consulter l’article de Robert Nyman intitulé Getting started with Open Web Apps – why and how.
Les premiers téléphones devraient arriver sur certains marchés (en Asie notamment) en milieu d’année.

fosdem mozilla

Le créateur de systemd, le remplaçant d’initd, a présenté l’état des lieux 2 ans après le début du projet dans la présentation systemd, 2 years later.
systemd est aujourd’hui présent dans de nombreuses distributions et a largement accéléré le temps de boot pour arriver à quelques secondes aujourd’hui (notamment grâce à une meilleur gestion des dépendances et un chargement de service en parallèle).

fosdem UEFI

Enfin, pour la session UEFI, SecureBoot, Cathy Malmrose nous vient de Californie nous rappelle le danger de SecureBoot, un composant de l’UEFI (le remplaçant du BIOS). SecureBoot est en grande partie une initiative de Microsoft qui permet d’empêcher de charger un OS alternatif sur les machines vendues aujourd’hui. Le dessin est assez noir puisque, selon Cathy, il sera de moins en moins possible de le désactiver. Aujourd’hui, les principales distributions sont dépendant de Microsoft pour pouvoir booter sur nos machines. Soyez donc très attentif si vous achetez une machine sous Windows 8 et prévoyez éventuellement à l’avenir de migrer sous GNU/Linux ou BSD pour lui redonner une nouvelle vie, cela ne sera pas forcément possible.

fosdem amphi

Comme vous pouvez le constater, l’énorme intérêt de la FOSDEM est le choix (plus de 20 sessions en parallèle) et la diversité des sessions (développement web, Java, mobile, tests, expérience utilisateur, noyau linux, intégration continue, etc). La conférence est par ailleurs gratuite et libre (aucune inscription n’est nécessaire), même si je vous encourage à y faire un don (ce qui vous donne accès à un tshirt et un livre O’Reilly). A 1h30 de Paris, c’est vraiment un excellent événement que je conseille à toutes et à tous. Vous devriez m’y retrouver l’année prochaine ! ;-)

Un retour sur “Compte-rendu de ma première FOSDEM”

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

By submitting this form, you accept the Mollom privacy policy.