I tried other editors, it didn't feel right, I didn't force myself to continue using them. My advice if you're trying vim is the same... if it doesn't feel right, if it doesn't feel like the tool works for you, look somewhere else.
I'll admit my FOMO was what originally got me to start learning vim. I still barely know the basic motions but I'm starting to think it could lead to a productivity boost once I get over the learning curve.
There is a quote from Apple UX designers/engineers about testing the keyboard vs mouse for doing stuff in the OS.
Apparently the test subject always reported that they keyboard-driven controls were faster, but the timing measurements showed that mouse were faster.
Chances are the keyboard feels faster, rather than being actually faster.
I'll add another point of view I developed while observing many LaTeX vs Word or Excel vs SomeObscureCoolThing(tm) threads: people will happily waster thousands of hours over many years to learn vim/emacs/LaTeX/SomeObscureCoolThing but will plain refuse to spend 20-200 hours (again, over many years) to properly learn how to use Jetbrains' stuff (IntelliJ etc) or Word/Excel/PowerPoint (or the LibreOffice equivalent) or some other mainstream tool.
I've seen countless time web-apps being developed in months that could have been an excel sheet developed in a week. People wasting weeks on their documents because after a software update LyX would not open the documents anymore. People (particularly in university) being super-stressed, wasting precious time and occasionally missing deadlines because they waster too much time fighting LaTeX to align tables or images because they refused to properly learn how to use Word (or the LibreOffice's equivalent, writer).
And don't even get me started on the plumbing of various tools together. Most vim/emacs user (and I say this as an emacs user) can only integrate other tools as long as there is some copy-paste-ready code, but they can't go much further.
So... Yeah productivity boost is incredibly subjective. And chances are it's also fake.
It's not too much of a big deal (meh) but I'm annoyed by the fact that all this isn't even acknowledged.
Likewise, mandating a file per each class in Java is no big deal on the surface, but having to create and juggle so many files for small classes feels terrible to me, so a seemingly small detail turns me off the language.
I think we should examime these feelings, because they ultimately drive (some part of) our behaviour, and I'd guess they're not just random preferences but are rationalisable.
Congrats you missed the point entirely and provided me with a perfect example case:
Have you ever spent a considerable amount of time learning Excel, the very same way you did for python?
It’s very likely that excel is perfectly adequate and not buggy at all, you’re just and ignorant (in Excel) and can’t go further than “hacking a spreadsheet together”.
So, have you spent time properly learning other tools or are you one of those everything-expect-what-i-like-sucks ?
To get back to my point, working with spreadsheets feels bad (from my experience) because I have to juggle all the things mentioned above. In my favourite programming environments, mistakes of this sort are generally directly evident in the form of errors.
If I had more spreadsheet experience, I would get better at avoiding these mistakes. But I choose to use Python, where they are handled by design.
And anyone who has ever played MMO or RTS games will know that early on, quickbar are faster and more precise than shortcuts, but later on clearly, no one mouse-click if they want to stay competitive.
I'm not a great vim user by any means, but it feels comfortable & nice for me at this point. Vim is forever part of the virtuous cycle, forever letting you mix this idea for doing something with that technique. It fits my mentality fantastically well. Computers rarely have suchnfantadtically well equipped sandboxed, and even more rarely is software so module & flexible, so readily recombineable.
And I just absolutely adore being in a world where anything can be scripted, where every single ounce of power I get compounds with and works with every other bit of power I've accrued. Where everything fits together, and is useable on the fly, or usable when trying to do more elaborate crafting.
One little recommendation I would have given my old self, expand the power domain. I was a little slow to really get into scripting. VimScript was kind of ok but also for me personally kind of ass, but I should have leaned in more. Now a days NeoVim has excellent Lua support built in which is great, and I really really really love Denops which lets me use a lot more tools and libraries and ecosystem that I know & that are more mainstream (JavaScript). https://github.com/vim-denops/denops.vim
This is totally off topic, but the one thing that's not in any way at all modular or composeable is that vim assumes there's only one screen, only one output. It's been almost a decade since Tarruda blogged the idea of Smart UI where multiple apps could effectively start sharing a headless neovim, where there could be multiple different terminals at once, but there's been (afaik) no progress decoupling the core of vim from rendering into one and only one screen, which is my transcendent vim dream to expand beyond. https://tarruda.github.io/articles/neovim-smart-ui-protocol/
Easy check proving absolutely that it is broken:
1. Create a new wails project with `wails init -n myproject -t svelte-ts` 2. Create a svelte file and use a function defined in app.go 3. Run `wails dev` to compile and run the app 4. Delete the function from app.go
Result: The svelte file which imports the function generated from app.go doesn't show any errors even thought the function doesn't exist anymore.
So use VS Code or Sublime which actually work with LSP without issues.
Don't use broken tools for your work.
Don't use a tool that's broken for your work. There are plenty of bugs in other editors
I love vim, not because of some huge speedup, but because it just feels good. It's like being in a workshop where all the tools are in just the right spot. I figure if I'm going to spend 8 hours a day coding I want it to feel really nice. And it does.