2 puntos por GN⁺ 2024-02-04 | 2 comentarios | Compartir por WhatsApp
  • AI Assistant, incluido de fábrica en los IDE de JetBrains, se convirtió en un obstáculo para aprobaciones de seguridad y gestión de propiedad intelectual, por lo que algunos clientes exigen una opción para eliminarlo por completo
  • La reacción se centra más en que esté incluido por defecto y no pueda eliminarse que en las funciones de IA en sí, y se mencionan en conjunto políticas corporativas, seguridad, riesgos legales y problemas de confianza
  • En YouTrack se han publicado más de 10 hilos que piden una forma de borrar, eliminar o separar AI Assistant, y se mencionan PyCharm, IntelliJ IDEA y Rider como productos afectados
  • JetBrains explica que, aunque el plugin venga incluido, las funciones de IA están desactivadas por defecto y no se envían datos fuera del dispositivo sin consentimiento del usuario
  • Eliminar plugins incluidos puede generar problemas de firma de la aplicación y de actualizaciones, por lo que JetBrains está evaluando una forma de mantener el paquete incluido y, aun así, permitir su eliminación completa

AI Assistant, profundamente integrado en el IDE

  • En diciembre de 2023, JetBrains presentó AI Assistant, pensado para ayudar a los programadores a escribir código
  • AI Assistant es similar a GitHub Copilot, pero está profundamente integrado en los IDE, editores de código y otros productos de JetBrains
  • En los servicios basados en modelos de lenguaje grandes siguen existiendo preocupaciones sobre seguridad, riesgos legales, privacidad y cuestiones éticas
  • Google, Microsoft y OpenAI decidieron ofrecer indemnización bajo ciertas condiciones para tranquilizar a los clientes preocupados por reclamos legales relacionados con la IA generativa
  • No todos los proveedores de servicios de IA pueden tomar la misma decisión, y Zoom tuvo que aclarar en agosto de 2023, tras un cambio en sus términos de servicio, que no usaría chats ni llamadas para entrenar IA

Por qué los clientes exigen poder eliminarlo

  • Algunos clientes de JetBrains no quieren que AI Assistant exista dentro de las aplicaciones de JetBrains
    • La razón más directa que se menciona es que se trata de una función de IA incompatible con políticas corporativas
    • Como el código del plugin está profundamente integrado, eliminarlo se vuelve complejo
  • En YouTrack de JetBrains se han publicado más de 10 hilos que piden una forma de borrar, eliminar o separar el plugin AI Assistant
  • El hilo “Provide the possibility to remove a plugin completely from the system” aborda el problema de que el plugin venga integrado en herramientas de desarrollo de JetBrains como PyCharm, IntelliJ IDEA y Rider
  • Los desarrolladores califican al plugin como bloatware, un riesgo para la propiedad intelectual corporativa, un problema de seguridad, una función molesta y una violación de confianza

Los riesgos según los desarrolladores

  • Un usuario llamado Rusty Deaton afirmó que, por la política de seguridad de su empresa, no puede usar herramientas que incluyan una implementación de IA predeterminada como parte del producto
  • Un desarrollador llamado Marcus Grenängen criticó que no debería incluirse por defecto una función que podría enviar toda la base de código a un destino desconocido
    • También dijo que no renovaría su suscripción a JetBrains
    • Lo considera una violación de confianza irreversible
  • Un desarrollador llamado Alan Burlison considera que no poder saber el origen del código proporcionado por la IA genera problemas de licencias, propiedad intelectual y legales
    • Señaló que el problema mayor es que la propiedad intelectual de la empresa del usuario podría filtrarse a un destino desconocido, potencialmente incluso a competidores directos

La explicación de JetBrains

  • Matt Ellis, developer advocate de JetBrains, afirmó que aunque el plugin AI Assistant venga incluido y el plugin en sí esté habilitado, las funciones de IA no están habilitadas por defecto
  • La postura de la empresa es que no se envían datos fuera del dispositivo sin consentimiento del usuario
    • El usuario debe iniciar sesión
    • Debe aceptar la política de datos
    • Debe comprar una suscripción o iniciar una prueba
  • Los datos enviados al servicio de IA no se usan para entrenamiento
  • También hay soporte de ML para ranking y autocompletado, ofrecido mediante modelos en el dispositivo, por lo que los datos no se envían fuera del equipo

