301 private links
Consumers must be fed.
Je trouve cet article (en anglais, mais non technique) concernant le développement de logiciels libres très intéressant, surtout sachant que pour beaucoup de couches dont la majorité des programmes dépendent, il s’agit d’un “unpaid hobby project”. Cet article pourrait correspondre à de nombreux domaines de notre société aussi (éducation, santé, …).
L’un des plus importants problèmes vient de toutes ces géantes entreprises qui gagnent un fric fou sans payer leurs parts justes.
EDIT : rajout de liens pour contexte :
- “FAQ on the xz-utils backdoor (CVE-2024-3094)” par Sam James (en anglais) https://gist.github.com/thesamesam/223949d5a074ebc3dce9ee78baad9e27
- “XZ utils backdoor” sur Wikipedia (en anglais) https://en.wikipedia.org/wiki/XZ_utils_backdoor
Pouvoir râler sur un outil, sans rien y piger, sans vouloir apprendre, et blâmer les autres qui l’ont mis en place, juste parce que™
Et donc, taper sur les plus jeunes, sans contrepartie.
Et le tout, en niant ce qui s’est réellement passé, en plus d’admettre de plus gros problèmes, sans être inquiété par les conséquences, juste parce que™
Un exemple :
Un vendredi en journée mon collègue me remonte un « problème » qu’il a dans sa pipeline, lancée à partir d’un commit créé par une autre personne plus ou moins du même age (hors de notre équipe), pour corriger un bug d’intégration, ou je-ne-sais-quoi.
Je regarde, je vois que c’est un linter qui a mis le job comme non valide ; un linter, c’est un outil d’analyse statique de code, mais ça peut aussi ne s’occuper que du formatage du code. Ce qui est le cas ici.
Je lui réponds et explique par messagerie instantanée, mais pas de réponse.
Le jeudi suivant il revient avec le même problème, le même commit, mais dans une autre pipeline, et là visiblement un peu plus énervé (car oui, quand on n’utilise pas son cerveau, on s’énerve très vite, au lieu de l’utiliser)
je (re)commence à lui expliquer par écrit, il ne pige toujours pas (ou semble-t-il "ne veut pas"), on passe en vocal, et là lui me sort « il faut désactiver ce linter ou le passer en “allow to fail” » (je simplifie).
Je lui dis non, encore, tout en expliquant ce qu’il se passera si on le fait : si on met juste en warning (allow fail) et qu’on intègre ce commit dans la branche principale (“master”), tout le monde aura ce warning, et les rares qui regarderont et verront, agacés, que ce n’est pas leur bug ne regarderont plus ensuite, et d’autres bugs s’ajouteront. En bref, c’est comme s’il n’y avait plus de linters.
Quelques jours plus tard j’aborde le sujet avec l’équipe, car il avait écrit depuis un courriel à juste deux personnes, au lieu de toute l’équipe, pour faire ce qu’il souhaite. On décide de monter une réunion pour en parler avec lui un matin, moi je voulais faire de la pédagogie, pour aussi aider la personne à l’origine du commit.
Bref, rebelote, on lui explique, encore une fois il refuse, car il nous sort son histoire de "on ne doit pas être bloqué par « deux espaces » si on doit intégrer un vendredi à 21h"
Déjà on lui dit que s’il doit intégrer un vendredi à 21h, c’est qu’il y a un grave souci. Et en plus ce n’était même pas le cas.
Au final, j’ai dû faire presque ce qu’il voulait : on a découpé le job en deux, qui prend donc deux runners à 20 minutes chacun au lieu de une fois 20 minutes (le téléchargement des outils prend >95 % de ce temps, les linters c’est moins d’une minute à s’exécuter). Et lui il pourra donc lancer des pipelines en bloquant (manuellement) ce job, et ainsi potentiellement intégrer du code non valide, qu’il ne corrigera pas bien sûr vu qu’il aura désactiver le test (et tout simplement qu’il ne voudra pas).
Résultat, j’aimerais être un vieux con de 50 ans
Juste par vengeance.
Juste parce que™