Once, during a FISL (International Free Software Forum) here in Brazil, I ran into an engineer from Sun. He warned me I should switch from vi to emacs because prolonged vi usage causes hair loss.
I thought he was joking, but after we took a short tour around the many laptop-toting geek gatherings and we realized bald and near-bald vi users outnumber bald and near-bald Emacs users about eight to one.
Since then, I have decided I would start using Emacs or, when that's not possible, at least try to use joe or nano for those same editing tasks.
Maybe the guy is going bald and wants to do something about it. Let he switch.
I would venture to guess the reason behind these findings is vi users have a greater median age than emacs users (based purely on the fact that vi has been around longer).
Testosterone could be an explanation, but Emacs users tended to be more hairy than vi users in all exposed areas. Testosterone would explain baldness in vi users but would not explain all the extra hair Emacs users have.
I remember when I first started using emacs, the hardest thing was simply remembering to type 'emacs' instead of 'vi' at the command line.
At one point I had 'vi' aliased to 'emacs' but I stopped doing that because I shared my account with some friends and they got really freaked out by it.
That said I have used vim for at least 3 years and I have evaluated emacs a few times, but I come crawling back to vim. For me vi is like zen, so simple, yet so complex. Another thing I like about vi is how key bindings make sense, e.g. to delete 2 words I type d2w (delete 2 words), it's lighting fast and very easy to remember - and currently I don't even think when I edit, I just do.
I am looking forward for the next posts to hear about his arguments for doing such a radical switch.
Emacs and vi(m) are both rather good text editors, esp. for code and structured text, but in fundamentally different (and complementary) ways. Find which fits your style / needs better, learn it, use it well. The end.
The article doesn't present any reasons to switch to Emacs, just reasons why he had not previously switched.
I realize that the editor war has passionate individuals on both sides of the fence, so I'll choose my words carefully.
In terms of Emacs versus Vim, I'm agnostic. It seems like as long as you're not doing the hand-on-mouse-hand-on-keyboard dance then you've solved the Editing Problem. Maybe some people have become super-productive after switching from one editor to the other, but it seems rare.
Personally, I was introduced to Vim a couple years ago by a coworker. I liked the idea of never using the mouse while editing, so I memorized the new workflow and haven't looked back. There are two reasons why I haven't been interested in switching to Emacs:
1) The Vim key bindings have been burned into my brain over the course of two years. I even close popup dialogs by accident sometimes, because I often press the ESC key after typing anything.
2) The ViEmu Visual Studio plugin ( http://www.viemu.com/ ). As far as I know, there isn't an Emacs equivalent. And yet, even if there were, why switch to it? The value is in the ability to not take your hands off the keyboard, which the Vim key bindings already provide. So that would simply be trading one set of key bindings for another.
In summary, certain tools work for certain people. As long as people are using quality tools, why does it matter which one is used?
Because the article it is only part 1 of (2-3), right?
--
Hence, I've decided to write a small (2-3) series of blog posts on the issue, to future memory. The post you are reading is about why, since a few months ago, I wasn't willing to give Emacs a try, and how I've changed my mind.
--
I still do the mouse-keyboard dance because switching windows, and switching input fields within windows, in the Windows OS is so awkward (or sometimes impossible) with a keyboard. Maybe Windows 7 needs iswitchb mode or something.
So, The Editing Problem exists in the context of an entire OS not just a single window, but on top of that it's not just about moving the cursor and changing the text - text editing can be improved when the program has the ability to work with the text on a higher level, e.g. changing the serial number in a zone file instead of changing line 3 chars 10-20.
Emacs is more suited to this style of work because of its built-from-its-own-scripting-language spaghetti nature.
Which brings me to my last point - the biggest problem with text editing is all those stupid, different, difficult to parse, non-lisp file formats that Linux is littered with! Grr! And XML! Grr^2! ;)
That's because many key VS contributors are Emacs users! Sometimes, during heavy code churn, major features break or otherwise can't be trusted. You have to revert to your text editor of choice and printf style debugging.
I like the the "hand-on-mouse-hand-on-keyboard dance" because in web programming you're often typing just a few lines into a file and then switching to another file. Using a mouse with a GUI file tree is a hell of a lot easier than anything the ancient text editors offer.
Maybe he was just bored. Even though that may not be a good reason to switch, if I'm completely honest, it has been the reason for many of my own switches from one technology to another.
I think he meant: "While vim is a great text editor, I stick with Emacs because it's pretty much an OS in its own right, and even a crappy OS is better than just a text editor."
Apparently the '>>>>>' operator is defined as "divides your total karma score by 2^N". I hope for his sake that the value of 'text editor' is small. :)
I thought he was joking, but after we took a short tour around the many laptop-toting geek gatherings and we realized bald and near-bald vi users outnumber bald and near-bald Emacs users about eight to one.
Since then, I have decided I would start using Emacs or, when that's not possible, at least try to use joe or nano for those same editing tasks.
Maybe the guy is going bald and wants to do something about it. Let he switch.