But I still pose the question, why is it worth the time to learn what is considered a complicated IDE (if it needs to be taught)? Would the time not be spent better, say, being genuinely productive, rather than merely preparing for future productivity?
We live in the here and now, my boss wants to hear that my project will be done on time, not that it will be a week late because I need to learn the more fickle aspects of an IDE he didn't sanction before I can finish it.
Little things like jumping to a function with pressing a button, or finding all things that are referencing a function\class\etc are extremely useful, but certainly not necessary. Then things like intellisense are a godsend.
That being said, a lot of my time is spent out of visual studio, but with Sublime Text which add's a lot of things that simply make me have to type less, and focus more on the actual task at hand.
why is it worth the time to learn what is considered a complicated IDE (if it needs to be taught)? Would the time not be spent better, say, being genuinely productive
Why delegate work when that takes time you could spend doing the work yourself? Because you can't do everything. At some point delegating starts to pay a return on the effort.
The goal is for You + Computer to create a system which is greater than the sum of its parts. For you to use the computer as an external brain.
If it's just you and notepad-as-typewriter, you're doing all the work.
You shouldn't spend a week learning about an IDE feature in the middle of your project, but you should eventually spend ten minutes to learn to write a macro instead of making the same change seventy times, and maybe you should spend an hour and a half wiring your editor up to your favorite static analyzers and compiler so that you can test and debug your code quickly over the next month.