From Clicks to Keystrokes: My Journey into the Vim
A nostalgic yet fiery journey from Sublime Text to embracing the Vim cult, battling the learning curve, and ultimately finding enlightenment in Neovim's efficiency and freedom. 🚀💻
Table of Contents
Back in the days, it was somewhere around when I first started my developer career, I was a Sublime text fan, most of you may have never herd of it but it was like “winrar” which kept bugging you for activating it but never obstructed you from using it. It was a good time. I was happy and I was productive. Sometimes, I used to give jetbrains a try but it soon phased out after my crack stopped working and I as a junior developer didn’t have enough salary to pay for their plans while paying my rent.
The curiosity phase
Then one day I saw my senior dev going absolutely bonkers on a terminal, at first I thought maybe he was trying to deploying something on the server via ssh but every time I passed through his place he always had the terminal open. It kept bugging me so much, why that guy always has his terminal open, he makes so many changes to the code but I never see him open any text editor, what was he doing, it always kept bugging me. I knew VIM was the editor but the idea of a guy who would code the whole shit in VIM never crossed my mind. Since I was new to the company I never asked him.
Then after a month I switched to new company, it was all going good but then came a turning point which peaked my interest. One day I was having a talk with my senior dev and saw him going through terminal just like the guy from Matrix in the previous company. But this time, I just asked, “What are you doing and the most important thing is how are you doing this”, rather than using a text editor.
The impression of the cult
Then my fellow senior elaborated how he is learning emacs after mastering vim and it has absolutely made his life better. The thought that was going through my mind was - “what the F is this guy talking about”. A rooted behavior of not using a mouse instantly made me think that there is no way in a world you could be more productive on a terminal than using a mouse.
- how are you even going to select the text
- how is he even planning to scroll and quickly find the functions
- how is he going to go through function definitions with alt + click all of these random thoughts started coming through my mind
Speech from the priest
Then on, the conversation went on like this.
I started doing some counter arguments to his text editor like, you can do this on my text editor, but you can't possibly do that later
I have never been impressed by how oblivious I was, I always had that thought that you will need mouse at some point in your life to work in a text editor, but I was so wrong. The priest preached me such a holy facts that I was totally impressed by how much this small text editor could do, while not moving your hands off the keyboard. I was interested, I was ready to wear that white robe and walk through the ritual and accept the cult. I was brainwashed and I was liking it.
Accepting the cult
After that, I came to computer. I didn’t knew what to do, I always believed in my god, but this was the time the Buddha himself gave me speech. I couldn’t back down, I had to walk though the path of burning coal to get that enlightenment, I had to accept the suffering. It was time, the time to install a new text editor which we all know as vim
The first run through the madness of burning coal walk
As the title suggests, the only thing that was easy was installing the vim. After that I can’t even imagine how much painful it was. I sucked, I sucked so hard that even my keyboard would have 3-4 orgasms per minute by the sheer amount of sucking going on.
Becoming a masochist
As Steve Jobs once said, it went something like this “It was about connecting the dots”, you never knew the experience and skill you got on one thing could come in handy somewhere along your life and you never know. Now don’t go too far and think I remembered something and quickly grasped and learned vim. What I meant to tell was, the thing that gave me the power to accept the suck was “Dota 2”. Yes, you heard that right, but might be wondering how the F it connects to this?
Well, let me tell you few things about Dota 2. It’s a MMORPG game which has quite a bit of learning curve. When I first learnt it, there were no guides telling me what to do and how to do it. Every day I logged into the game, sucked ass and repeated only to get good at long run. What Dota taught me was that, perseverance is the keep to mastering a thing.
I was not going to to fumble so easily, when my opponent is not the SEA players, I thought I can absolutely do this. I can absolutely accept some pain and go through this. I can learn vim. I will be good, I will memorize the whole damn thing in my muscle memory and get good. I was ready, I was becoming a masochist.
Becoming the priest
It took me few weeks, slowly but surely I was jumping around everywhere in a breeze. Vim motions were being engraved into my muscles. They were becoming one with me. Morpheus already offered me the choice and I had already swollen the red pill, there was no going back. I was figuring out “how deep the rabbit hole goes”, I was becoming the priest of vim cult. I was getting good.
Cryptonite
As of today, all other text editors have turned into my cryptonite. Every time I touch them, the sheer feeling of not having a good vim motions making me feel like I am becoming a mortal, every second I go down with my arrow keys and move back and forth with my mouse, I feel like I am slowly dying inside, feeling like batman just inserted that 7 inch cryptonite inside me and asking me to move like a superman. I couldn’t. Give me as much AI as you can, make the whole AI do the god damn work and give me suggestions but it still lacked the most basic thing I wanted, the ability to just go around, wherever I want, whenever I want. Also, the sheer amount of BS of the company that comes along with text editor nowadays makes me suffocate. You want VSCode, maybe you should get the Copilot to get the most out of it or maybe you shouldn’t use wayland because your nvidia driver will F you up, if you want to use cursor maybe you should get that “PREMIUM” the company is offering, it’s VSCode fork but you won’t be able to login, so you should manage your whole configuration by yourself and blah blah. Leave the whole vim motions to the side table, I can accept that if the benefits overcome but the sheer amount of push they go through just to lock you down to one editor they think is the best makes me look like a clown. As a developer, I know learning is what I have chosen for my life and it will be a continuous process. Why would I ever want to stay in one place with no alternatives to go elsewhere? It was time, other text editors were becoming my cryptonite
Epilogue
As of today, I am still using vim, though it’s nvim but the vim remains as a soul. Now, it’s just more easier with lua configs.
- You say AI, I have that
- You say autocompletions, I have that
- You say better performance, I already have that in the bag
- You say better search, fuzzy finding never had a competitor to begin with
- You say better language support, LSP has got me covered for everything For now I absolutely don’t see any reason to move to anything else. Sometimes, I give them the try, just to let that feeling of “Vibe Coding” coolaid go through my veins but it’s not for me. I don’t much care about how much news you throw at me like “Oh, microsoft just release the go compiler for typescript, it’s absolutely fast and VScode is now a lot faster”, you should understand that, just because you give tortoise a wheel it doesn’t becomes a bike. The cult is preserved, I am the part of it and I to this day is much thankful to all the community that worked hard to build this. You guys are great.
Thank you
Hope you have a great day
:wq
Related Posts
How to serve CNN models with Fast API
Recently I have run into an issue with a client who asked me to build a CNN model for certain task. Let’s keep “why” a secret and let’s talk about why I am writing this blog. …
My Editor Setup While Working for Hiboo
I use VSCode. It’s free, simple and runs smoothly on all platforms. Let’s talk about extensions. In past I have used many extensions and after filtering out most of the extensions that …
From Gatsby to Hugo: Why I Finally Let Go
Pretext Around 5–6 years ago, I stumbled upon GatsbyJS while searching for a JavaScript framework that could actually handle everything my personal blog needed: Markdown content Image optimization …