Compte rendu du Libre Graphics Meeting 2014

Pour la seconde année consécutive, Aryeom et moi (Jehan) étions présent lors du Libre Graphics Meeting, à nouveau invité par GIMP.

Notre compte rendu (tardif) en 3 mots: c’était génial!
L’expérience en une image:
Libre Graphics Meeting in Leipzig

Il y avait donc évidemment deux aspects: les conférences, et le fun!

Conférences et Ateliers

Les sujets connus

Parmi les conférences, j’attendais beaucoup des discussions sur la gestion des couleurs (Chris Murphy et Richard Hughes), un sujet que j’essaie de comprendre, avec difficulté; j’ai apprécié la présentation de Magic Lantern, qui était déjà installé sur mon appareil photo Canon, un projet que je suis déjà depuis quelques temps; aussi celle d’Entangle, un logiciel de contrôle de l’appareil photo depuis l’ordinateur, qu’on a essayé à plusieurs reprises, notamment dans le but de l’utiliser pour de l’animation “stop-motion” (à vrai dire, j’avais contribué déjà quelques patchs au projet et avais encouragé son mainteneur à le présenter lors de LGM); et beaucoup d’autres. Mais ce fut des projets que je connaissais déjà quelque peu. Le mieux est lorsqu’on découvre des projets!

L’Atelier Idéal!

Dans la catégorie des “projets inconnus”, mon favori fut Steve Conklin, déjà pour sa conf “Knitting machine hacking” (bidouillage de machine à tricoter), mais surtout l’atelier correspondant sur “The basics of reverse engineering: How and Why?“. Il avait préparé du matériel fait-maison: deux cartes connectées, l’une avec senseurs et joystick; l’autre avec affichage électronique, et le but du jeu était de comprendre comment la carte avec les senseurs fonctionnaient et le format des données qu’elle transmettait à la seconde carte, puis la retirer, connecter la carte d’affichage directement sur l’ordinateur en usb, et tenter de lui envoyer directement des commandes (à travers le logiciel `screen`! Aucune idée qu’on pouvait aussi l’utiliser ainsi!).

Aryeom tinkering with the devices to hack during the Reverse Engineering Workshop.
Aryeom manipulant le matériel de l’atelier d’ingéniérie inversée.

Alors soyons clair: vous ne serez pas soudainement capable de hacker votre machine à tricoter immédiatement après l’atelier, néanmoins cela donnait une bonne idée du type de travail caché derrière l’ingéniérie inversée. Et ce fut super sympa. Tout atelier devrait être aussi bien préparé!

Natron

Un autre projet intéressant et totalement inconnu fut Natron, un logiciel de composition 3D par graphes, développé à l’INRIA pour de la recherche. Un de ses buts principaux est de pouvoir utiliser les plugins OpenFX. Si j’ai bien tout compris, OpenFX est un logiciel Libre, malheureusement pour Windows uniquement, avec une liste impressionnante de plugins, la plupart étant développés par des tiers, et propriétaires. Les dévs de Natron regrettaient ainsi l’opportunité manquée pour Linux et le Libre. Leur logiciel est donc là pour combler le manque. La démo était sympa et prometteuse.

J’ai personnellement cependant regretté qu’ils n’aient pas contribué plutôt à Blender, lui donnant la possibilité d’utiliser ces plugins OpenFX comme opérations de nœuds. Leur argument principal consistait en un problème de licence, malheureusement juste un malentendu. Il n’y a aucun problème d’utiliser des plugins proprios dans un logiciel GPL en tant qu’utilisateur. On ne peut pas les distribuer ensemble, mais c’est tout. Un utilisateur récupérant séparemment un logiciel et un plugin peut les utiliser ensemble si cela lui chante, quelque soient leurs licences individuelles.
Il existe aussi une astuce implémentée par de nombreux logiciels pour diminuer encore davantage tout risque: le moteur de plugin doit être développé comme un processus séparé, et ce processus doit avoir une licence différente, plus permissive, par exemple la LGPL.

Bon cela reste un logiciel intéressant, et si tout se passe bien, le développement continuera. Gardons un œil dessus!

xsheet

