The vi vs emacs thing never dies. Luke has a nice rundown on Why Vim?. First up is a graph of learning curves – realistic humor. Then there are pictures of the terminal Bill Joy was using when he wrote vi and the influence that terminal had on the user interface.
There is also good vi background that puts context on how it works. “Yan Pritzker apptly explained it like this: vim commands are like a language you can learn”.
“if you are using Java you should probably keep using Eclipse. Similarly you probably shouldn’t ditch Visual Studio and hack your C# code in vim. Emacs and IDE’s are useful – they have tools that will make your life easier. The IDE’s don’t have vim’s raw text manipulation power, but they make up for it by having great integrated debuggers, GUI building tools and etc. But if you are hacking in Perl, Python, PHP, Ruby or something like that, vim is usually a good choice.”
As always, the key is to pick the right tool for the job and learn how to use that tool properly. For one-off and occasional text editing, vi doesn’t take too much to be able to get around but a notepad type GUI editor might be easier to handle. When it comes to serious text mangling, though, vi is a very very powerful tool and it is available on nearly every system in common use.
There is one underlying technology behind vi and many other text manglers that is the real learning curve problem. That is the technology of regular expressions. Learning the command structure of a tool is a simple 1:1 memory thing. Being able to use regular expressions to find and modify selected text in a large block requires capabilities in problem solving, symbol manipulation, and creativity that are not easy to acquire.
Post a Comment