Twitter GitHub Facebook Instagram

Daniel Irvine on building software

The importance of katas

28 June 2014

Yesterday I recorded my first kata. I was pretty skeptical about the benefit of doing such a simple exercise over and over, but it turns out that there’s a whole bunch of benefits.

Most importantly, it’s been a great way to get over a Vim plateau. Previously I’d been happy with knowing a couple dozen shortcuts that I used regularly. I was satisfied with that because I was still working much faster than I would be with any other IDE. But by doing the kata I was able to stop and think about each and every keystroke I was using, and eventually replace dud key motions with shorter commands.

For example, using =3k to reformat the previous three lines rather than using Ctrl+V k k k Shift+I <space> <space> Esc. Or using :.,+2s/2/coin/g to search and replace all occurrences in a block rather than using a combination of h j k l ..

I’ll be recording a lot more of these and I’d encourage you to do the same. There’s a good list of katas on that will help you get started.

About the author

Daniel Irvine is a software craftsman at 8th Light, based in London. These days he prefers to code in Clojure and Ruby, despite having been a C++ and C# developer for the majority of his career.

For a longer bio please see To contact Daniel, send a tweet to @d_ir or use the comments section below.

Twitter GitHub Facebook Instagram