After writing about the history of Vim, I wrote a post where I told you what you can expect from my upcoming book Mastering Vim Quickly.
Today, I will try to mention as many as possible reasons to learn Vim. So, if you’re a beginner with Vim and you’re not sure should you keep learning it, or if you only think about learning Vim, this post if for you.
This post is not going to cover awesome Vim features as reasons to learn Vim, so if this is what you expect, don’t lose your time on reading.
So, here is the list of reasons why to learn Vim:
Vi is guaranteed to exist on all Unix systems and exists on most Linux ones as well. That kind of broad coverage makes learning it worth it – because, if you know Vim then you know Vi as well.
Vim is free and has a vibrant community
Vim works over telnet & SSH connections. There’s no better way to edit files remotely via terminal than using Vim. Sysadmins know this.
Vim’s configuration is portable. You just need to copy a few directories and files, and that’s all.
Vim compiles/has precompiled binaries for almost every OS out there. You will never have to post “I need a [some text editor] alternative for [some OS]” anymore. You’ll have Vim instead!
It’s also usually very fast and lightweight even when editing huge files of source code. Seriously huge.
If you’re a programmer who edits a lot of text, then it’s important to learn an serious text editor like Vim. Serious text editors are highly optimized to perform the kinds of tasks that you will be doing a lot. For example, adding the same bit of text to the end of every line is trivial in Vim, but ridiculously tiresome otherwise.
If you plan to configure anything in a Unix based system likelihood is you going to be editing a fair few config files, therefore you’ll want to learn a terminal based editor, of which Vim is one of the best.
Vim allows you to easily code without taking your hands off the keyboard.
Your fingers very rarely have to leave the home row, which means you’ll be able to edit text very, very quickly.
It starts up faster than any IDE or text editor I’ve used, and it has many powerful features.
It helps you focus on the coding process itself, you won’t be using the mouse at all to deal with it, that’ll save you a lot of time when you’re just writing code.
It’s fun! Editing text is like a game to me now. I sincerely enjoy it – which is pretty ridiculous, when you think about it.
If you’re working remotely, there is no choice to use Eclipse or similar GTK based IDE. You can do everything with Vim: source control, SQL, debug, compile, browsing – really fast browsing even over 1 GB source code. Visual Studio or Eclipse couldn’t handle all of this.
There are a lot of good plugins out there which add a lot of functionality.
Vim is a really good tool once you familiarize yourself with it.
It has a reputation for the quality and the completeness of its docs. That’s true. Vim is thoroughly documented. You will find most of the answers to your questions in its help system as soon as you will manage to stick the proper keywords in your help queries.
You might want to learn Vim because many people think it is cool.
You don’t have to press Ctrl or Alt all the time in order to run commands or shortcuts.
It’s much quicker to use vi for a sudo edit: $ sudo vi. For example, if you run text editor 100 times a day, with typing sudo emacs, you’ll have to make 300 keypresses more! Okay, this is a joke :) chill out emacs guys (and yes, I know that there’s something like alias :) )
Vim is addictive. You will find yourself wishing you could use Vim commands in all your computing, and cursing whenever you can’t. For example, I use Google Chrome with Vimium extension, so I surf the Internet without a mouse or touchpad. How cool is that!
On the end, have have to add that Vim’s usefulness depends on what you’re working with. If you’re an Java/C#/etc developer, you’ll most probably be more comfortable with an IDE.
But if you work with Python, Perl, Ruby, C, web, etc. or you’re a system admin/devops, Vim is the way to go. Vim is fast, powerful and does everything you need.
Over the years, Vim got a reputation that it’s really difficult to learn it. I’ve heard many times from guys who are convinced it will take them months to reach proficiency. That’s simply wrong.
That’s why I’ve started to write a book: Mastering Vim Quickly (from WTF to OMG in no time) which will teach you Vim the way I learned it – easily and quickly.
If you want to get updates and sample content from the book, leave me your email below, and I’ll make sure to keep you updated. You could also go to Mastering Vim Quickly page and check it out.
If you liked the post, we should get connected - follow me on Twitter