Adam Leis

Gamify Neovim Learning

I recently finished an excellent conversation between DHH, Primeagen, and Teej (about 1:24:53 for this part of the conversation). In that conversation, DHH is asked about his experience using Neovim. I’ve often considered trying to learn it better and actually using it as a tool. Prime hypes it really well, and I admit that sways me.

My most recent itch was not from Prime though, it was something DHH said. Or better, it was how he described learning Neovim. He likened it to doing a “sick combo” in Street Fighter. This idea of gamifying the use of Neovim might be what I need to get me started.

My main reason for not jumping in yet is the known time requirement needed to really get started. Configuring everything seems a daunting task. I’m not alone in this, I’m sure. My work is already so “go go go” trying to get projects done; my personal projects are allocated so little precious time that I don’t want to be slow there. It’s tough to get started. I believe though, once I get started and just start trying to use it, that’ll be the bump I need to pass to succeed.

Mindset shifts make all the difference.

Back to gamifying learning Neovim, if I think of the motions as game combos, would that make it easier, dare I say more fun, to learn it effectively? Mindset shifts make all the difference. Maybe this would be enough to get started with the motions, at least.

Given how much I type just for work, learning Neovim and getting really good at it has obvious value. The niche bragging rights of being proficient with it is also cool. I’m frequently wrestling with the ROI though. I suppose if I type 5 solid hours a day on average, and if I can be more efficient at that 5 hours, maybe that’d be enough.

The benefit of just learning something is also enough to be enticing. Couple that with the difficulty level of learning and the leveling-up that happens naturally, and it’s really enticing. That dang starting bump though… That is both the smallest and largest mountain to conquer.

Isn’t it always?