It’s in the same feature family as emacs, Sublime, Notepad++, etc — all of which are called text editors.
They all have extension architectures that expand on what that means, but they all cover the same kind of use cases and they all stop short of traditional Integrated Development Environments.
Unless you’re saying that none of the others should be called text editors either (a daunting uphill fight against history), it’s an exactly accurate description.
That is a good point about the name, never thought about it. And if I ever wanted to write gui code that only worked in windows, I guess I'd consider it? But that has never been a use case for me, and everything else about vscode is better.
Yeah, it's superior to Visual Studio because it's more like Emacs, a text editor.
Emacs users saw the benefits of a single text editor a long, long time ago. Back when I started programming it was common for people to use a different IDE per language. There was VS, Eclipse, Dreamweaver etc. I thought that was insane. It's been funny seeing people finally realise the same a decade later.
JetBrains IDEs are the sweetspot between absolute single purpose IDEs (like Eclipse) and text editors that require plugins to be useful (broadly speaking).
I am all in on JetBrains, to be perfectly transparent, but I have yet to see anything come close to the seamless experience I've had with their IDEs
Eclipse a single purpose IDE? Back when eclipse was the dominant java IDE, it almost felt as if a language did not exist before it had its very own eclipse plugin.
Yeah, didn’t they market themselves as the framework for IDEs? I can remember in the late 2000s Eclipse was very popular in the php community. The C/C++ plugin was also widely used.
For Windows development Visual Studio is still more powerful. People who have developed solely on Macs or juniors who started in 2020 with only web dev experience won't understand and they're usually the ones that have the "VS Code is better" opinion.
I've developed in .NET, I've even worked with a large .NET monolith ( > 100 devs). Even in that circumstance while visual studio was installed by default, most devs used vs code. It's not just them young ones anymore.
As someone who's used vs code occasionally but still primarily uses visual studio what are the big benefits you see of vs code of the traditional visual studio?
For me personally the use of vs was only during my studies. A comparison by me between the tools I've actually used extensively would be between emacs and code.
Someone mentioned the visual aspact of vs. That I've literally used once, at the very start of my bachelor. Vs is confusing, huge, and densely feature packed. I think I just never took the time to enjoy the features vs has.
This isn't weird when you consider my top choices: vs code and emacs both share the characteristic that they get out of the way when I'm doing my stuff. I usually want the bare bones, vim keybinds enabled workflow when I'm working, because it's fastest and it's what I know. I can use smart features like var renaming, autorefactoring etc. in all of these options, but in vs code and in emacs I feel less like they're butting in when I don't want them to, and when I'm changing settings or executing commands I'm not traversing a dense jungle of menus, settings and options like in vs.
In short for me the experience is easier and therefore more flow like.
There actually is a text editor in there somewhere at least if you believe some of the MIT neckbeards. But you have to sort of tease it out with the proper meta key what-have-yous
It's no Acme but it's still pretty good. For me at least it's a sight better than modal editors like Kakoune, those just don't mesh well with how my brain works; Emacs' keyboard chording is far more pleasant.
I think the point at which you have integrated intelligent breakpoints, seamless in situ data inspection, call stack tracking, proper lexical scoping of variables, etc, etc.. you've left the realm of "text editor"
What on earth would VSCode need to add to be classified as an IDE? It does so much more than Sublime/Notepad++/eMacs out of the box. It’s not even close.
Vertical integration with the toolchain, for one. Most text editor extensions rely on least common denominator integration with tooling through an adapter layer like LSP.
And that works pretty darn well, but struggles to integrate all of the toolchain's development opportunities into the workspace environment.
Horizontal integration across workspace modules would help too. Most text editor extensions rely on a least common denominator UX language through command palettes and button arrays and human-editable config files.
And that also works pretty darn well, but struggles to integrate all of the workspace environment's features into coordinated development workflows.
There is no slight being made against VS Code to say that it's not the same as a more fully integrated development environment. It's a very powerful tool in itself, capable of meeting most developer's needs and is far more extensible and adaptable than IDE's aim for.
LSP was literally developed for vs code. Using it as an example of what text editors use to approach ide's is in the context of that fact rather odd in my opinion.
They cover all use cases of traditional IDEs, but you need to edit files instead of clicking through endless menu hierarchies. They also don't tell you what your compiler or build system should be.
Categorizing VS Code as akin to Microsoft Word or Google Docs seems...profoundly weird and more confusing than elucidating. I'm gonna stick with "IDE", personally.
[EDIT] It seems folks won't classify Word/GDocs as "text editors" due to their additional features. Great point! I'm getting deja vu...
Indeed I am. What universal IDE functionality is missing from VSCode? My vanilla install is aces for full-stack TypeScript work, but I'd love to know what I'm missing!
Microsoft Word and Google Docs are _Word Processors_ which are technically for editing text but are now much closer to desktop publishing software, especially with the emphasis on styling and graphics.
emacs, vim, and VSCode are _Source Code Editors_ which are a type of text editor. You can make a source code editor into an IDE by adding integrated compiling and debugging tools.
They all have extension architectures that expand on what that means, but they all cover the same kind of use cases and they all stop short of traditional Integrated Development Environments.
Unless you’re saying that none of the others should be called text editors either (a daunting uphill fight against history), it’s an exactly accurate description.