Also no mention of the feature that changed the face of the ecosystem — Intellisense or the language server protocol.
Also no mention of the feature that changed the face of the ecosystem — Intellisense or the language server protocol.
Could we please call it "autocompletion" instead? The feature did not originate from Microsoft IDEs, and while they are free to call it whatever when talking about their editors, the rest of the world (well, that 2m^2 part centered on me, at least) would appreciate if we used more general terminology.
It's good to have a way to specify when you're talking about the former meaning and I do not know another term for this than "intellisense".
I don't use Microsoft IDEs often, but have had experience with them many times over the past 15 years. And every single time, intellisense would freeze, get confused, or just stop working completely. Not once in 15 years have I had a passable experience with it, so nowadays when I'm in Microsoft land I always immediately disable intellisense before I start working.
Visual Studio Code on the other hand is just fantastic. I was a hardcore emacs user until I switched to VSCode as my main editor a few years ago due to the crazy good auto-completion experience.
I had the privilege of chatting with the VSCode booth people at PyCon a couple years ago. I was waxing enthusiastic about some feature or another and one of the other people at the booth spun around — “I wrote that!”, and then I got to tell him how much I loved his work. That felt great.
The distinction seems important as I personally wouldn't go back from VSCode to an editor that merely provides autocompletion but can't reason about the language beyond basic syntax highlighting.
I caught myself using "Google" as a verb when talking about searching on Amazon the other day and "Xerox" has become synonymous with "copying" for an entire generation, so I wouldn't judge too harshly on people using "Intellisense" as a generic phrase even if it can harm communication ("But does this editor have Intellisense?").
> I personally wouldn't go back from VSCode to an editor that merely provides autocompletion
Autocompletion can draw from multiple sources. By default, before LSP hooks have a chance to add themselseves to the list, I have following sources configured:
'(ac-source-symbols
ac-source-variables
ac-source-functions
ac-source-features
ac-source-filename
ac-source-abbrev
ac-source-dictionary
ac-source-words-in-same-mode-buffers
ac-source-semantic
ac-source-yasnippet
ac-source-files-in-current-dir)
Maybe that's why I don't think changing the name of the feature based on just the source it uses makes sense.The community is actively maintaining an LSP package, and we've added a number of features in ST4 that the protocol requires, such as UTF-16 diffs.
The open source model makes sense since it will need to have tweaks and fixes to support various language servers. That combined with a very small development team (six engineers across our two products), would probably lead to slower development, and it would be tied to the release cadence of the main product.
It’s also my go to for wrangling weird txt.
I use it to open often giant .csv and .txt very very fast. I use it to quickly edit SQL because the select-lines command (ctrl+alt+up/down) makes batch edits of indented code a breeze. I use it to sometimes format and arrange weirdly formatted C#. I use it often for its lightning fast search and replace function.
It has grown on me over NP++ which is still a very very nice text editor.
To each their own, I guess, but given how much of my day editing text, it's hard to want to use a text editor that has noticeable lag. (Cue the usual rants about latency in 2021 on multi-GHz machines)
For dev work though, my daily driver is VSC at this point.
I still use Sublime for notes as well, but that's more so I don't have to think about how closing/opening half a dozen workspaces in VSC affects which notes are open.
I wouldn't mind the core ST app being so bare bones if the plugin API was more powerful, but unfortunately it is pretty limited in what you can do.
That said, we are definitely focused on being first and foremost a really fast text editor that makes it easy to read, navigate and write code. Trying to implement a browser or be an IDE are outside of our area of focus.
It's also fantastically bloated. There's so much stuff I have to disable to make it barely usable. And most of the supposedly helpful lightbulbs suggest changes that make absolutely no sense.
I can absolutely believe that IntelliJ has its fans because it has a ton of features, but for me it's just unusable.
16GB is the bare minimum for a dev machine in 2021 IMO. Anything higher than that is 'nice to have' unless you're doing heavy stuff like data analysis, machine learning/AI, games development etc.