Restricciones que dificultan la eliminación completa

  • JetBrains afirma que también hay muchos clientes satisfechos con los plugins incluidos
  • Al mismo tiempo, está evaluando cómo hacer que AI Assistant pueda seguir incluido y aun así eliminarse por completo
  • Si se eliminan plugins incluidos, puede romperse la firma de la aplicación y aparecer problemas con las actualizaciones
  • JetBrains sostiene que le resulta difícil afirmar hasta qué punto las opiniones contrarias a AI Assistant representan a toda su base de clientes
  • La empresa dice que escucha varias opiniones de la comunidad y considera que también hay muchos clientes individuales y corporativos que usan AI Assistant

2 comentarios

 
ndrgrd 2024-02-04

Ni siquiera uso IA, pero me molestaba que se seleccionara automáticamente cada vez que actualizaba.

 
GN⁺ 2024-02-04
Opiniones de Hacker News
  • Había que bajar hasta la mitad del artículo para ver los detalles reales: el plugin AI Assistant viene incluido y activado, pero por defecto las funciones de IA no están encendidas y, según dicen, no se envían datos fuera del dispositivo sin consentimiento.
    Para usarlo hay que iniciar sesión, aceptar la política de datos y luego comprar una suscripción o iniciar una prueba; también se indica que los datos enviados al servicio de IA no se usan para entrenamiento.
    Por eso muchos comentarios en HN no coinciden con la situación real. No está activado por defecto, el código no se recopila para entrenamiento y antes de usarlo se requiere aceptar explícitamente la política.
    Al final, la queja real es que el plugin exista por defecto, y al parecer eso por sí solo ya es motivo para que algunas empresas prohíban el producto.
    Hay demasiadas suposiciones que se refutan con solo leer rápido el artículo, así que los comentarios de HN sobre IA se vuelven cada vez más difíciles de leer por gente que no lee el texto y asume lo peor.

    • Lo más molesto es que en un producto por el que ya pago una suscripción hayan metido un plugin predeterminado que empuja hacia otra suscripción.
      La razón por la que pagué por el IDE era evitar este tipo de venta por partes; si necesito algo como CI/CD o un profiler de memoria, puedo buscarlo por mi cuenta. No hace falta que haya un elemento de menú que ni siquiera se ejecuta realmente en mi computadora.
      Es natural que la gente desconfíe cuando aparece en una herramienta de desarrollo un plugin nuevo de origen poco claro y sin mucha explicación. Incluso en Notepad++ hubo una polémica similar con una actualización mucho más discreta.
      Recuerdo haber visto notas de actualización relacionadas con IA al actualizar Rider, pero pensé que se trataba de algún experimento interno de completado de código, no que se estuviera instalando una prueba de otro servicio de 10 dólares al mes.
    • Aunque digan que leer rápido el artículo lo refuta, hay gente que, por requisitos de seguridad, no puede darse el lujo de confiar en que eso nunca ocurra de forma absolutamente perfecta.
      A la mayoría no le importará y no tendrá impacto, pero “probablemente está bien” no es un estándar aceptable para todos.
      No hacía falta incluirlo en el paquete, y como la función de desinstalación tenía un bug, JetBrains tuvo que indicarles a quienes realmente no podían aceptarlo un método torpe: “borren estos archivos del sistema”.
    • ¿Eso significa que se puede creer lo que dice una empresa?
      No se ha refutado nada. El simple hecho de que el plugin exista basta para que un departamento de TI ponga a todo el IDE bajo advertencia.
      Que JetBrains haya distribuido automáticamente el plugin dentro del instalador del IDE tampoco se recibió bien, y que el plugin volviera a activarse con cada actualización aumentó la desconfianza respecto de la primera preocupación.
    • Este plugin es un plugin incluido, así que no se puede eliminar. Incluso entre los plugins ampliamente usados y soportados por JetBrains hay ejemplos, como IdeaVim, que no se incluyen de esa forma.
      Si durante la instalación o actualización hubieran sugerido instalar el plugin de IA, pero sin convertirlo en un plugin incluido como IdeaVim, todos habrían quedado conformes.
    • Desde el punto de vista de una empresa, “instalado/no instalado” es fácil de manejar con políticas o restricciones de TI, pero “instalado pero desactivado/activado” es difícil.
      Porque puede activarse por una acción errónea del usuario o por una actualización de software. El área de IA sigue siendo poco clara en cuanto a riesgos y responsabilidades, así que se entiende que a las empresas les inquiete.
      Más en general, la distancia entre “no está” y “está” es mucho mayor que entre “está pero desactivado” y “está y activado”. Con las vulnerabilidades de seguridad tampoco es lo mismo que todavía no se exploten a que directamente no existan.
  • Lo que más cuesta entender es que JetBrains no se haya dado cuenta de que la integración de IA hace que muchas empresas no puedan usar el producto.
    No es una cuestión de preferencia personal: en una situación en la que empresas como Amazon prohíben el uso de Copilot, integrarlo tan profundamente que ni siquiera se pueda eliminar parece totalmente miope.

    • Antes de Año Nuevo, algunos ejecutivos dijeron que querían una interfaz tipo ChatGPT que respondiera preguntas relacionadas con el servicio.
      La página actual tiene menos de 1.000 visitas mensuales, solo muestra una lista de respuestas en una página y sus costos operativos son de apenas unos centavos.
      Los ejecutivos quieren meter IA en todas partes hasta un punto que roza el incumplimiento de su deber fiduciario. El punto es que el hype de IA/ML volvió locos a los ejecutivos.
    • ¿No es justamente por eso que en account.jetbrains.com existe un interruptor de bloqueo para toda la empresa, donde el administrador de la organización debe habilitar explícitamente las funciones de IA?
      No sé si quienes se quejan siquiera usan realmente la herramienta.
    • Al menos sería un problema si usan el código del usuario para entrenar, o si usan código de origen poco claro.
      La solución de Microsoft parece la mejor: asumir responsabilidad por el código. Pero esa responsabilidad tiene un costo.
    • Sorprende que no hayan tenido la visión para analizar seriamente si esta era una buena decisión.
      Antes pensaba que JetBrains era amigable con los desarrolladores, pero después de esto tengo menos certeza.
    • El fervor mesiánico que han estado emitiendo los defensores de la IA en los últimos meses está cegando incluso a personas que antes habría considerado razonables.
      Parece que ya entramos en la etapa de “si el producto no tiene IA, muere”, así que es muy probable que las cosas empeoren mucho antes de mejorar.
      Cuando una empresa dice que va a meter “más IA” en su producto, normalmente es señal de que la experiencia de usuario va a empeorar, así que ya casi me quita el interés.
  • He usado y disfrutado varios IDE de JetBrains durante mucho tiempo, pero esta función fue la primera que me pareció hostil hacia el usuario.
    Entra por la fuerza y ocupa espacio valioso en pantalla, cuando lo único que quiero es desactivarla y que no vuelva a molestarme.
    En la versión más reciente parece que finalmente se podía apagar, y espero que no sea algo que haya que volver a desactivar con cada actualización.
    Esta función se sintió como esos anuncios intrusivos de Windows o como un álbum de U2 no deseado, algo que no tiene lugar en una herramienta comercial.

    • Basta con hacer clic derecho y ocultarlo.
      Se resuelve más rápido de lo que toma escribir este comentario.
  • Este plugin se puede desactivar, pero su sola existencia puede hacer que el equipo legal imponga una prohibición hasta que haya “evaluación” y “aprobación de cumplimiento”.
    Debería poder eliminarse por completo.
    Aparte, también molesta que JetBrains siga pidiendo actualizar incluso los plugins desactivados al actualizar el IDE. No entiendo por qué tendría que actualizar algo que no uso.

    • Aunque ahora esté desactivado, quizá la intención sea que, si de verdad no lo quieres, lo elimines. Claro que el plugin de IA no se puede eliminar.
      La lógica probablemente sea mantenerlo actualizado por si más adelante decides usarlo.
    • El artículo dice que eliminar plugins incluidos puede romper la firma de código.
      Permitir que no se actualicen los plugins incluidos probablemente tendría un problema similar. Es posible que usen una sola firma para todo el paquete, incluidos los plugins integrados.
  • No termino de entender el enojo. Que el plugin venga instalado por defecto y se vea en la bandeja derecha es algo negativo, porque en la práctica es publicidad, y entiendo esa molestia.
    Aun así, ¿no se puede desactivar muy fácilmente como cualquier otro plugin? Si es un servicio de pago, simplemente no lo pagas.
    Me parece una indignación provocada en la que mucha gente cae.
    Claro que si se descubre que por defecto envía datos de entrenamiento a casa, yo también cambiaría de opinión, pero por ahora no parece ser el caso.

    • Si la publicidad de un servicio de pago que no quieres se mete dentro de un producto por el que pagaste como publicidad que se muestra constantemente, eso por sí solo ya es motivo suficiente para enojarse.
      Más importante aún: si el equipo legal dice “no se puede”, responder “está desactivado” no es una respuesta por la que valga la pena arriesgar el empleo.
      En una época en la que incluso los gestores de paquetes open source y las herramientas de build traen telemetría invasiva activada por defecto, es razonable asumir que este plugin también envía datos ahora o los enviará algún día. Hasta que se demuestre lo contrario, esa es la postura.
    • Algunas políticas de empresa prohíben la mera existencia de ese tipo de plugins.
    • Decir que no lo entiendes normalmente suena a que no leíste los comentarios de arriba y abajo.
      Si lees las perspectivas de otras personas, podrás entender por qué están enojadas. Si aun así no lo entiendes, quizá no sepas cómo entender a los demás, así que convendría reflexionar un poco sobre eso.
  • La explicación de Ellis al final suena a “es un plugIN, no un plugOUT”.
    Si no se puede quitar fácilmente, no entiendo por qué lo distribuyen como plugin en primer lugar. Es una locura total.

    • Probablemente sea porque hoy en día los bundles de macOS reciben la notarización de Apple.
      Si cambias el contenido de la “carpeta” .app, se rompe la cadena de verificación. Nosotros aprendimos eso dolorosamente al intentar implementar un plugin.
  • Me sorprende que no se pueda desactivar. Está bien agregar la función, pero ¿no tendría más sentido dejarla como opcional, ver si la gente realmente la adopta y luego convertirla en valor predeterminado?
    Que una empresa de herramientas de desarrollo actúe tan en contra del sentido común no se ve nada centrado en el usuario.
    Como alguien que ha usado herramientas de JetBrains durante años, mi consejo sería que empiecen a escuchar mejor el feedback de sus clientes. Parecen un monarca corporativo que entrega herramientas de desarrollo terminadas a los desarrolladores, y eso tampoco le hace bien a la imagen de la empresa.

    • Este plugin sí se puede desactivar. De hecho, lo uso desactivado.
      El hilo de YouTrack enlazado en el artículo dice lo mismo. Lo que no se puede hacer es eliminar por completo el plugin del dispositivo.
      Según la respuesta oficial de JetBrains, el plugin AI Assistant viene activado por defecto y muestra menús y ventanas de herramientas en la interfaz, pero las funciones de AI Assistant solo se pueden usar si el usuario da su consentimiento explícito y usa una prueba o suscripción, si no está desactivado en el proyecto y, en el caso de licencias comerciales del IDE, si está habilitado a nivel de la organización.
      Eso no significa que sea perfecto, y en entornos como equipos de trabajo aún puede ser un problema.
      https://imgur.com/ETyFlCZ
      https://youtrack.jetbrains.com/issue/LLM-1760/Can-not-remove...
      https://youtrack.jetbrains.com/issue/LLM-1760/Can-not-remove...
    • ¿No se supone que algo llamado plugin también debería poder sacarse fácilmente?
      Aun así, no termino de entender la polémica. Si JetBrains realmente quisiera llevarse el código para entrenar modelos o con otros fines maliciosos, podría hacerlo independientemente del plugin AI Assistant.
      El IDE es de código cerrado y se comunica constantemente con los servidores de JetBrains mediante canales cifrados, así que si se lo propusieran sería difícil de detectar.
      Si se descubriera, JetBrains estaría acabado, pero en teoría sería posible aunque AI Assistant no estuviera activado ni instalado.
    • Se puede desactivar por completo. En cuanto lo vi por primera vez, lo apagué.
      https://www.jetbrains.com/help/idea/disable-ai-assistant.htm...
    • Parece una captura de ingresos descarada. Es otra fuente de ingresos por suscripción, y claramente metieron a las apuradas una solución a medio cocinar para competir contra Copilot y ChatGPT.
      La calidad es tan mala que da pena. Es el peor asistente de IA que he probado hasta ahora, e incluso comparado con Copilot de primera generación se queda corto.
      Si lo hubieran hecho de instalación opcional y se hubieran concentrado en la calidad en vez de empeorar el producto, con gusto habría pagado. Ahora hasta me hace dudar si debería renovar mi suscripción de JetBrains, que mantuve por más de 10 años.
  • Cada año pago JetBrains Ultimate y estoy considerando boicotearlo.
    No por esta IA, sino porque parece que IntelliJ IDEA rompe cada vez más el soporte de WSL + Gradle con cada actualización.
    En los últimos años abrí más de 15 issues en YouTrack, y casi la mitad estaban relacionados con Gradle + WSL.
    En la última actualización de IDEA se rompió por completo, al punto de que ni siquiera podía cargar el proyecto en el que estaba trabajando.
    Estoy completamente harto de que falten tanto control de calidad y pruebas para este flujo de trabajo básico.

    • Yo también estoy casi en ese punto. Sobre todo por la nueva UI.
      Oculta muchos botones hasta que pasas el mouse por encima de ciertas zonas. Para minimizar la terminal, tienes que mover el puntero a la barra de herramientas de la terminal y recién entonces aparece el botón de minimizar.
      Es decir, no puedes apuntar directamente al botón de minimizar: se vuelve un proceso de dos pasos en el que esperas a que el botón aparezca gradualmente y luego vuelves a mover el cursor.
      El botón x para cerrar pestañas también queda oculto hasta que pasas el mouse sobre la pestaña, así que a veces, justo cuando haces clic para seleccionar una pestaña, aparece una x debajo del cursor y terminas cerrándola.
      Parece que quieren que se vea como VSCode, pero para mí es simplemente una mala experiencia de usuario. A medida que VSCode mejora, cada vez tengo menos razones para seguir pagando por la suite de JetBrains.
    • Para ser justos, WSL en sí es un entorno bastante maldito.
      Muchas de las cosas que ha hecho Microsoft generan soluciones alternativas poco agradables.
    • Gradle se rompe solo todos los meses, incluso sin ayuda de JetBrains.
      Simplemente usa Maven. Funciona siempre y en todas partes.
    • La experiencia de cliente de JetBrains siempre fue así.
      Como no priorizan la calidad, si tienes mala suerte tu flujo de trabajo se rompe repetidamente, y las correcciones llegan en releases mayores con nuevos bugs incluidos, por los que además tienes que volver a pagar.
      Al final me rendí y asumí la pérdida de productividad que implicaba abandonar el producto.
  • Parece una decisión tomada por una empresa en pánico por quedarse atrás de la última moda.
    Un ejemplo similar fue Microsoft en los 90 y los 2000, cuando incluía su propio navegador y prácticamente obligaba a usarlo. Era la actitud de “¡esto tenemos que controlarlo nosotros!”.

    • Lo que JetBrains está haciendo últimamente es demasiado raro.
      Esto, y también la horrible nueva UI diseñada como si solo pensaran en pantallas de 13 pulgadas o tablets, convirtiendo el IDE en algo parecido a VS Code.
      Están tratando de imitar a un producto gratuito para competir con él, pero aun así quieren cobrar más de 500 dólares al año.
    • Más bien parece que obligan a usarlo para no tener que admitir que fracasó.
      Gastaron millones de dólares en desarrolladores de IA y entrenamiento de modelos, y sería un problema que la mayoría de los usuarios lo ignorara.
      Si impiden desactivarlo, pueden mostrar cuántos “usuarios activos” tienen y qué logros tan impresionantes consiguieron sus desarrolladores.
  • Me preocupa más que nos impongan una nueva UI que no queremos.
    Si hubiera querido algo minimalista, habría usado VSCode. Es probable que cada vez hagan más difícil conservar el aspecto de un IDE real, con varias ventanas y consolas, porque terminarán dándose cuenta del costo de mantener varias interfaces.

    • La nueva UI se puede desactivar, y no parece que eso vaya a cambiar.
      Espero que entiendan que, si fuerzan la nueva UI, perderán una parte considerable de su base de usuarios.
      Si hubiera que elegir solo una de las dos, creo que el desarrollador promedio elegiría Eclipse antes que la nueva UI de IntelliJ. Se ve bonita, pero es demasiado dolorosa de usar.
      Toman una interfaz que ya tenía tan poco contraste y era tan difícil de entender que rozaba problemas de accesibilidad, y empeoran esas malas decisiones de diseño cien veces más.
      Aunque tiene algo bueno: demuestra de forma bastante convincente el principio de que el diseño no se trata principalmente de la apariencia, sino de cómo funciona.