More PacVim than packed lunch...notes from our recent learning lunches

Engineering

Read in 2 minutes

More PacVim than packed lunch...notes from our recent learning lunches

Our weekly lunch-n-learn sessions are open to everyone in the company, and it’s great to see a real mix of people attending – including two of our new joiners, Ben (who’s joined our back-end team) and Marc (our new DevOps engineer).

We tend to anchor them around a Udemy course (it’s one of the perks of working here that we all get a subscription to learn whatever we’d like) – following along together before practicing what we’ve learned through a few applied tasks, challenges or (more often than not) games.

Lately we’ve been learning all about Vim, the ubiquitous text editor that is found on just about every laptop, desktop and server in the world.

Taking stock

So far, we’ve learned how to create and navigate files (as well as to quit Vim when we’re done!), delete text, and start to ‘think in Vim’.

As a few of the regular lunch-n-learners couldn’t make one or two of the latest sessions, we thought we’d focus on reinforcing what we’ve learned so far, rather than plough on with lots of new stuff.

And, to be honest, that’s proved super valuable in itself. Mastering Vim is all about becoming fluent in the various keystrokes that allow you to navigate text files – and that only comes with practice.

We’ve found a good way of applying our learning is through games. We’ve now played a fair few rounds of Vim Adventures – a fun and interactive way to practice the basic keystrokes – and there’s always a healthy amount of competition between our two frontrunners, Sam R and Rhymes. (We did, however, learn that Marc has completed the entire game – so their victorious reign may be coming to an end!)

Rhymes and Sam R are out in front in the Vim Adventures competition stakes...But new recruit Marc looks set to put them through their paces!

To mix it up, though, we also downloaded PacVim, a PacMan-inspired free terminal game where you have to move the cursor through a mini-maze using Vim commands. The objective is to encounter every letter but avoid the red ‘G’ characters that follow you throughout the maze (PacVim’s answer to the ghosts in PacMan). Although a lot of fun, it was actually very tricky to even get past level 0!

One trick we did find helpful in getting us out of a tight spot when the Gs were coming was to use the gg command. In a normal text file, this takes the cursor to the start of the first line – and in PacVim it takes the player to the first character in the top row of the maze. To complement this manoeuvre, there’s the $ symbol, which takes you to the end of the current line.

Getting help

The one new thing we did tackle was how to use the Vim Help system (which is probably going to be our friend for a while…)

To start the help system it’s :help – or :h for short.

To navigate, position your cursor under the word you want to learn about and Ctrl ] to jump to the documentation, once finished simply type Ctrl o to return the previous position.

And exit it’s :q (as it is for everything else, too).

And that’s that. The sessions are a really fun way to spend an hour with the team while we all make progress on our Vim journey. Next Udemy chapter? ‘Deleting, Yanking and Pulling’. Can’t wait!