I don't think I've ever introduced an Atom user to VS Code and they stick with Atom. Every one of them switches.
I don't think I've ever introduced an Atom user to VS Code and they stick with Atom. Every one of them switches.
I run into a lot more bugs with VS Code--or at least the (very few) plugins I'm using with it--than with Atom. For example When writing JSX, I'll occasionally add a wrapping element around another, and suddenly I'll get lint warnings about unexpected tokens. Using the "reload window" command or exiting and opening the editor again makes it work, but otherwise I can't get the error to go away.
I also find it to be far noisier by default than Atom. There are so many things on the screen at any given time. The side nav has a bunch of icons, the sidebar seems weirdly un-compact, and it keeps trying to suggest code snippet completions for me. It also seems conventional for VS Code plugins to add inline indicators to the editable region to show things like failing tests or previews of CSS colors. I find things shifting around suddenly on the screen visually jarring, and it makes moving the caret around feel weird. Some of these things are fixable via options, but I like that Atom doesn't require nearly as much fiddling in order to get it to quiet down.
Also, it's slightly annoying to have to reload the editor after installing/removing/disabling/enabling a plugin.
And you can do a lot to clear up the UI of features you don't want.
Not saying you're wrong in your feelings or decision to switch. But there might be remedies!
The VS Code developers observed that things can pretty tangled with open-ended plugins and HTML rendering, so they cordon off plugins to separate processes, and only offer limited UI control to plugins. This helps keep things stable and fast, but I think the ability to have plugins easily create new UI in an open-ended way is the coolest feature that Electron enables in an editor.
Atom offers a lot more UI control to plugins, and in my experience, is still acceptably fast and stable.
Atom plugins otoh... they're a s-fest of stuff requiring other stuff and never managing to ever auto-magically just work. For Python and JS VSCode is amazing! Also there's a Jupyter plugin that works, an integrated terminal that just works, making it idea for data-science and ML tasks too...
I have no idea what the Atom guys are doing, because in theory I'd like Atom more, but in practice I fee like wanting to throw my laptop at a wall after 30 min of using it because of how semi-broken everything is.
Does anyone anyone have a "curated" set of Atom configs and plugins that "just work"? Maybe by making it into smth like "a distro", it could be usable for people with 0-to-little-patience like myself...
VSCode is better for most people; it's a great editor, and does more out of the box without configuration. However, if you're someone who DOES feel the need to tweak everything until it's just right, VSC doesn't hold up. JSON configuration is just clunky. Atom is, at least in some aspects, scriptable without the need to build a full plugin (though it's certainly no emacs), and that's quite valuable. And, when you introduce the atom-ide package, the gap in completion and debugging functionality between the two gets quite a bit smaller.
Also, anecdotally, Atom seems to have had better performance across my machines; especially on lower-end hardware. I'm only working on small-medium sized projects, so this might just be me.
Yeah, I can get by with cmd+z, but it would be nice not to be forced to context switch when I'm thinking in ex-mode.
Although now I've read that Atom is supposed to be faster than before, so I'm going to give that a try again.
But it's been four years and they still havn't fixed jump to definition in PHP.
Visual Studio Code has this, out the box. And it works really well.