Un atelier m’interpella, ainsi que la plupart des autres développeurs GIMP ou GEGL: “GEGL n’est pas GIMP – créer des applications graphiques avec GEGL”. Quelqu’un, Manuel Quiñones, dont personne n’avait entendu parler dans la communauté GIMP/GEGL a commencé un projet de logiciel d’animation 2D, appelé xsheet, basé sur GEGL. Bien sûr, cela avait de quoi nous intriguer et on est allé voir l’atelier.

Un bon point pour GEGL est que, lorsque des gens hors du projet même se mettent à l’utiliser, c’est qu’il atteint un état stable. Et c’est bon pour le futur.

Bien sûr, plus personnellement, on veut faire de l’animation 2D, donc ça a encore plus de quoi m’intéresser. Au final le programme n’était pas du tout dans un état utilisable, tout juste un premier jet, une “preuve de concept”. C’est néanmoins intéressant de voir ce type de projet apparaître pour Linux, et il va de soi que je garderai un œil dessus, au cas où.

Les réunions GIMP

LGM est l’occasion annuelle pour une réunion de vive voix des contributeurs. Cette année n’a pas dérogé à la règle, bien que j’ai le sentiment que nous n’avons même pas discuté la moitié de ce qui était prévu. J’ai été déçu sur ce point. Par contre nous avons eu de trop longues discussions sur la relation entre développeurs et designer. Mais je préfère ne pas détailler cette partie.

GIMP meeting in Leipzig, LGM 2014
Unes des réunions des contributeurs GIMP à Leipzig, LGM 2014

Nous avons tout de même pu lister les points majeurs bloquant la sortie de GIMP 2.10, ce qui est plutôt bien.

Une autre discussion que je suis heureux avoir eu, bien que cela n’est pas allé aussi loin que j’aurais aimé, concerne notre procédure de sortie. En particulier, j’ai proposé de changer pour un système de sortie continue (“rolling release”), dans un futur proche. Le problème est que nous avons des fonctionnalités qui traînent dans notre branche, prête ou presque, mais bloquées dans un état semi-végétatif des mois, voire des années, et cela à cause de ce concept de sortie mineure/majeure. De manière générale, tout utilisateur intéressé par GIMP le sait: nos sorties sont trop espacées temporairement, même nos mineures (qui ne contiennent que de la correction de bugs). Et il n’y a de nouvelles fonctionnalités qu’à chaque sortie majeure, ce qui arrive une fois tous les 2, voire 3/4 ans.
Un système de sortie continue pourrait permettre de sortir des fonctionnalités à tout moment, et même des corrections de bugs importantes, sans attendre nécessairement trop longtemps. Cela nécessite bien entendu une organisation différente, une gestion de développement des fonctionnalités différentes (“branches de fonctionnalités” plus strictes notamment), et davantage d’automatisation des sorties. La bonne nouvelle est que l’idée a été plus bien acceptée; la mauvaise étant que ce changement — s’il advient jamais — ne sera probablement pas avant GIMP 3.0. Et c’est pas pour tout de suite (voir plus haut le speech sur attendre plusieurs années par majeure)! Donc au final la discussion est repoussée pour plus tard.
Le problème principal est qu’avant le port complet GTK+3 (pour GIMP 3), avoir un système de sortie continue impliquerait développer tout en double, à la fois pour GTK+ 2 et GTK+ 3. Je pense personnellement que ce n’est pas si dramatique, et que dans beaucoup de cas, puisqu’on ferait les choses petit à petit, le travail supplémentaire ne serait pas si dramatique (bien que je comprenne aussi la réserve de Mitch sur le sujet, notre mainteneur). Mais la plupart n’était pas prêt à s’engager dans un tel système immédiatement. Dans tous les cas, j’espère que nous y arriverons un jour, le plus tôt possible. Je continuerai à promouvoir l’idée. 🙂

Le Fun

Patrick David

Ce n’est pas un nom de projet. Patrick David est un photographe, utilisateur connu dans la communauté GIMP. Cette année, je l’ai vu partout, avec son appareil photo et autres matériels étranges, fait maison, à base d’essoreuse à salade acheté dans le supermarché du coin, de tableaux blancs de l’université, et ainsi de suite. Où qu’il soit, il savait faire profit de la lumière ambiante. C’était très intéressant de rencontrer un tel personnage. Nous sommes allés à une “balade photo” avec lui, la journée précédant les conférences, et Aryeom a aussi assisté à son atelier (j’étais pour ma part à l’atelier xsheet, malheureusement au même moment).

