You know the meme about Vim? The one where people are stuck for an eternity in Vim because they don’t know how to quit?
My question is: why would you ever want to quit Vim? 😀
I’ve heard some people say that you have to be autistic if you want to know well how Vim works. Why would you ever need anything else aside from Notepad++?
(this reminds of another famous prediction – probably not based in reality but still nice – involving 640k of RAM that ought to be enough).
I’ll tell you why. Because 90% of time doing devops/dev you’ll be spending it inside a text editor or terminal (better yet – a text editor with a terminal win inside it – which Vim can do).
It’s all about text in development. Everything is text. Everything is text manipulation. Especially for a devops engineer, sysadmin or even software developer.
Scripts, config files, documentation, logs, infrastructure. Yeah, even the damn infrastructure is text (for the purposes of management and provisioning data centers and hardware).
Knowing this how can one claim that a text editor is not important? Or ever worse – that it’s alright to be ignorant of the power of your text editor of choice?
I’d say that the text editor is the most important piece of software that you will ever learn. Libraries come and go. A good text editor though? Will be with you for decades. You’ll use it daily and it’ll occupy a huge chunk of your work hours.
“But, but I can use an IDE these days. They have nice GUI’s, shiny graphics, mouse controls and a very easy learning curve.”
Try to use an IDE over ssh (in theory you could with
ssh -x, in practice, not so much). See how easy that goes.
(VsCode has remote editing capabilities using a ssh plugin. Quite good and easy to setup. It might be what you need in certain situations when you have to use an IDE)
Far from me to say that IDE are useless. They have their established place in the hierarchy of software development and should be used accordingly (VsCode is very good).
If you have to use an IDE then use an IDE. But whatever you use – text editor or IDE – know it well! Know your tools my friend and your tools will reward you. Be ignorant of your tools and most often than not they’ll bite you in the a*s.
“But even if I have to ssh and work remotely I can still use nano. I don’t want to bother with vim. It’s too complex for me”
Complex it may be but the more powerful for it’s complexity. It’s true that it will take a brave and stout heart to learn vim well. But the rewards are commensurate. And don’t forget that you are actually making an investment when you learn Vim.
Let me put this way. Let’s say you decide to be a carpenter for the next 20 years. How well should you learn to use carpentry tools? Will the hours spent learning the tools be worth the next 2-4 decades of usage?
If you are serious about your profession you should be serious about your tools.
I’ll publish soon a compiled list of fairly unknown (but powerful) Vim tips and tricks for you, my reader. This way I hope to entice you to what is one the best text editors in the solar system.