I would state up front that I'm a vim user and don't have much experience with either emacs or vs code. But as a product, both of them appear to be quite similar:
1. Programmable
2. Configurable
3. Can be used for programming in a variety of languages and frameworks
4. Bloated(?)
Hell, there's even an org mode plugin for vs code!
So, is it reasonable to view vs code (and atom?) as the successors of emacs, or as the emacs of modern day?
And if I'm thinking about jumping to something more feature rich than vim, should I jump to emacs or vs code(atom?)? I know that vim can be made feature rich with plugins, but you are lying to yourself if you say that vim can do anything an IDE can.
Does VSCode have something like Emacs' .emacs / .init file? In one file I can load all the plugins I want and write custom code for added functionality. Rather than having to rely on other people writing a function I need, I can just hack away on my .init file to modify existing functions / create my own.
Now of course in VSCode you can create your own extensions and load it into the program to add your own functionality - but the barrier to entry for any editor (besides Vim) is much higher than Emacs. Looking at the documentation here: https://code.visualstudio.com/docs/extensions/example-hello-... - that's a lot of code and things to do to get a hello-world application working in VSCode. In emacs, that would just be a couple lines of elisp in .init.
Even if VSCode has something like .init (I got this from someone on Hacker News) - it's better to think of Emacs as basically a framework for text editors. You're able to change every single part of the application - VSCode and other editors don't hold a candle to the configuration of emacs.
VSCode isn't the successor to Emacs or a modern version of Emacs - it's just VS Code. Emacs is Emacs.
I've used both editors myself, really the best way to get what I'm saying is to use Emacs for a while until you get comfortable with it. My Emacs configuration is something I cherish and it's a joy to use everyday.
Besides programming, I use it for taking notes, a todo list, a journal, etc. Some people even use it for keeping track of finances, for drawing diagrams, for creating slideshows, etc.