We don’t have enough time to learn everything. But. more often than not, it comes down to being plain lazy. This post is about switching it up to learn something new.

We tend to fall in love with our tools and technology stacks more than we are willing to admit. Inside-out knowledge of our tools allows us greater productivity, control, and skill.

However, that deep-rooted perspective can blind us in very subtle ways.

While you may write a single-page application knowing everything about Ember and nothing about Angular, you can’t dismiss the fact there are some things—no matter how small—that you could have only learned coming the other way around.

Sure, we don’t have enough time to learn everything. But, more often than not, it comes down to being plain lazy. This post is about switching it up to learn something new.

Take me, for instance.

I love Vim. I can’t imagine using any other text editor. However, I spent the last few months working mostly in Emacs. Why would I do that? Well, I wasn’t asked to do so, nor did I meet an Emacs evangelist. I just thought it may be interesting to see things from a different perspective than usual.

Was it worth it?

From the first day of my Emacs adventure, I made three improvements to my Vim setup. Even though I didn’t end up using Emacs as my editor of choice later on, it helped me make the following discoveries:

Support for REPL in Emacs is really great. I must admit, I wasn’t using features of any full-fledged REPL integration before this. Now, I cannot imagine my Vim config not including the vim-slime plugin.

Kill-ring is another feature which blew my mind in Emacs. As it turns out, it can be easily added to Vim thanks to plugins like the vim-yankstack.

Emacs also includes named bookmarks out of the box. It’s great for keeping marks in long YML config files and, as it turns out, it can be added to Vim by yet another plugin: simple_bookmarks.

The above points are not meant to get you to use these things, they’re merely an illustration of why it’s important to work from a different technology perspective. You can learn or acquire surprisingly cool things by simply stepping out of your comfort zone for a moment—for developers and programmers, this means tinkering with different tools and technologies.

Today, I’ll be doing a little bit of refactoring. While Vim has some support for Ruby, thanks to the vim-ruby-refactoring plugin, it might be better for this sole purpose to pickup RubyMine IDE. I know it won’t become my favourite text editor, but it most certainly will change how I feel about refactoring tools.

What tools or technologies will you choose today? Pick something and give it 30 days to sink in. Maybe you’ll stick with it, maybe not. But do try to take as much as you can and make your beloved tools even better.

It’s a win-win!

If you'd like to try out Vim, make sure to take a look at our a handy set of Vim Hacks for a start!