well if you're programming you're likely using regexes and calling programs such as grep and sort which work like vi. You can also set up your shell to work like vi so whether you're inside or outside the editor things look and feel the same.
I *do* actually know quite a bit about regular expressions, but I've very rarely found any need to search with regular expressions while programming. Yes, I've used grep to search include directories and third-party source directories, but I've
almost never needed an actual regular expression as part of the search. I can only think of one example from four years of full-time programming, and I doubt vi would have been helpful with that (sed or awk used recursively on a directory would have been the equivalent of what I did in Xcode).
I know different people have different ways of doing things. I've never been much of one for keyboard shortcuts. It's easier
for me to visually remember where a command is rather than to remember what keyboard shortcut goes with the command. The visual memory happens automatically, all the time, and is easily retained, while shortcuts and commands must be painstakingly memorized and are easily forgotten. Despite the fact that I've used pico for a decade and a half, I still have to look at the bottom of the screen to remind myself how to search. I know exactly where it is on the screen, but I forget the command because I rarely need it (cut and uncut, I remember because I've used them enough).
Oh, and I have almost the same low opinion of "info" because every time I try to use it, I get frustrated that it doesn't work the way I think it's likely to work, and then I just go use google to find documentation.