Will it make me type faster and think faster? I spent 6 months working in a doctors office were I had to type every word spoken for 7 hours a day, the block here is not my efficiency, it is in fact my intelligence.
Will it make me type faster and think faster? I spent 6 months working in a doctors office were I had to type every word spoken for 7 hours a day, the block here is not my efficiency, it is in fact my intelligence.
Vim is very well suited to programming because we spend a significantly longer time thinking about, navigating and modifying code than actually writing it.
That's how most people do programming and Vim is ace for all of that thanks to:
* text-objects and motions to fly through your code and edit with laser-like precision in as few keystrokes as possible
* counts to perform repetitive actions in a flash
* ranges for when you want to act on a specific part of the file
* incsearch
* :global
* macros
* :s/foo/bar
* etc.
When it comes to actually write new code, Vim doesn't help much. Well… if you don't consider:
* filename completion <C-x><C-f>
* keyword completion <C-n>
* line completion <C-x><C-l>
* <C-r>= to insert the result of an expression
* <C-y> to input the char above the cursor
* etc.
But then again, we are talking about programming, here, and nobody ever pretended that Vim was the answer to every problem. Or even your problem, for that matter.
In a situation like yours, I'd probably use something like Dragon or simply use stenography like my secretary mother did 30 years ago. I'm very much in love of Vim, actually, but I wouldn't recommend it to anybody that is not a somewhat experienced coder. And even then, there's an entire population of programmers who spend their days generating code, fighting against OOP hell and refactoring refactorings. Those people would probably not derive any benefit from using Vim. Just like you. And nobody is trying to sell them Vim. Just like you.
Use the right tool for the job.
No, but syntax highlighting greatly enhances code readability and your brains ability to recognize what types of objects or properties or functions are being represented in code. Associating the color blue with a variable declaration, for example, is just there as a visual cue or shortcut for your brain.
I understand your point that it can be done perfectly fine with notepad, but let's not pretend that these visual cues don't give your brain a jump-start.
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.