The first time I heard about Vim I didn’t even know what it was. I started to search about that and asking around … and in general people avoid to use that. Some say it is time consuming learning vim, others don’t want to suffer, others say that you can really make your workflow more efficient, but in general, people don’t want to go into it.
Why I Choose Vim
The rumours about the “end” of the Atom made me start thinking that I should start using VS code, but I wanted to try something different. In the company where I work, there’s a lot of people using Vim, and that made me more curious about learning it.
Two weeks ago, I had the opportunity to have a vim session with a Vim enthusiast, but before starting, he asked me if I really, really wanted to do it. He warned me that I would face a reasonable level of frustration … but that didn’t keep me from doing it.
Vim was not completely strange for me. Before this session, I already knew some basics that I learned by using Vimtutor. To practice what I learned on vim tutor and while using Atom, I installed a vim plugin to start using some commands. The experience was surprisingly nice. Without a dramatic change in my workflow, I could try it, but soon I saw a problem with that.
By using a vim plugin, I never got out of my comfort zone, and I could always still use the code editor as I used it before. Sometimes I found it confusing to have two ways to use the editor (the atom way or the vim way), and as a matter of laziness, I opted to keep using my regular shortcuts.
But, if I wanted to jump into Vim, the better way to do it is used it and configure it.
That was the turning point, and since then, I’m forcing myself to use Vim exclusively. I know that it will slow down my workflow for a while, but I believe that soon, I will know enough to use Vim to my advantage.
Pain points and findings
After I made this decision, and because I’m a frontend developer, I started looking for a vim setup that fulfilled my frontend needs, and I found one. ( https://github.com/VictorVoid/vim-frontend/).
At that time, I thought this was awesome, and I started using it.
After that vim session, my friend advised me to uninstall that ready setup, and start with the essential plugins. I had so many plugins installed that I didn’t know what their functions were.
I only knew that everything was working. I also realize that the fewer plugins I have, the better, and some commands are personal. Along with time, I will create my commands if I feel like it.
It has been almost a month since I started using Vim. I’m still struggling and I probably will for a while, but I see some improvements already. Besides that, I’m improving my skills on the terminal, and I started collecting information to “create” my .dotfiles and git-scripts.
Some tips to learn vim
Use post-its to learn the commands, and put them on the bottom of your screen. Remove them once you have these commands in your memory and you don’t need to look at the post-its anymore, Simple!!
In fact, this is useful for other things too, like memorizing git scripts.
→ I found a cool tutorial from Thoughtbot ( https://www.thoughtbot.com/upcase )
→ Youtube channel with nice screencasts ( https://www.youtube.com/channel/UCXPHFM88IlFn68OmLwtPmZA)