vim was such an unimaginable improvement over nano for doing stuff on linux servers. Having an in-shell-editor search-and-replace function alone is worth everything you have to do to learn vim.
And after I was comfortable around vim because of all the "training" on servers, I just switched to vim fulltime. No more GUI editor for me!
The best thing about Vim is that despite having all the features of a modern IDE it starts in 0.1s and you can start editing right away while the code data is loading asynchronously.
The worst thing about Vim is that... just kidding, there's nothing bad about it.
It's wild to me that people that people use VIM in professional software development settings (especially front end).
Like, I get it if you're a sysadmin who's spending all day in command lines and ssh terminals, but when you're working on high level, user facing software, it's just absurd to have the mindset that a command line interface will be better than a command line interface + a graphical interface.
GUI || command line, objectively provides you with more UX tools and ways of presenting data and interactions to the user, than just command line. Everything you can do in VIM, you can do in VSCode running VIM in a terminal, but not the other way around.
Maybe it's because I got my start programming 3d modelling software, but there are fundamentally things that command lines are bad at representing.
Though I use neovim as a text editor, Zed is my IDE of choice. I think it’s a good alternative for most people that don’t like Electron-based applications.
After years of using Linux, the last time I used Vim, I remembered for the first time how to go into command mode, exit, and save the file I was editing without looking anything up.