I’m republishing this article to preserve memories—like keeping old photos. / This content comes from some of my older blogs which I lost access to long ago, but are miraculously still online. Given their age (and how young & inexperienced I was when I wrote them), these articles aren’t meant to be learning resources, but more of a look back at my past work for myself.
So, recently I’ve been doing a lot of stuff. Mainly concerning
reverse engineering, but I was feeling a bit off. I decided it’s time
for a change. Since after all, I don’t even have the time to watch a
movie longer than thirty minutes, not saying anything about playing a
game, I thought it’s going to be a good idea to ship myself over the
linux system. I’ve chosen Ubuntu, because the time when I had a patience
to configure everything in my PC from the bottom-up passed… and it’s
looking great. After that, I’ve set up my environment. Got my browser,
social communicators ready, checked the compilers, and I started looking
for my new code editor (since notepad++ doesn’t work in here). I thought
about Vim. I gave it chance not so long ago but it didn’t fit me. Didn’t
know why, because it has thousands of positive opinions and it’s highly
customizable. Now I do. Jumping into such a complicated application
right from where you’re standing is a terrible idea. I mean, first
version of vim was actually running in a console environment. No mouse,
no fancy looking windows, no beautiful colors, just black background and
some text. It takes some time to learn all the commands, all the hotkeys
to even think about staying with Vim. This time I decided to take it
slow. I’ve done vimtutor, read some manual, wrote a simple cheat sheet
on paper with all the useful commands and keys, did a bit(!) of
configuration, and I still felt that something is terribly wrong. I
realized that I was using gVim… Yeah, you might think, “What’s the
difference?”. The answer is, “This is not how vim was intended to be
used!”. I’ve switched to the terminal, and you know what? Now I feel
like at home. Everything is lean and clean. A bit of transparency to my
console window, some graphical tweaks, and voila! Couldn’t live without
it.
The thing about Vim is that everything you do, you can do without taking your hands of the keyboard. That’s simply amazing. Most of the code editors I’ve been using were aimed at regular people, who didn’t have time, nor patience to remember all the hotkeys or commands an application could offer them. So I had to spent half of my time looking for certain editor functions in menu. Now I don’t. I’ve got everything I need in one place. Want to turn something on? Sure, go ahead, type it! Want to make something permanent? Open your configuration file (with edit $MYVIMRC) and type it. That’s amazing how it boosts productivity.
My advice to anybody who wants to use Vim: Take your time.