I wouldn't consider vi usability to be overall bad. Sure, affordance ("is it easy grasp which moves i can make without affording much cognitive effort?") is terrible.
Setting up a decent environment is also a huge pain to get started with, but nowadays you can just hop into a prewarmed pool with premade setups like Normalvim or LunarVim.
But usability is not just "is it easy to learn", it's also "once i know it, how hard is it to use"
Once the moves are ingrained in your (muscle-)memory it becomes so incredibly efficient. di{, dat, yaf etc. are just the low hanging fruit, once you start with regex, macros and plugins the fun really begins.