Photo walk with Pat David: everyone searching for the right photo?
Balade photo avec Pat David: mais que regardent-ils tous?

Il n’y a pas à dire, cela donne du baûme au cœur de voir quelqu’un apprécier son art ainsi et être vraiment enthousiaste à le pratiquer. C’est pourquoi il méritait bien son propre paragraphe dans ce compte rendu. 🙂

Musée des Arts Imprimés de Leipzig

Le jour précédant LGM, nous nous sommes également rendus au Musée des Arts Imprimés, et c’était vraiment bien. Je recommande la visite à quiconque passe à Leipzig.

Une police forgée devant nos yeux ébahis durant la visite
Une police forgée devant nos yeux ébahis durant la visite.

Il est à noter que les machines, bien que vieilles, étaient toujours utilisées par les artistes locaux qui souhaitent exprimer leur art par de vieilles techniques d’impression. Dommage que nous ne soyions restés davantage, car Aryeom souhaite s’essayer à la lithographie depuis pas mal de temps maintenant.
Quelqu’un sait-il s’il existe beaucoup d’autres endroits où on peut encore utiliser de vieilles machines d’impression de ce type? Notamment à Paris?

Nuit Cinéma!

La première journée de conférences se termina par une nuit cinéma, occasion pour visionner divers courts métrages sous des licences Libres, dans un cinéma local. Il y avait certains films vraiment sympa, notamment souvent produites dans des contextes scolaires cependant (dont pas mal d’origine française).

J’aimerais bien retrouver la liste des films qui furent diffusés. Malheureusement je ne trouve pas cette liste sur le site web de LGM, et les organisateurs ne répondent pas à mes emails. ;-( Quelqu’un aurait-il cette liste? Si c’est le cas, j’apprécierais qu’on la copie dans les commentaires. 🙂

Vente aux Enchères

Pour aider le projet GIMP, Aryeom a eu cette super idée de peindre Wilber — pas en numérique, mais physiquement, de la peinture acrylique sur canvas — et de vendre le “portrait” aux enchères, pour ensuite donner l’argent au projet GIMP. Bon on n’était pas des mieux organisés, donc on fera cela mieux si on devait tenter à nouveau, mais nous avons tout de même recu une dizaine d’enchères, et c’est finalement un local de Leipzig qui est reparti avec la peinture sous le bras!
Malheureusement on n’a fait aucune bonne photo de la peinture (quand je disais que l’organisation manquait!). Il y a juste cette photo de qualité inégale postée par Michael Schumacher avant la vente.

Wilber Offline, Autumn
Wilber Hors-Ligne, Automne (Acrylic sur canvas)

Note: si vous nous suivez un peu, vous avez pu reconnaître l’inspiration d’une image numérique qu’Aryeom avait précédemment dessinée dans GIMP.

Nourriture

Le meilleur pour la fin! Bien sûr, l’Allemagne, on a bu pas mal de bière, du schnaps, et évidémment mangé quelques saussices. Aussi beaucoup de pommes de terre cuisinées de toutes sortes de manière.
Parmi les meilleurs moments du séjour furent nos dîners à Auerbachs Keller, un restaurant historique, très ancien, où Goethe allait régulièrement, et qu’il a utilisé dans sa fameuse pièce, Faust. Il y a en fait deux restaurants, un petit et cher, et un grand, plus familial, un peu comme une cantine, au prix très raisonnable mais tout aussi extra. Mon conseil? Aller au restau pas cher, ça vaut vraiment la peine. 🙂

Brunch at the GIMP apartments, after the last day of LGM
Brunch aux appartements GIMP, le matin suivant le dernier jour à LGM

Finalement pour terminer ces deux semaines sur une belle note, nous avons trouvé un restaurant où ils servaient du Schweinshaxe, un plat typiquement bavarois. Vous me direz alors que ce n’est pas si local, mais pour une raison inexplicable, Aryeom voulait absolument essayer ce plat dont elle a entendu parler sur le web. Nos potes de l’équipe GIMP se sont donc retroussés les manches et ont finalement réussi à dégoter un restaurant idéal.
Voici donc notre Schweinshaxe animé (celui-là même qu’Aryeom a mangé! Bon je l’ai un peu aidée sur la fin… :p) pour finir en beauté: