Spoiler alert: I'm old. Old enough that uni assignments would be mostly done by ssh'ing into the mainframe computer and work there. At a time where the editor ecosystem was quite frankly... not there. Sublime didn't exist at the time, and nano felt underwhelming compared to vim, especially with our professors handing out vim tips as we'd go through stuff.
So I learnt vim, and modal editing. And never left that knowledge behind. I feel it's quite useful if you take the time to learn it, the same way your capacities grow as you learn shortcuts for your favorite editor. Vim just placed it at the forefront. Given that most editors support vi bindings, it's not knowledge that goes to waste if you leave vim behind.
Which is what I've done for a while now! First for Emacs, which has the best vi emulation layer, and would argue edges out vim in places! It was fun while it lasted, but as I moved towards a frontend-focused role, VSCode autocomplete was too appealing a deal to think about not using it. The bindings were adequate. Limited and not super nicely integrated, yes, but adequate. The completion magic really sold it despite the modal layer shortcomings.
But let's be honest for a minute. Microsoft sucks. They went to great length to change their image, but the fact remains that the company is collaborating with rather unsavoury actors, and still struggles to treat their employees decently, especially when it comes to their marginalised workers. And I'm not ok with that. It's not really my job to fix Microsoft issues, and it's probably not something that can be fixed under our current economic system. But the fact remains that I am uncomfortable using their products, and that's the thing I can do something about, especially when it's not something that would hamper my visibility nor something that my workplace uses extensively like github. VSCode fits the bill, and so we said our goodbyes.
I gained a lot in the transition. I don't need to leave the terminal anymore, it feels a lot snappier, which I find especially important on something I use on daily. I got back to a modal model that just works, without any quirks, and a very minimal interface to leave space for what matters: the code.
I'll probably continue fluttering around over the years to be honest, unless I actually manage to write my own thing, that works the way I want it to!
PS: I use Neovim, and you probably should too. Vim is trying to diverge more and more from Neovim, but goes in a direction that looks a lot less appealing than Neovim's roadmap.