Week three of Vim

I'd played around with Vim before this summer; the weird compiler setup for a programming class had me SSHing into their computers and using Vim while my classmates struggled with the lag of VNC. But I struggled with the editor; I spent most of my time in Insert Mode without learning any commands.

I'd always wanted to learn Vim, though. It's a lot more cross-platform (and free) than the TextMate I've used for years, and I was unsatisfied with gedit on my Ubuntu install. This summer, I vowed, would be the summer where I gave Vim a shot.

I'm on week three, and I love it. I'm still hardly fluent, but I want to be. Here's what I've learned so far:

  • Vim has a steep learning curve; I feel it's worth it. Vim wasn't quick for me to pick up. I spent the first week confused, spending lots of time navigating around with a sparse vocabulary. I still find myself opening cheatsheets, but I'm seeing the fruits of my effort even a few weeks later.

  • There are a lot of great resources online. VIM Adventures teaches you basics with a game; VimCasts is helpful for concepts like windowing and indenting; the Vim Tips Wiki is full of wisdom; Tom Ryder has a great post about becoming a Vim user.

  • It's hard, but you can break your old text editing habits. Don't let yourself use the mouse. Stop the arrow keys from doing anything. Avoid your old editors when you can.

  • Building my own vimrc and installing plugins by hand has shown me two things: first, I have an understanding of how Vim is put together. Second, Vim is absolutely ridiculous -- it can do anything. It's very helpful to do a GitHub search for dotfiles to see what other people's configurations look like; YADR is my personal favorite so far. I don't think I would've learned as much had I copy-pasted someone else's configuration -- reading through it and cherry-picking things I like was much more educational.

Hopefully, I'll be a full-bearded Vim wizard by the end of this summer! Wish me luck.