JetBrains forces AI freemium plugin that cannot be completely removed into IDEs
youtrack.jetbrains.com
youtrack.jetbrains.com
In my Emacs + CoPilot setup, suggestions pop up unasked for which I need to change.
-if you disable the plugin, it will be enabled when you restart.
-if you uninstall the plugin, on restart an old version will appear, enabled, in its place, begging for an update.
However given that JetBrains didn't block either uninstall or disable, the most logical explanation is that this is a bug/unintentional. The rollout of this AI plugin has been really poorly done, with it completely failing to function on the first iteration. You couldn't even login or activate.
Hanlon's razor applies. JetBrains has too good of corporate behaviours to be trying to fool people in this case, and the surrounding evidence all points to a bug.
Must be bug or misunderstanding , I disabled it last week and it stayed off, the ticket complains that the plugin can't be wiped but this is not the only plugin that works like that.
AI Assistant
Full Line Code completion
Machine Learning Code completion
Machine Learning in Search Everywhere
I had just been disabling the AI Assistant, which was being re-enabled by one or all of the other three that depended upon it. If I disable all four they do not re-enable.
I was in the beta test for the AI assistant plugin but in my work I only used it 2 or 3 times from curiosity, for me at that time the AI could not help, maybe in future when it can understand the entire project then it would make more sense.
First time for everything. That’s what they used to say about Google.
This is much ado about nothing.
I suspect the root cause is that they want to inflate the numbers of how many people "use" their new service (AI) or language (Kotlin). This way they can just report every single installation of IntelliJ as part of their marketing/sales numbers.
90% of it is chat bots. And in 90% of those places I dont want a chat bot.
Edit: Okay, 30 seconds searching turned up https://arstechnica.com/information-technology/2023/08/ai-po... which features the "Aromatic Water Mix" I assume we're talking about.
Edit2: And yet, replies managed to be even faster than me looking it up myself. Thanks, everyone:)
> One user decided to play around with the chatbot, suggesting it create something with ammonia, bleach, and water. Savey Meal-bot obliged, spitting out a cocktail made with a cup ammonia, a quarter cup of bleach, and two liters of water.
> Mixing bleach and ammonia releases toxic chloroamine gas that can irritate the eyes, throat, and nose, or even cause death in high concentrations.
> The chatbot obviously wasn't aware of that at all. "Are you thirsty?," it asked. "The Aromatic Water Mix is the perfect non-alcoholic beverage to quench your thirst and refresh your senses. It combines the invigorating scents of ammonia, bleach, and water for a truly unique experience!"
https://www.theregister.com/2023/08/11/supermarket_reins_in_...
[edit: In fact, we know how it is implemented, and it does NOT reason - there is no implementation of reasoning, only putting word/concepts/forms together that are plausible. ]
LLMs have a huge role in the future of engineering, whether or not you like it. They present massive productivity boosts. I'm a senior Rust engineer and I've seen my development time nearly cut in half after using LLMs. And we're just getting started.
If JetBrains doesn't start adopting this tech at a feverous pace, they're toast.
This is life or death.
It's not useless, but it has certainly not been a 2x improvement.
If it's "search for code snippets that might do what you want, copy/paste, change and adapt until it mostly works," then, yeah, LLMs are going to be a huge time saver.
If it's "sit there and think about what you need to do, then write and debug it," then LLMs aren't quite a force-multiplier. Honestly, good auto-complete and decent software architecture are probably at least as effective as an LLM when it comes to composing code.
Over-simplifying here, but you get my gist. The latter method still benefits hugely from LLMs when it comes to boilerplate code. And there's still a lot of boilerplate code in programming! Today I was asking ChatGPT if it could scrape info out of HTML, and it autonomously wrote a Python script to do it for me when I asked to work on a larger chunk of data.
I got a 3,000 line change in yesterday without getting bored. All while I'm also juggling a ton of other responsibilities.
Tab, yep that's right. Tab, yep, tab yep. Tab, yep.
This tech makes a huge difference. It even helped write the tests.
I'm not being lazy. I'm a recent convert.
Moreover, two of my colleagues are entirely new to Rust, and the time at which they've both been able to learn not only the language fundamentals but the codebase astounds me. They're of course reading all they can, but this tooling makes for one of the best tutors.
However, I was using it when learning Rust and it was just generating awful inefficient code, but I only discovered that it was inefficient when I read the docs. My manager is in love with LLMs and try to apply them everywhere at work, including providing a summary of the changes in a github PRs. The generated text is many times just plain wrong and so I never read it, and I am scared of people who actually do use it. Someone created a wiki for ocaml filled with a bunch of LLM content, and so much of it contains commands that don't exist or just plain inaccurate information about how OCaml works. I think LLMs seem pretty harmful in these cases and when I read about people using it for learning it horrifies me a bit.
So my fear is that it can enable you to be lazy and not understand what you are doing, and it ends up harming you and everyone around you. However, when you understand what you are doing, it can help you generate boilerplate or save you a lookup.
The biggest impact for me - Trying to use CLI tools without reading a ton of docs/trial and error - Chrome extensions (for simple tasks like content editing/augmenting, it gets you 90% of the way there) - Drawing an app layout and getting back a Flutter project
I personally don't use these but worked with a guy who leaned heavily on LLMs for a group project. He was really good at quickly shitting out boilerplate but couldn't actually explain any of it or understand the spec in the documents
Imo, the consequences of letting people who suck appear to be doing stuff is more severe than a 50% productivity boost for others. I would rather work somewhere that bans using them outright after this experience. There's my n=1 for anyone interested
I just posted an anecdote down thread of how it's empowering our senior engineers.
"We also sign contracts / agreement to do the work. Some of the clauses in those contracts (at least mine) are very strict describing who can have access to the code/data and what level of access and in which region(s). At this moment I am uncertain about it myself which potentially makes me the party that is breaking the terms of the contract. For example, I have no answer to the question "is it possible that some code/data has been seen by government sponsored actors in USA or Russia?" - I have no answer to that."
Having a programmable programming environment with an open source core that's easy to dissect is really what modern editors lack. Also, having a piece that can't be removed or a black box doing who knows what with my code is hard for me to even wrap my head around. To each there own.
I chose Vim and Emacs. Nobody forced me into that. Nobody offered me money for using them. No one ever advertised them to me. I chose them because I am 100% absolutely sure that they can never be sold, acquired, embraced, and extinguished. They’re guaranteed to never have telemetry I can’t control. They will never show ads, useless pop-ups, or annoying banners. They will never have a subscription model or pricing structure. They won’t have a huge fragmentation problem. They will always have free and unlimited support from the community and will never steal or take my data hostage. Now, that is a choice. A deliberate, strategic, long-term survival mode decision.
I'm just too tired of losing my money, time, and effort on things that inevitably at some point will limit me, lock me in, steal my data or store it in a way that's too hard to export and convert into something else.
Not to mention, Emacs is such an incredible glue. It's mind-blowingly amazing. You can make it "talk" to any third-party service or a command-line app.
If you try to do the normal thing and uninstall or disable it, it appears to just reinstall itself or continues with nags.
I'll say nothing on work environments where code cannot be sent anywhere for security and privacy purposes, but this is just openly hostile user behavior from a company that used to do relatively well.
Shame on you JetBrains
For someone who wasn't in their AI trial, then gets this as a subscriber. It sure feels shitty. And Fleet doesn't looks much better. Maybe it is time to look at VSCode again... it's been 6-9 months.
I used to have the same view about idea vs vscode, but the MS provided plugins are solid these days and some of the other ones that are community are equally rock solid.
Things where IntelliJ used to just beat the crap out of code, like managing development environments or debugging are now either on par or better than IntelliJ. I even have it setup for remote debugging and serial debugging embedded devices.
I don't see myself switching to another IDE. $109 is a drop in the bucket. I also use VSCode, mostly for non-code text editing. Relearning and configuring keybinds would be enough to keep me on Jetbrains unless they absolutely screw the pooch.
The issue is simple, though. By making the presence of the plugin mandatory, regardless of its enabled/disabled/active/inactive status, the IDE falls foul of corporate rules against the installation of AI at many organisations.
It doesn't matter how easy it is to deactivate; if an InfoSec rule states no AI software then the whole IDE becomes untouchable.
The response that the installation is mandatory because it is a bundled plugin is both irrelevant and a choice by JetBrains. As long as the AI plugin is installed the IDE is forbidden by those corporate rules. There's no leeway, no persuasion possible, and no mitigations that will satisfy. It really is black and white.
You can't uninstall it, you can only disable it. That's because it's a built in plugin, those can't be disabled without breaking incremental upgrades (which personally I don't use anyway).
And like many others here, my corp explicitly forbids ANY use of ANY 3rd party LLM technologies at work. It's a disciplinary matter. So JB forcing something on people that means they could potentially lose their jobs for using IntelliJ is just monumentally stupid.
There is a workaround which is to manually delete the plugin, see https://youtrack.jetbrains.com/issue/LLM-1760/Can-not-remove... But as above, that breaks incremental upgrades.
> This is excess hubris from a Product Manager who decided it was a good idea to force a plugin on users. This is hostile behaviour. I bet the conversation went like this: "Yeah, they'll learn to love it; it's soooo great what we have to offer with this cutting-edge technology!"
I really do hope they reconsider this Product choice.
> I reckon they need to recoup the investment of running AI servers; I know it's crazy expensive, but JetBrains, this is not the way.
I bet because of the investor pressure, they had no choice but to jump on the AI bandwagon this way. Between the sword and the wall, CoPilot is going to eat their bacon.
JetBrains has no investors. They aren't a VC funded company.
They are providing an AI plugin because they know the majority of programmers today are using AI assistants when programming. So it probably a good idea to provide one with their IDEs.
For me, I pay Jetbrains every year because I want a fully local IDE. I absolutely do NOT want any kind of cloud integration because that means my workflow becomes dependent on Jetbrains or whatever third party is powering the integration. At that point, all of the value of Jetbrains is gone, at least for me, and I could use any other editor. VSCode is much easier to use with dev containers based on my experience.
The other thing that's frustrating is the willingness to ship code off to some third party server / service. Again, I'm paying to NOT have that.
Personally, I don't think Jetbrains will hold out much longer and this is a sign of that. If the people making these decisions have enough power (internally) to put a cloud connected AI assistant in my face, I think it's only a matter of time until they become infested with service based monetization schemes that turn their products into the same junk we're seeing from everyone else in the industry.
Jetbrains needs to re-evaluate what their customers are paying for because they seem to be misguided.
I see some people singing the praises of AI which hasn't been my experience. Any time I ask it about a topic where I'd consider myself an expert, it's wildly wrong. It only seems useful when I ask it about topics where I have very little understanding because the responses are confident sounding and well organized.
So my hunch is that people finding it useful are probably below average developers that don't know what they don't know.
And most of what I said was relating to the direction Jetbrains is moving. As soon as they start adding service based integrations, it's a slippery slope and we could end up with IDEs that depend on calling out to Jetbrains' services to function.
That's the exact opposite of what I want from Jetbrains and keeping that kind of stuff out of the IDE is the reason I pay them every year.
I guess the main reason the plugin is enabled by default is to promote it. AI tools are becoming an important part of the development workflow, with a majority of developers using a chat LLM or Copilot (https://www.jetbrains.com/lp/devecosystem-2023/ai/). So the functionality offered by the plugin might be interesting to a large part of the user base. A non-bundled plugin would not be discovered by most users. And for organizations it looks like the AI assistant is disabled by default.
Regarding the direction - LLMs are usually used as a service right now, so there's not much choice. At the same time, JetBrains is also working on local smart completion workflows like https://plugins.jetbrains.com/plugin/14823-full-line-code-co.... Hopefully at some point there'll also be an option to use a local LLM with the AI Assistant.
> Hopefully at some point there'll also be an option to use a local LLM with the AI Assistant.
I would love something where I could pick the inputs or at least give it inputs that skew results. Right now I think the big problem with AI is bad input. Most of the dataset that's publicly available is junk. A lot of "answers" are people guessing at stuff they don't understand.
Honestly, I don't even know if (or how) LLMs work if you train them with a smaller, more accurate dataset.
Nobody forces stuff onto you. You can disable everything with just one checkbox.
Nothing has changed. The plugin is enabled by default but it does nothing unless activated. "Enabled" doesn't mean it's doing anything.
> Again, I'm paying to NOT have that.
So don't.
>So my hunch is that people finding it useful are probably below average developers that don't know what they don't know.
Nope, I'm definitely an excellent developer and I find it useful.
I'm not talking about this feature exclusively. This is a good integration for them to justify charging extra and to justify a dependence on a third party service that you can't host locally.
If this is viewed as a success for them, there's a lot of incentive for the next feature to be a service based cloud integration. And the next and the next... Suddenly we'll be 5 years into the future and development workflows will be completely dependent on cloud integrations and, as developers, we'll be subjected to terms and conditions that are detrimental to us because we don't have any other options.
Look at how Microsoft is moving Office into the cloud. When you try to open a document everything defaults to getting you to interact with, and rely on, OneDrive. Most of the collaborative features already rely on OneDrive. Once they've discontinued perpetual licenses and everything is subscription based, they'll probably make it even harder to rely on plain old documents on the local file system.
Who do you think that benefits more, you or Microsoft? Where's your leverage when Microsoft says prices are going up? You don't have any because your day-to-day workflow has become dependent on their services. What happens if they ban you? Can you do any work tomorrow?
What I'm saying is the reason I pay Jetbrains is because, in my mind, I'm paying for a product that isn't going to get developed to eventually detriment my interests for the benefit of Jetbrains.
What do you think the long term goal of VSCode is? I think it's to get as many developers as possible to depend on it for their workflow so Microsoft can slowly shift more and more functionality to cloud connected services with the end goal of having everyone pay to have their development environments dependent on premium, for-pay Microsoft services with everything, including your development environment, running on Azure.
Every time something shifts to benefit large corporations at the expense of users there are always people like you in the comments that can't see the downsides if a critical mass of users accept the changes.
> Nothing has changed.
Except Jetbrains is about to get their first taste of what it's like to have some of their customers dependent on a feature that isn't available locally. If it's seen as a financial success, do you think they'll be able to resist the temptation to start moving everything they can to cloud connected features?
Well that's weird because:
a) Everyone else is
b) You definitely seem to be talking about it and specifically have targeted your comment to this feature in the comments section about this feature
So it feels a bit weird to now say "it's not about this feature"...
> there's a lot of incentive f
We can sum up virtually all of your post as "something in the future could be bad". OK, yes, something in the future could be bad. That is always true.
> large corporations
JetBrains isn't even VC funded, they're a privately owned and profitable company. Comparing them to Microsoft without addressing this feels disengenous.
> an't see the downsides if a critical mass of users accept the changes.
I mean, I think it's ridiculous to go "look at how JetBrains is changing" in a thread where everyone has misunderstood a minor bug that in no way indicates that JetBrains is changing. They're adding services, wow how awful.
> Except Jetbrains is about to get their first taste of what it's like to have some of their customers dependent on a feature that isn't available locally.
No one depends on this. Your IDE starts up fine without it. You don't need it. You can use a competing plugin (they already exist) that runs locally or in some other service.
> If it's seen as a financial success, do you think they'll be able to resist the temptation to start moving everything they can to cloud connected features?
I think it would be a ridiculous move for them to completely change their core business model to be exclusively service oriented, yes.
"Additionally any project that has a .noai file automatically is excluded from using the AI Assistant even if you have opted in and have an active subscription to the service."
I disabled this one and it hasn't nag me.
Here we have 2xshitty behaviors, we can see around this product. Who is to say there isn't more we can't see.
Removing it seems 100% reasonable, if only for security purposes.
If you upgrade from a older version, it open your previous project with the plugin enabled without asking.
The only issue here is that it's being automatically enabled after it is disabled, which I assume is just a simple bug and not at all the big deal this is being made out to be.
I'm glad your firm lets you send code anywhere. Mine does not.
Again, this is really more of a conversation for a support forum and not hn...
edit: I just updated and the plugin definitely does not just start sending data, you have to explicitly click 'start trial'.
If your model is "I don't trust this software" the plugin is irrelevant.
And uninstall uninstalls it. Except in this case when the plugin automatically reinstalls, according to TFA.
And we're talking about something that sends your code to their servers.
Malice, incompetence... still not good.
For the millionth time - not if you do not activate the plugin.
For the millionth time - uninstall was supposed to uninstall too :)
The policies of my company are clear on the issue. I can't use a tool I previously used safely... yep. I'll be changing IDEs. I may go back to neovim, emacs, or whatever.
I don’t know who needs to be fired over there, but whoever made this decision needs to be and the company needs to make a public apology and public commitment to remove nag from future products.
This is very brand damaging.
Let's put it to the test.
Don't expect me to provide an exhaustive list of problems. In support of my "blank check" statement above, CTRL+F, "not limited to".
Modern capitalism is not about making a product and selling it for a fair price. It's about extracting every last cent by selling your users to other people. Double Dipping is the motto.
The only problem with this is they aren't inserting adverts into you IDE, or indeed why not put adverts in the code you write.
THE OLD VERSION IS ENABLED AFTER IDE RESTART.
1. The enabled plugin prompts you to 'activate' the service
2. If you do not activate the service the plugin is enabled but does not use the service
3. There is a minor bug, allegedly (have not reproduced it, and others have tried and failed) where the plugin can be disabled and then it re-enables itself.
Things will take a while to settle. Unless your workflow is *truly* broken by the fall-out, save your outrage. And yes, I'm a paying JetBrains customer, don't like their AI offering, but don't really like anyone else's either, so far...
Rephrased: what's the problem with waiting until the next point release of the affected product before assuming malicious intent?
Are we really equating poorly-coded add-ons to malware now? And again, I ask this as someone who lived through the whole broken experience of AI previews in JetBrains products and ignoring all of that. That literally took me less time than typing this comment...
Oh, we'll get you on a wait list. Bullshit. Waitlist never came in.
It's OK to say the waitlist closed. Keeping people hopeful is a shitty move.
Then to pull this on launch... (sigh) I didn't want to have to waste time on this shit. I'll go back to VSCode, neovim or whatever if I must.
I'm more frustrated with myself that I trusted them to provide me a year+ of quality service... and that isn't happening.
Sure, I got "sign up now!!!" buttons that did nothing for me. I learned after, like, the first 3 times of clicking these not to do that again.
Then, I was, at some point, able to sign up for the preview. It was underwhelming. Like most other offerings in this space.
Meanwhile, all the core IDE functionality continued working as before... And all was good...
That's a rhetorical question. I know the reason. If they don't bundle it, engagement will be low because people simply don't want it. At best, it's an advertisement in my IDE. At worst it's something that can send my code to an external party.
This is a low quality submission. You're mad about some issue tracker thing but I don't see how this is relevant to the rest of HN or why this is soooo important.
That's all right and perfectly valid.
What is not is what is described in the linked issue.
There seems to be a singular issue/ bug, which is that a disabled plugin is being re-enabled after update. This is just a bug, I don't understand why this is HN-worthy.
If the headline were "intellij has a bug where a disabled plugin is being re-enabled" it would be accurate, not-inflammatory, and boring.
[1] = https://youtrack.jetbrains.com/issue/IDEA-341408/Disabling-p...
Yes, that sounds like a bug to me.
> because they insisted this be an uninstallable plugin.
I don't see a comment from Jetbrains saying that the plugin is supposed to be re-enabled.