So much cynicism here. Many are quick to dismiss Jetbrains and anticipate the worst. Jetbrains doesn't need me to defend them, but what exactly have they done to deserve this pessimism? Changed CEOs and mentioned AI? In my view, Jetbrains has generally been supportive of developers, making good tools at a fair price while sustaining a successful business model.
You missed their (still not completely resolved) "cannot uninstall new core AI plugin that nags you and asks for money while it ships off your code to unknown servers" fiasco a few weeks ago
I agree, mostly. I'm hugely thankful for their license of the whole product line for my OS project.
But I also recently paid for a month of AI assistant of which I could only use it for a couple of days because of a bug in the authorization process. They make a lot of UI changes, many of which are at least questionable and completely throw off my workflow, and prioritize fancy new features instead of fixing bugs that are sometimes ten years old.
I am surprised that JetBrains high-ranked people are all fellow programmers, architects etc. This is a breath of fresh air when compared to some other companies where directors and managers are MBA types.
They haven’t gone public yet. Once that happens the inevitable enshittification is bound to happen.
Personally, love their products. One of the only products I will happily pay for. Had to unfortunately deep dive into the C# and .net world for a bit and Rider IDE made the process less painful than it would be with VS code or visual studio.
The only thing I can come up with us Microsoft's history of embrace, extend, extinguish and all that. Like how VS Code plugins have a bunch of licensing conditions around them, to the point where they don't run in VS Codium (I use Rider, but a friend had some problems with that).
In general, .NET feels like a more focused Java - ASP.NET is more consistently put together, EF is arguably easier to use than JPA/Hibernate and there's lots of nice integrations (though maybe the AutoMapper thing sucks more than MapStruct). The ecosystem feels smaller and more niche than Java's, which isn't a good thing, but at least what's there is good, in addition to the language being popular in game dev or interactive demos.
It runs on Linux too, the SDK is simple to install and has no issues with containers, it's okay from performance to language features (and even F# exists for those who like that sort of thing).
It's easily in my top 10 for productivity. The other spots might belong to Python/Django, Ruby/Rails or even PHP/Laravel and Node/Express, in addition to Java/Spring Boot or maybe Dropwizard. Not sure about the exact order, but it's not like it matters.
I've been a Jetbrains customer on and off for years. In all of that time - across vast improvements in hardware - ReSharper has been slow. So slow. It doesn't seem to matter how many orders of magnitude faster are the CPUs, how many orders of magnitude increase in RAM. It just never seems to be usably fast in Visual Studio. Unfortunate that they apparently don't care about that, it would otherwise be a very good tool.
And yet Rider, using the same engine, is lightning fast and has been since the earliest alpha releases. If I were a conspiracy theorist, I’d say that Microsoft keeping VS 32 bit for so long in part to hobble ReSharper.
Microsoft has been recommending out-of-process extensions for quite a while now; ReSharper never moved there (they did with Rider). Might be that for an extension the size of ReSharper it's not feasible (to this day Rider is missing features in the UI that ReSharper had for ages) and they decided that making their own thing is the better approach.
However, Rider is quite a bit slower than VS 2022 (w/o ReSharper – Roslynator has been a good replacement for my needs here) and there's likely no good way around this for JetBrains. Since .NET embraces Roslyn for lots of customizations (custom analyzers, source generators, etc.) Rider must keep a Roslyn workspace around, along with its own analysis, thus doing pretty much everything twice – both for loading a solution and for every keystroke.
> Microsoft has been recommending out-of-process extensions for quite a while now;
In other words, Microsoft has been recommending rearcheticting your extensions from the ground up, because their own code base is too messed up to support 64-bit.
And it looks like JetBrains is doing that, but it takes years for such massive codebase.
Rearchitecting the extension out of the process makes sense. You can easily trace performance issues to an extension and they don’t have to build a bunch of extension performance tooling in the ide
It's not just 32 vs. 64 bit. There are many other reasons that require separation. Stability, performance, different dependencies from the IDE process, ...
strange, this doesn't match my experience at all. VS 2022 is way better than VS 2019 and earlier but still significantly behind Rider in terms of speed.
I think JetBrains made a mistake by not including a Windows Forms designer much sooner, that supports 3rd-party controls/components [0] in the Rider IDE. Dealbreaker for me now and for many other companies I've worked for or know of. Unfortunately, we had to choose Visual Studio because of this.
According to their own developer survey, Windows Forms was at 22% in 2023 [1].
WinForms != legacy, because it's very extensible! Microsoft still maintains it (last update was 1 month ago). It is also still one of the flagship products for companies that make 3rd-party controls like DevExpress [2], Telerik, Infragistics, GrapeCity and several others.
Students in academia today will not learn about WPF, WinUI, UWP and whatever else MS' pushing. They learn Windows Forms - in my country and in Europe at least.
Hopefully we'll get to switch over to Rider soon, but it's been 5 years already [3]. Big mistake.
Given how messed up the travel has been since Windows 8, and the focus Azure and XBox nowadays get, Windows Forms and WPF are still the best way to target Windows from .NET on the Microsoft own frameworks (naturally there are Avalonia and Uno as well).
For the C++ folks, Microsoft has yet failed to produce anything better than MFC, C++/WinRT with XAML and COM/IDL ain't it.
Didn’t say it’s wrong, said I don’t get them, I don’t get being identified with a job either, are choices, point of views, I relocated to live in 5 different cities in the same time span, met many different people, for me that counts, job is job
You don't have to identify with your job, maybe just kinda like it. Also, making new friends gets harder at a certain age. It works but it doesn't feel the same as having a friend you know since high school or college.
Also making your family, esp kids move every few years sucks really hard for them, never being able to build their circle of friends.
>I relocated to live in 5 different cities in the same time span, met many different people, for me that counts
And for others having roots, and not just meeting different people like a tourist only to dispose and move on in a few years, but building deep relations with people, is what counts.
To be frank, it sounds like novelty seeking to avoid deeper commitments and more substantial development. Of course if one is young (say <= 30) it can also be fun.
You like to move place to place and meet people. Some like to stay in one place, meet people occasionaly and spend more time with their family, hobby (sometimes you can't really take your hobby with you), camp in the wild with your dog etc.
It's not being a nomad, it's getting new challenges, learning new things, discovering new environments and contexts, new people, new ways of doing things, ... there is much to gain by getting out from time to time
Since they explicitly mention Kotlin, I wonder how it will fare in the future with all the new Java additions. I guess at least it will remain an Android staple.
Searching for him in Russian helps. Seems to be the former teamlead of Rider, and a .NET programmer with a handful of talks. TL;DR - technical background, might be good.
> Kirill Skrygan, who has been with JetBrains since 2010 and for the past couple of years has been leading the IntelliJ Department will be stepping up as CEO effective February 1st 2024.
He was leading IntelliJ which is a bigger project than Rider since it develops also the platform on which all the other IDEs are based.
I watched the 30 minute "AI rollout" video from JetBrains not long ago. The engineer on at about minute 20, is CTO now? also a twenty year coder there? In this video, the two technical communications people and that Cxx leader, were obviously placing a lot of emphasis on this new "AI" version .. of something that they have been doing all along.. code hints, context evaluation, code logic engine.. but with a new bravery to send all of this Back to the Servers without a choice. It seems to be like an obsession. Sending all your code details back to a central server constantly, appears to be a large change in the social contract of programming, to me. It appears that MSFT and Google, plus the phone market norms, have changed the game field back towards centralized record keeping.
For people with knowledge of political history, this is a strong warning.
My respect for the JetBrains engineering, and the skill of the technical communicators, was met with real distrust. Not for those people, but with this whole "sea change" in the ways that the Internet works.
Really disheartened they feel they need to point out "As we move towards a new era, in which AI is playing a transformative role". Fully expecting more AI "freemium" garbage to be shoveled into products where I don't want it. Again.
I recently found the Zed editor that looked very nice but I uninstalled it the moment I saw it had a GPT-4 console. I want nothing to do with AI. I want to do things with my own mind, the help of other human beings, and I'll try my best not to support AI even though it's encroaching on everything.
I remember when as a young programmer I was fiercely against autocomplete because it impacted my ability to memorize my code.
Now I'm at the stage where I'd prefer to just think at an architectural level and let all of the tedium be abstracted away. Copilot is like autocomplete on crack and I love it.
tbf I still don't use autocomplete. It's mostly man pages (or their language specific equivalents) and stackoverflow for me. That said, I don't program anything terribly complex.
My strong belief is that autocomplete encourages the use of more descriptive identifier names and therefore is one factor that can encourage more readable and maintainable code.
But I'm certainly not the world's most ultimate programmer.
I agree, I only program via punchcards. The mere thought of compilation makes my skin crawl, but the introduction of garbage collection was really the last straw.
It’s really telling that anti-Copilot-et-al comments quite often eschew talking about the functional drawbacks and instead focus on some flavour of weird self-congratulatory elitist sentiment.
I wonder if in the future there will be some kind of demand for artisinal/hand-crafted/organic code written by someone using "their own mind". Maybe then all these anti-AI devs can corner the market.
To me it's just feels a really dumb hill to die on. Copilot has definitely removed a lot of the tedious work in my day to day.
Computers are the worst and should be treated with nothing but disdain and trepidation. Just talk with anyone who has worked with computers for more than an hour.
* Computers and other automations never made creative decisions before and were perfect for automating mechanical, rote tasks. Like going through a column of numbers and summing them up, or resizing a folder full of images
* AI attempts to make decisions that we would otherwise make creatively: yes, it may not be truly intelligent, but it undeniably makes decisions that, IF we made them, we would use part of our creative brains
That is the FUNDAMENTAL distinction between AI and other forms of computing: AI, while not intrinsically different than other forms of computing, attempts to take over our creatively-functioning brains. That is why I am against it. Society needs creatively functioning brains to be healthy, and an amalgamation of AI with humanity will have forseen and unforseen consequences, including a subtle but significant modification of our mental operation to make us forget what it is to be truly human.
>Computers and other automations never made creative decisions before
Oh they absolutely did. Even the early optimizing compilers discovered new pathways and created code that surprised even their authors. The only difference is that now regular people can see and appreciate what computers create.
This is a severely limited and pedantic example. Generally, most algorithms don't operate like that and even so, their "creativity" was limited to highly technical areas of development.
attempts to take over our creatively-functioning brain
I wonder if you are underestimating the extent to which the limitations and design decisions baked into computers and software (and into analog tools before them!) have always shaped our creative processes.
For me, AI code assistants have greatly accelerated my creativity as an engineer. Because they help with boilerplate (and sometimes even have an idea worth considering) they allow me to explore more ideas in less time.
This was very apparent to me when doing the "1 billion row challenge" that folks were talking about a few weeks back. I was able to rapidly try out probably a dozen approaches before finding a well-performing one.
(Now, it must also be said that the gnarly micro-optimizations in the fastest solutions were clearly achieved "by hand." And I would also point out that ChatGPT/Copilot lead me down a few dead ends as well. But over all, a big win for me)
What's key to me about AI code assistants is that they augment my engineering work. I am still writing code, I still need to understand everything, the architecture ideas are still mine.
My biggest gripe is that they made it difficult to switch between which toolsets/targets by introducing an MRU list. Splitting them was good, but not allowing to just show all of them plus the All tests means the order is always changing and they are going to be several clicks away often.
JetBrains' AI product didn't even function at first for me. I purchased a plan, opened the pane in JetBrains and it gave me some weird error about my account. A day later, it was working but it was very bad. Would insert code all over the place, would regularly fail, and was just terrible compared to Copilot.
What's wrong to me is that Jetbrains' product quality has taken a noticeable nosedive at the same exact time they started forcing their AI assistant plugin down people's throats.
The plugin can be disabled but not uninstalled, and it attempts to reinstall itself when upgrading the IDE version. Additionally, the latest IDE version has suddenly pushed visual latency while typing into the seconds and broken syntax highlighting / error checking. The layouts now reset each single time I start the IDE, seemingly to always display the AI assistant tab.
Plus, the AI assistant is freemium, while forcing itself upon the user. After a short trial, it attempts to convert the user. It has zero respect for whether the user already has Github's copilot installed. The reset layout conspicuously removes the Copilot tab.
To top it off, the assistant plugin plain sucks and is not ready to compete with Copilot.
Intentional sabotage or not, this is by far the worst feature rollout I've ever seen in their products and it concerns me deeply about the future of Jetbrains. I've had to force downgrade to an early IDE release for now.
I've noticed this too. That AI Assistant plugin keeps popping up all the time. I gave up and wanted to use the trial, but that wasn't working, then I noticed they update the thing every 2 days or so. I finally managed to do the trial for 14 days, but now apparently it expired, even though I enabled it last week. Left them feedback that I want to uninstall it, not disable it, got an email with some Jetbrains support URL for my request. Tried to login with my normal account that has the license, it's not working - I need a different account for the support hub. Clicked see as a guest, get Oauth error, as guest access is not allowed.
What a mess. The YouTrack system is quite difficult to parse anyways, there are so many related issues and so many products that I get lost. I haven't even bothered creating an issue around this stuff because it's simply easier and faster to downgrade the product at this time. As a long-time paying customer, this entire rollout has felt insulting.
"Freemium AI crap" is 2023/2024s "Freemium cloud collaboration/storage" crap shoveled into products in the past (of the "Subscribe to the Adobe Creative Suite for $50 + your firstborn/month, and get 5GB free Adobe Cloud storage").
They have a solid set of products and brand in their market, they offer comprehensive coverage of their customer's needs.
I'd say that they're doing a pretty good job with their strategy, and there doesn't appear to be any emphasis on short term revenue over long term growth.
So this is not your standard publicly listed company movable MBA/CEO replacement.
I am paying and have no intention to change this, but hopefully they will work on solving old issues and notch up quality a bit. With all those great features, it is a bit annoying to still get a "variable might not have been initialized" warning on a null check (myVar == null) in WebStorm after all those years.
The existence of the community edition being mentioned anywhere else than the download page, to which you only get by following info about the paid editions :)
Yep, you cannot find it at a quick glance, which is the intended effect.
Would you mind linking to PhpStorm community edition? I don't remember being one. I believe only IntelliJ and PyCharm come with a free version, and the rest (CLion, RubyMine, PhpStorm, WebStorm, GoLand) do not.
I'm currently on the JetBrains Ultimate plan, because their tools are that good in my eyes. Well, maybe except Fleet, because it's a bit early in its development and it loves to eat memory for the type of tool it tries to be (e.g. compete against VSC directly).
I hope they don't mess with the recurring discounts for subscriptions.
Honestly, the idea of getting rid of the Community version would be like shooting themselves in the foot, given how popular and passable VSC with a lot of plugins can be. I'm pretty sure nobody would actually consider doing that.
Either way, for larger enterprise projects, JetBrains IDEs still feel like the right tool for the job regardless.
I believe this is the right direction - IDEs must become more intelligent. Are they already (really) intelligent - the answer may vary on your competence (it's more useful for beginners) and your expectations.
Even as an experienced developer who wants to learn a new framework/language, I prefer Copilot + VSCode ($10/m) as compared to a paid IDE (~ $10/m).
JetBrains cannot be the Nokia of IDEs and let the opportunity pass by, they need to play the game and hopefully, they will (as in the past) remain the top choice.