- AI Assistant, intégré par défaut aux IDE JetBrains, devient un obstacle pour les validations de sécurité et la gestion de la propriété intellectuelle, au point que certains clients demandent une option de suppression complète
- Les critiques portent moins sur les fonctions d’IA elles-mêmes que sur leur inclusion par défaut et l’impossibilité de les supprimer, avec des préoccupations liées aux politiques d’entreprise, à la sécurité, aux risques juridiques et à la confiance
- Plus de 10 fils ont été ouverts sur YouTrack pour demander un moyen de supprimer, retirer ou séparer AI Assistant, avec PyCharm, IntelliJ IDEA et Rider cités parmi les produits concernés
- JetBrains explique que, même si le plugin est fourni en bundle, les fonctions d’IA sont désactivées par défaut et qu’aucune donnée n’est transmise hors de l’appareil sans le consentement de l’utilisateur
- La suppression d’un plugin fourni en bundle peut poser des problèmes de signature de l’application et de mises à jour ; JetBrains étudie donc une solution permettant de conserver le bundle tout en autorisant une suppression complète
AI Assistant profondément intégré aux IDE
- JetBrains a lancé en décembre 2023 AI Assistant, destiné à aider les programmeurs à écrire du code
- AI Assistant est similaire à GitHub Copilot, mais il est profondément intégré aux IDE, éditeurs de code et autres produits de JetBrains
- Les services fondés sur de grands modèles de langage continuent de susciter des inquiétudes en matière de sécurité, de risques juridiques, de confidentialité et d’éthique
- Google, Microsoft et OpenAI ont décidé d’offrir, sous certaines conditions, une indemnisation afin de rassurer les clients préoccupés par d’éventuelles réclamations juridiques liées à l’IA générative
- Tous les fournisseurs de services d’IA ne peuvent pas faire le même choix : en août 2023, après une modification de ses conditions d’utilisation, Zoom a dû préciser qu’il n’utiliserait pas les discussions et les appels pour entraîner l’IA
Pourquoi les clients demandent la suppression
- Certains clients de JetBrains ne veulent tout simplement pas qu’AI Assistant soit présent dans les applications JetBrains
- La raison la plus directe avancée est qu’il s’agit d’une fonction d’IA incompatible avec les politiques d’entreprise
- Le code du plugin étant profondément intégré, sa suppression devient complexe
- Plus de 10 fils ont été ouverts sur JetBrains YouTrack pour demander un moyen de supprimer, retirer ou séparer le plugin AI Assistant
- Le fil « Provide the possibility to remove a plugin completely from the system » traite du problème de l’intégration du plugin dans les outils de développement JetBrains comme PyCharm, IntelliJ IDEA et Rider
- Des développeurs qualifient le plugin de bloatware, de risque pour la propriété intellectuelle des entreprises, de problème de sécurité, de fonctionnalité agaçante et de rupture de confiance
Les risques vus par les développeurs
- Un utilisateur nommé Rusty Deaton explique que, en raison de la politique de sécurité de son entreprise, il ne peut pas utiliser d’outils intégrant par défaut une implémentation d’IA dans le produit
- Un développeur nommé Marcus Grenängen critique l’intégration par défaut d’une fonctionnalité capable d’envoyer l’intégralité d’une base de code vers une destination inconnue
- Il indique aussi qu’il ne renouvellera pas son abonnement JetBrains
- Il considère cela comme une rupture de confiance irréversible
- Un développeur nommé Alan Burlison estime que l’origine inconnue du code fourni par l’IA crée des problèmes de licences, de propriété intellectuelle et de droit
- Selon lui, le problème le plus grave est que la propriété intellectuelle de l’entreprise de l’utilisateur pourrait être divulguée vers une destination inconnue, potentiellement même à des concurrents directs
Les explications de JetBrains
- Matt Ellis, developer advocate chez JetBrains, indique que même si le plugin AI Assistant est fourni en bundle et que le plugin lui-même est activé, les fonctions d’IA ne sont pas activées par défaut
- JetBrains affirme qu’aucune donnée n’est transmise hors de l’appareil sans le consentement de l’utilisateur
- L’utilisateur doit se connecter
- Il doit accepter la politique de données
- Il doit acheter un abonnement ou lancer une période d’essai
- Les données envoyées au service d’IA ne sont pas utilisées pour l’entraînement
- Il existe aussi des fonctions ML pour le classement et la complétion, fournies via des modèles locaux, sans transmission de données hors de l’appareil
Les contraintes qui compliquent une suppression complète
- JetBrains indique que de nombreux clients sont satisfaits des plugins fournis en bundle
- L’entreprise étudie en parallèle une manière de rendre AI Assistant totalement supprimable tout en le conservant dans le bundle
- La suppression d’un plugin fourni en bundle peut casser la signature de l’application et provoquer des problèmes de mise à jour
- JetBrains estime qu’il est difficile de dire dans quelle mesure les avis opposés à AI Assistant sont représentatifs de l’ensemble de sa clientèle
- L’entreprise dit écouter les différents avis de la communauté et considère que de nombreux particuliers et clients professionnels utilisent aussi AI Assistant
2 commentaires
Je ne l’utilise même pas, mais à chaque mise à jour il est sélectionné automatiquement, donc c’est vraiment agaçant.
Avis de Hacker News
Il fallait descendre jusqu’au milieu de l’article pour voir les vrais détails : le plugin AI Assistant est inclus et activé, mais les fonctions d’IA ne sont pas activées par défaut, et il est indiqué qu’aucune donnée n’est envoyée hors de l’appareil sans consentement.
Pour l’utiliser, il faut se connecter, accepter la politique de données, puis acheter un abonnement ou démarrer un essai ; il est également précisé que les données envoyées au service d’IA ne sont pas utilisées pour l’entraînement.
Beaucoup de commentaires sur HN ne correspondent donc pas à la situation réelle. Ce n’est pas activé par défaut, le code n’est pas collecté pour l’entraînement, et un consentement explicite à la politique est requis avant utilisation.
Au fond, le vrai grief est que le plugin existe par défaut, et cela semble suffire à certaines entreprises pour interdire le produit.
Il y a tellement de suppositions réfutées par une lecture même rapide de l’article que les commentaires HN liés à l’IA deviennent de plus en plus difficiles à lire, à cause de gens qui ne lisent pas l’article et supposent le pire.
Si je paie pour un IDE, c’est justement pour éviter ce genre de vente à la découpe ; si j’ai besoin de CI/CD ou d’un profileur mémoire, je peux les chercher moi-même. Il n’y a pas de raison d’avoir un élément de menu qui ne tourne même pas réellement sur mon ordinateur.
Quand un nouvel plugin mal identifié arrive dans un outil de développement sans grande explication, il est naturel que les gens se méfient. Même Notepad++ a connu une controverse similaire avec une mise à jour bien plus discrète.
Je me souviens avoir vu des notes de mise à jour liées à l’IA lors de la mise à niveau de Rider, mais je pensais qu’il s’agissait d’une expérimentation interne de complétion de code, pas de l’installation de l’essai d’un autre service à 10 dollars par mois.
La plupart ne s’en soucieront pas et ne seront pas affectés, mais « c’est probablement bon » n’est pas un critère acceptable pour tout le monde.
Il n’était pas nécessaire de l’intégrer en bundle, et comme la fonction de suppression était boguée, JetBrains a dû indiquer aux personnes qui ne pouvaient réellement pas l’accepter une méthode bancale consistant à « supprimer ces fichiers du système ».
Rien n’a été réfuté. Le seul fait que le plugin existe suffit pour qu’un service IT mette tout l’IDE sous alerte.
Le fait que JetBrains ait déployé automatiquement le plugin dans l’installation de l’IDE n’a pas été bien perçu, et le fait que le plugin soit réactivé à chaque mise à jour a renforcé la défiance vis-à-vis de la première inquiétude.
Tout le monde aurait été satisfait si l’installation du plugin d’IA avait été proposée pendant l’installation ou la mise à niveau, sans en faire un plugin en bundle, comme IdeaVim.
Il peut être activé par une mauvaise action utilisateur ou par une mise à jour logicielle. Le domaine de l’IA reste flou en matière de risques et de responsabilité, il est donc compréhensible que les entreprises soient inquiètes.
Plus généralement, l’écart entre « absent » et « présent » est beaucoup plus grand que celui entre « présent mais désactivé » et « présent et activé ». Une faille de sécurité qui n’a pas encore été exploitée n’est pas la même chose qu’une faille qui n’existe pas du tout.
Ce que je comprends le moins, c’est que JetBrains n’ait pas réalisé que l’intégration de l’IA rendrait le produit inutilisable dans beaucoup d’entreprises.
Ce n’est pas une question de préférence personnelle : dans un contexte où des entreprises comme Amazon interdisent l’usage de Copilot, l’intégrer si profondément qu’on ne peut même pas le supprimer paraît totalement myope.
La page actuelle a moins de 1 000 visiteurs par mois, ne contient qu’une liste de réponses sur une page, et ses coûts d’exploitation se comptent en quelques centimes.
Les dirigeants veulent mettre de l’IA partout, au point que cela en devient presque contraire à leur devoir fiduciaire. L’idée, c’est que le battage médiatique autour de l’IA/ML a rendu les dirigeants fous.
Je me demande si ceux qui se plaignent utilisent réellement l’outil dont ils parlent.
La solution de Microsoft semble la meilleure : ils assument la responsabilité du code, mais cette responsabilité a un coût.
Avant, je pensais que JetBrains était proche des développeurs, mais après cette affaire, j’en suis moins sûr.
On semble être entré dans une phase où un produit « meurt s’il n’a pas d’IA », donc les choses risquent d’empirer nettement avant de s’améliorer.
Quand une entreprise annonce qu’elle ajoute « plus d’IA » à son produit, c’est généralement le signe que l’expérience utilisateur va se dégrader ; désormais, cela ne m’intéresse presque plus.
J’utilise et j’apprécie depuis longtemps plusieurs IDE JetBrains, mais cette fonctionnalité est la première qui m’ait paru hostile à l’utilisateur.
Elle arrive de force et occupe un espace précieux à l’écran, alors que tout ce que je veux, c’est la désactiver et ne plus jamais être dérangé.
Dans la dernière version, il me semble qu’on pouvait finalement la désactiver ; j’espère simplement qu’il ne faudra pas recommencer à chaque mise à jour.
Cette fonctionnalité donne l’impression d’une publicité Windows intrusive ou d’un album de U2 imposé, qui n’a pas sa place dans un outil commercial.
C’est réglé plus vite que le temps d’écrire ce commentaire.
Ce plugin peut être désactivé, mais sa seule existence peut suffire à l’équipe juridique pour imposer une interdiction jusqu’à « évaluation » et « validation de conformité ».
Il faut pouvoir le supprimer complètement.
À part ça, il est aussi pénible que JetBrains demande constamment de mettre à jour, lors des mises à jour de l’IDE, même les plugins désactivés. Je ne vois pas pourquoi je devrais mettre à jour quelque chose que je n’utilise pas.
La logique est sans doute que, s’il reste installé, il soit à jour le jour où l’on décide de l’utiliser.
Autoriser le fait de ne pas mettre à jour les plugins en bundle poserait probablement un problème similaire. Il est possible que l’ensemble du paquet, plugins en bundle inclus, soit couvert par une signature unique.
Je ne comprends pas vraiment la colère. Le fait que le plugin soit installé par défaut et visible dans le volet de droite en fait, dans les faits, une publicité, ce qui est négatif, et je comprends l’agacement que cela provoque.
Mais ne peut-on pas le désactiver très facilement, comme les autres plugins ? S’il s’agit d’un service payant, il suffit de ne pas payer.
Cela ressemble à de l’indignation provoquée dans laquelle beaucoup de gens se laissent prendre.
Bien sûr, si l’on découvrait qu’il envoie par défaut des données d’entraînement à la maison mère, je changerais d’avis, mais pour l’instant cela ne semble pas être le cas.
Plus important encore, si le service juridique dit « non », répondre « il est désactivé » n’est pas une réponse qu’on peut assumer en mettant son emploi en jeu.
À une époque où des gestionnaires de paquets open source et des outils de build intègrent eux aussi une télémétrie intrusive activée par défaut, il est raisonnable de supposer que ce plugin envoie, ou enverra un jour, des données. Jusqu’à preuve du contraire.
En lisant les points de vue des autres, on peut comprendre pourquoi ils sont en colère. Si, malgré cela, on ne comprend toujours pas, c’est peut-être qu’on ne sait pas vraiment comment comprendre les autres ; il faudrait alors prendre un peu de recul là-dessus.
L’explication d’Ellis revient à dire : c’est un « plugIN », pas un « plugOUT ».
Si on ne peut pas le supprimer facilement, je ne comprends pas pourquoi il est distribué comme un plugin dès le départ. C’est complètement délirant.
Si l’on modifie le contenu du « dossier »
.app, la chaîne de vérification est rompue. Nous l’avons appris douloureusement en essayant nous aussi d’implémenter un plugin.Je suis surpris qu’on ne puisse pas le désactiver. Ajouter une fonctionnalité, pourquoi pas, mais ne faudrait-il pas la laisser optionnelle, observer son adoption réelle, puis seulement ensuite en faire le comportement par défaut ?
Qu’une entreprise d’outils de développement agisse ainsi à rebours du bon sens ne donne pas du tout une impression centrée utilisateur.
En tant qu’utilisateur des outils JetBrains depuis plusieurs années, mon conseil serait qu’ils commencent à mieux écouter les retours clients. Ils donnent l’image d’un monarque d’entreprise qui remet aux développeurs des outils de développement tout faits, et ce n’est pas bon pour leur image.
Le fil YouTrack lié dans l’article dit la même chose. En revanche, il n’est pas possible de supprimer complètement le plugin de la machine.
Selon la réponse officielle de JetBrains, le plugin AI Assistant est activé par défaut et ses menus et fenêtres d’outils apparaissent dans l’UI, mais les fonctionnalités d’AI Assistant ne peuvent être utilisées que si l’utilisateur donne explicitement son accord et utilise un essai ou un abonnement, que le projet ne l’a pas désactivé et, dans le cas d’une licence IDE commerciale, que l’organisation l’a activé au niveau global.
Cela ne veut pas dire que c’est parfait, et cela peut encore poser problème dans des environnements comme des machines professionnelles.
https://imgur.com/ETyFlCZ
https://youtrack.jetbrains.com/issue/LLM-1760/Can-not-remove...
https://youtrack.jetbrains.com/issue/LLM-1760/Can-not-remove...
Cela dit, je ne comprends pas vraiment la polémique. Si JetBrains voulait vraiment extraire du code à des fins d’entraînement ou pour d’autres intentions malveillantes, il pourrait le faire indépendamment du plugin AI Assistant.
L’IDE est closed source et communique en permanence avec les serveurs de JetBrains via un canal chiffré ; s’ils le voulaient, ce serait difficile à détecter.
Si cela était découvert, ce serait la fin de JetBrains, mais en théorie, ce serait possible même si AI Assistant n’était pas activé ou installé.
https://www.jetbrains.com/help/idea/disable-ai-assistant.htm...
La qualité est tellement mauvaise que c’en est décevant. C’est le pire assistant IA que j’aie essayé jusqu’ici, et il était déjà médiocre même comparé à Copilot première génération.
S’ils en avaient fait une installation optionnelle et s’étaient concentrés sur la qualité au lieu de dégrader le produit, j’aurais volontiers payé. Là, j’en viens même à me demander si je dois renouveler mon abonnement JetBrains que je conserve depuis plus de dix ans.
Je paie JetBrains Ultimate chaque année, et j’envisage de boycotter
Ce n’est pas à cause de cette IA, mais parce qu’à chaque mise à jour, IntelliJ IDEA semble casser de plus en plus la prise en charge de WSL + Gradle
Ces dernières années, j’ai ouvert plus de 15 tickets sur YouTrack, et près de la moitié concernaient Gradle + WSL
Avec la dernière mise à jour d’IDEA, c’était complètement cassé, au point que je ne pouvais même plus charger le projet sur lequel je travaillais
J’en ai vraiment assez d’un tel manque d’assurance qualité et de tests sur ce workflow de base
Elle masque beaucoup de boutons tant qu’on ne survole pas certaines zones avec la souris. Pour réduire le terminal, il faut déplacer le pointeur vers la barre d’outils du terminal, et ce n’est qu’alors que le bouton de réduction apparaît
Autrement dit, on ne peut pas viser directement le bouton de réduction : il faut attendre que le bouton apparaisse progressivement, puis déplacer à nouveau le curseur, en deux étapes
Le bouton
xde fermeture des onglets est lui aussi masqué tant qu’on ne survole pas l’onglet ; du coup, au moment où l’on clique pour sélectionner un onglet, lexapparaît sous le curseur et il arrive qu’on ferme l’ongletOn dirait qu’ils veulent le faire ressembler à VSCode, mais pour moi c’est simplement une mauvaise expérience utilisateur. Plus VSCode s’améliore, moins j’ai de raisons de continuer à payer pour la suite JetBrains
Beaucoup de choses faites par Microsoft entraînent des contournements peu élégants
Il suffit d’utiliser Maven. Ça marche toujours, partout
La qualité n’est pas prioritaire, donc si vous n’avez pas de chance, votre workflow se casse à répétition, et les corrections arrivent dans des versions majeures accompagnées de nouveaux bugs, qu’il faut encore payer
J’ai fini par abandonner et par encaisser la perte de productivité liée au fait de laisser tomber le produit
Ça ressemble à une décision prise par une entreprise paniquée à l’idée de rater la dernière tendance
Un exemple comparable serait Microsoft dans les années 90 et 2000, quand l’entreprise intégrait son propre navigateur et en imposait presque l’usage. Une logique du type : « il faut qu’on contrôle ça ! »
Il y a ça, mais aussi cette horrible nouvelle UI conçue comme si tout le monde utilisait un écran 13 pouces ou une tablette, qui transforme l’IDE en VS Code
Ils essaient d’imiter un produit gratuit pour lui faire concurrence, tout en continuant à facturer plus de 500 dollars par an
Ils ont dépensé des millions en développeurs IA et en entraînement de modèles, et ce serait gênant si la plupart des utilisateurs l’ignoraient
En empêchant de le désactiver, ils peuvent montrer combien ils ont d’« utilisateurs actifs » et à quel point les développeurs ont obtenu des résultats formidables
Ce qui m’inquiète davantage, c’est qu’on nous impose une nouvelle UI dont on ne veut pas
Si j’avais voulu quelque chose de minimaliste, j’aurais utilisé VSCode. Ils risquent de rendre de plus en plus difficile le maintien d’une vraie apparence d’IDE, avec plusieurs fenêtres et consoles, quand ils prendront conscience du coût de prise en charge de plusieurs UI
J’espère qu’ils comprennent qu’en imposant de force la nouvelle UI, ils perdraient une part importante de leur base d’utilisateurs
Si l’on devait n’en choisir qu’un, je pense que le développeur moyen préférerait Eclipse à la nouvelle UI d’IntelliJ. Elle est jolie, mais tellement pénible à utiliser
Ils ont pris une interface déjà peu contrastée, difficile à lire au point de poser des problèmes d’accessibilité, et ont aggravé au centuple ces défauts de conception
Le seul bon point, c’est que cela illustre de façon convaincante le principe selon lequel le design concerne surtout la façon dont ça fonctionne, pas seulement l’apparence