11 lignes de codes qui disparaissent et ce sont des centaines de projets open source qui sont mis à mal

http://korben.info/11-lignes-de-codes-disparaissent-centaines-de-projets-open-source-mis-a-mal.html
Aujourd’hui, je vais vous parler de Azer Koçulu. Azer est un développeur passionné d’open source qui depuis des années publie des modules pour NPM, un gestionnaire de paquets utilisé par les projets Javascript pour installer des dépendances. Et dernièrement, il a sorti un module baptisé Kik, qui vous vous en doutez, a attiré l’attention des avocats…

Alors, je ne vais pas dire que je suis content, mais c’est une question que je me suis souvent posé et à laquelle je n’ai jamais obtenu de réponse nul part.
A utiliser des bibliothèques, ressources partagées, ou n’importe quoi d’autres qui n’est pas hébergé en local, on prend le risque de s’exposer à un défaut de service le jour où cette ressource disparait.

J’ai des projets web où je me suis tjs dis que le jour où ce truc n’est plus dispo, bah le site tombe à l’eau complet…

Ce qui est fou c’est qu’autant de projets se basent sur un seul et même paquet et qu’il n’y ait, semble-t-il, pas d’alternative.
Le système de dépendance est vraiment extra mais c’est tout de même dangereux (une partie de son code est maintenue par quelqu’un d’autre), on en a la preuve maintenant.

Pourquoi node aurais t-il du resister à kilt, pourquoi ne pas renommer sont extension !

Franchement il veux la jouer lutte des classes?

J’ai pas trouvé d’explications plus avancés que la déception fasse à l’absence de soutien qu’il espérait de la communauté.

Dès fois on ne réalise pas à quel point il y a des développeurs qui se cassent les pieds à maintenir du code bénévolement et qu’ils en faut peu pour qu’il pète un cable.
Surement que changer de nom auraient eu pour conséquence de devoir refactoriser tout son code et avec ça son lot de tickets ,de travail, et de mécontents supplémentaires.
Donc il a dut décidé de lâcher ses modules.

Après je spécule, mais je m’occupe de quelques parties de projet libre et dès fois je pense aux ravages que je pourrais faire en un commit et de pourquoi je me casse les pieds tout ça sans jamais recevoir le moindre remerciements.
A sa place , ça m’aurait sacrément fait chier de devoir revoir mon code tout ça pour faire plaisir à une entreprise.
Les dévs de projets libre ont bien plus de pouvoir que beaucoup le pensent et on ne réalisent pas à quel point ils n’en abusent pas.

C’est vrai que c’est un peu bête de ne pas avoir vérifier avant. Mais je ne trouve pas que module et locigiel soit le même domaine d’application même si l’un découle de l’autre. Donc pour reprendre une analogie en dev, on est dans deux espaces de nom différent. Il ne devrait pas y avoir conflit.

A sa place, je n’aurais pas changé de nom non plus. Je pense plus à une question de “je viens pas t’emmerder sur ton terrain pourquoi toi tu viens m’emmerder” qu’à une lutte des classes.

Si un “Darkiron” devenait célèbre et deposer une marque sur ce pseudo, tu accepterais de changer ?

Ou même ton ami le plus cher… Potiron !

L’autre côté de l’histoire est aussi important à connaître.

tu me propose un analogie qui est dans le temps pas valable !

J’avoue que le temps joue contre. D’ailleurs, on le voit dans le lien de Yoann ( que je remercie pour ce lien très intéressant).

Mais selon moi, ça ne devrait pas être le cas. J’ai un site avec un nom non déposer pour un petit projet. Si demain une marque déposait ce nom, elle serait en droit de me demander de changer le nom du site et je trouve ça inadmissible. Autant que le deuxième message d’Azer.

Si l’idée de brevet est exellente, la loi/application est décevante. Cependant, je n’ai pas de meilleure idée. donc je ne crierai pas “à mort les brevet/copyright”.

franchement je comprends pas bien ces dépendances.

leftpad prend 5 sec à coder, (au pire c’est open-source tu copies/colles avec un comm sur la source)

Pourquoi générer un dépendance inutile ? C’est suicidaire :

  • Le jour où la source n’existe plus ou génère une régression…
  • La source devient malveillante (hack, vente)
  • C’est une inclusion de code externe (XSS)

