The Vim Learning Curve is a Myth
We're live
Live on Twitch!
thoughtbot is livestreaming
Work alongside the thoughtbot team as we collaborate with each other and our clients, live. Ask us anything, we're live right now!
Menu
Let’s get started!
Back
View all Services
Development
Ruby on Rails
Hotwire
AI and Machine Learning
Maintenance
Mobile
Design
Shaping Sprints
UX, UI, and Product Design
Design Systems
Product
MVP
Product Management
Accessibility
Team and Processes
Team Augmentation
Fractional Leadership
View all Services
Back
Healthcare
Finance
Insurance
Back
View all Resources
Development
Tech Leadership Resources
Open Source
Books
The Bike Shed Podcast
Live Streaming on YouTube
Conference Talks
The business of great software
Playbook
Giant Robots Smashing Into Other Giant Robots Podcast
Design Sprint Guide
Live Streaming on LinkedIn
View all Resources
I’ve been speaking about and teaching people vim for several years now, and I’ve<br>noticed a surprising pattern: people are literally afraid of learning the<br>editor.
Over the years, the popular mythology around vim has become that it’s insanely<br>difficult to learn; a task to be attempted by only those with the thickest of<br>neck-beards. I’ve heard dozens of times from folks who are convinced it will<br>take them months to reach proficiency.
These beliefs are false. Here’s what’s true:
You can learn to use vim in 30 minutes
Go to your shell and type vimtutor. The tutorial that’s presented is excellent<br>and you’ll be through it in no time. Once you’re done, you’ll have the rudiments<br>needed to get your work done. You won’t be fast yet, no; but you’ll be<br>competent. And even after those 30 minutes, you’re going to start grasping the<br>ideas that make vim so amazing: the brilliant design decision that is modal<br>editing, the composability of commands, the clever mnemonic naming of commands.<br>These will be enough to make you want to learn more.
Learning vim is fun because it’s game-like
No one ever says “I’d love to learn Street Fighter 2, but there are just so many<br>combos!” People don’t say this because learning a game is enjoyable. You start<br>off with just the basic kicks and punches, and those get you by. Later, you<br>learn more advanced moves, maybe even by accident.
Learning vim is like this. At first, you do everything as simply as possible.<br>Then you start to wonder if there are faster ways to get things done, and there<br>are! If you chain those commands together they just work! You bump into things<br>accidentally, or maybe you spend some time in the extensive help files. Over<br>time, you burn a few advanced tricks into your muscle memory.
Soon, you realize there are many ways to accomplish your edits, and you strive<br>to do them in as few keystrokes as possible. This can be incredibly satisfying,<br>particularly to us technical-types that seem to have a higher-than-average<br>appreciation for efficiency. It may be hard to believe that trimming one<br>keystroke off a command will one day trigger a dopamine response, but I swear<br>it’s true. Just ask these guys.
You’ll be faster than your old editor in two weeks
If you use vim all day and make an effort to use it well, you’ll be editing code<br>faster than you did in your old editor within two weeks. A couple tips to help<br>you on your way: keep a cheat sheet of commands you’re trying to commit to<br>memory, find a friend that’s an experienced vim user for the many questions that<br>you’ll have in the beginning (ask in #vim if you have<br>no such friend), and pay attention to things you do that feel inefficient<br>(there’s almost definitely a better way). If none of that works, reach out to<br>me on twitter and I’ll try to help you out.
It’s effing worth it
There’s a reason everyone at thoughtbot is using a 20-year-old text editor.<br>There’s a reason I’ve flown to other countries to try to convert more vim users.<br>There’s a reason people love this editor. Maybe you should find out why.
Good luck! And happy vimming.
What’s next
If you found this useful, you might also enjoy:
Onramp to Vim on Upcase
Vimulator
Running Specs From Vim
Or, join a Vim enthusiast meetup near you:
Stockholm Vim Meetup
Boston Vim Meetup
San Francisco Vim Meetup
If you enjoyed this post, you might also like:<br>Hackety Hack: A Growing Contingent<br>thoughtbot is filled with vim and vigor<br>2009 Rubyist’s Guide To A Mac OS X Development Environment
Sign up to receive a weekly recap from thoughtbot
Your email address
Subscribe
Looking for even more ways to stay connected?
RSS feed
Check out our feeds
About thoughtbot
We've been helping engineering teams deliver exceptional products for over 20 years. Our designers, developers, and product managers work closely with teams to solve your toughest software challenges through...