JetBrains Fleet thoughts
On Monday JetBrains issued a number of press releases about a new product called Fleet that appears to be a lightweight editor/IDE similar to Microsoft's Visual Studio Code. I've already had a few folks ask whether Illuminated Cloud 2 (IC2) will support Fleet, and what the introduction of Fleet might mean for the existing JetBrains IDEs such as IntelliJ IDEA, WebStorm, etc. I've started my own inquiries with JetBrains about this new product, and while I honestly don't know much just yet due to it still being VERY early days, I'll share my thoughts both now and again later once I know more.
First and perhaps most importantly, Fleet is not positioned as a replacement for JetBrains' existing IDEs. IntelliJ IDEA, WebStorm, PyCharm, etc., will continue to be JetBrains' bread-and-butter products, and IC2 will continue to support them just as it always has. That doesn't change at all.
Based on the available Fleet architecture information, it appears that it will be able to use existing JetBrains IDE back-end logic (as well as LSP) to provide programming language features such as parsing and syntax validation, static code analysis, code formatting, syntax highlighting, code completion, bidirectional navigation, and even refactoring...basically information that can be delivered from the backend to the frontend in an effectively "headless" fashion.
The things that would almost certainly have to be rewritten are those that have their own UIs as the Fleet frontend is based on a different technology than JetBrains' existing IDEs. IC2 includes numerous custom UIs specific to Salesforce development, e.g., the bulk deploy/retrieve/delete options dialog, the subscription editor, the SOQL Query and Anonymous Apex tool windows, the Log Analyzer, the new Salesforce Functions Dashboard, etc.
And to be clear, it's still uncertain how/whether Fleet will support third-party plugins for extending this functionality. However, given JetBrains' historical investment in product extensibility through plugins, I fully expect that to be supported. The real question is how much of IC2 "just works" and how much would need to be reimplemented specifically for Fleet. And frankly, how important is Fleet support to IC2 users vs. the existing support for JetBrains' full IDEs?
It'll likely be a few months before the answers to these questions arrive, and my guess is that those answers will just raise more questions. In the interim, my focus will continue to be on IC2 as a plugin for its supported JetBrains IDEs. As always, my feature backlog for IC2 stretches well beyond the visible horizon, so expect the standard (mostly) weekly releases with new features, enhancements, and of course bug fixes.
As stated previously, I'll post additional thoughts on Fleet as I have more tangible information to share.