ça me fait penser aux idiots qui incluent une balise script jquery direct vers le site jquery :

  • Si un jour jquery.com se fait hacker, c’est des milliers de sites qui pètent,
  • Quand jquery rame, tout le web rame, (quand ça rame pas, ça fait des latences inutiles)

il suffit de télécharger en local (sur le serveur), tu maitrises les upgrades, peux auditer le code, et n’upgrade que quand nécessaire.

1 « J'aime »

En général les CDN optimisent le chargement des scripts. Réponse plus rapide et si le script est déjà chargé en cache, ça évite à d’autre site de renvoyer le contenu.

Pour autant je suis d’accord avec toi, quand un script prend 3 minutes de plus à copier > coller, pourquoi risquer la sécurité et le maintien de son application …

Je vois moyennement ce qu’on bien pu faire les développeurs dans la galère - NPM installe les scripts dans node_modules, il suffit de rajouter le répertoire avec le projet et ça marche très bien. Perso c’est que je fais - si les gens veulent mettre à jour, libre à eux - mais la base fonctionnera toujours.

Je crois que ce Azer est juste un connard…

Il aurait appelé son package Ubuntu, il aurait eu la même réaction face à une entreprise qui protège également son nom via un trademark ?

[quote=“Pouet12, post:12, topic:3032”]
En général les CDN optimisent le chargement des scripts. Réponse plus rapide et si le script est déjà chargé en cache, ça évite à d’autre site de renvoyer le contenu.[/quote]Il y’aura a moins une requête HTTP qui répond un code 304 Not modified, si le site externe rame c’est autant d’attente inutile. Pour t’en convaincre tu peux lancer n’importe quel site en analyse réseau (F12 dans firefox) avec et sans Adblock : les js de pub en tout genre font ramer de plusieurs secondes !

Il y a peu de projets qui incluent directement left-pad dans leurs dépendances, mais beaucoup de projets se basent sur ReactJS (une lib très populaire crée par Facebook), qui se base sur babel qui se base sur babel-code-frame qui se base sur line-numbers qui se base sur left-pad.
Donc au final, il y a peu de gens assez imprudents pour faire d’une lib aussi petite une dépendance non optionnelle de leurs projets, mais beaucoup de personnes sont touchées.

Je trouve la réactopn d’Azer franchement disproportionnée ! Je suis d’accord qu’il est inadmissible que des marques puissent avoir autant de poids sur les petits créateurs, tu en parles souvent Korben. Mais là, si on ajoute l’article publié sur Medium (merci Yoann), on voit bien qu’il a réagi au quart de tour.

Je suis du même avis.

Quand on lit les echanges publiés sur Medium (en supposants qu’ils sont tous exacts, et non tronqués) alors cet Azer est un gros con. (désolé pour les yeux chastes, mais il n’y a pas d’autre nom)

Le gars de kik lui demande gentiment si il y a moyen qu’il change son nom.
L’autre répond que non, parce qu’il bosse sur un projet qui porte ce nom.

Jusque là tout va bien.
Ensuite le gars de kik lui explique que vu que c’est une marque déposée, ils ne peuvent pas laisser d’autres gens l’utiliser sans rien faire, sinon ils risquent de perdre leur depot de marque.
Et que si il persiste, ils vont devoir faire entrer les avocats dans la danse, et ils lui proposent encore de trouver un arrangement.
Et là Azer les envoie se faire foutre. (à peu pres dans ces termes là)

C’est surement un gros barbu, qui pense que tout le monde doit travailler gratuitement.

Je ne suis pas spécialement d’accord avec les personnes qui mettent en défaut Azer suite à la parution des extraits d’email.

Je dois pas le lire de la même facon que la majorité des gens ici, mais là ou je vois que ça s’emballe c’est plutot quand le mec de chez Kik le menace directement dès le 2eme mail. En gros, il lui dit que de toute facon il n’a pas le choix et que si il ne coopère pas alors on frappera à sa porte et on lui forcera la main.

Alors perso, je comprends tout à fait que l’auteur, Azer, les envoi bouler après même si c’est dit de facon assez rude. De toute façon, est ce qu’il a vraiment le choix dans l’affaire ?

Je veux dire, le dénouement est déjà connu dès que la personne de chez Kik lui dit qu’il n’y a pas d’autres issues donc bon… pour ma part, je comprends que ca irrite la personne.

L’exemple donné dans le dernier mail d’Azer est assez pertinent: et si la société Square vient raler qu’un package existe deja et porte le meme nom ? C’est infini comme problème…