Wax on, wax off

Meta Info

Wax on, wax off
Author: Stijn Dejongh
Published on: 2023-09-10 00:00:00 +0000 UTC
Ammerse Values :
A: Mi: M: E: R: S: Ex:
I fear not the man who has practised 10,000 kicks once, but I fear the man who has practiced one kick 10,000 times
Bruce Lee

Problem statement

You are learning a new skill, and have understood the basic principles or idea. Applying your budding knowledge consistently is proving to be a challenge.


  • Find a repeatable exercise, that fits your schedule, and perform it as often as possible.
  • Gain a deeper understanding of the skill you are attempting to master.
  • Make corresponding techniques second nature, so you do not have to think about how you are doing something while you are doing it.

Contextual forces

What is this? These describe factors at play that influence the outcome of the practice. They are not necessarily good or bad, but they are important to be aware of. Some contextual forces are enablers, giving the practice a higher chance of being useful. Others are deterrents, making the practice less useful in your given context.


  • You are determined to master this new skill.
  • You enjoy the feeling of being in a flow state.
  • There are exercises available, which you can replicate.
  • You are able, and willing, to allocate time for dedicated practice.
  • You are being supported by a mentor, or have other means to solicit feedback on your technique.


  • You give up easily.
  • You are not able, or not willing, to dedicate time for practise.
  • You do not know where to start, and have no means of learning from a skilled practitioner.
  • You have a tendency to jump to a new and shiny thing before understanding yor current objective.


Scene from the Karate Kid film.

  • Identify an easily repeatable exercise1
    • Ideally, the exercise takes a maximum of 30 minutes to complete
    • For most skills, you can find a compendium of recommended exercises online or in books.
  • Perform the chosen exercise multiple times
    • at first focussing intently on how you are doing in detail, going as slow as needed to not make any mistakes
    • repeat the exercise at least weekly, but aim for a higher frequency at first
    • once you are able to perform the required actions without needing to actively think about them, start slowly increasing your speed
  • Revisit your practice regularly, even if you have moved on to more advanced skills and their corresponding exercises. It pays dividends to retrain your fundamentals.


  • Repetition works. Repeating stuff helps you remember. Also, repetition works.
    • Being exposed to the same techniques or ideas helps your brain form new neural pathways, and strengthens existing ones.
    • For physical activities, this is commonly referred to as “muscle memory”
  • Making practise a routine habit, lowers the “getting started”-hump. Making it easier to regularly commit yourself to it.
  • Focusing on a smaller subsection of techniques helps make them manageable.
  • Honing your skills in a stress-free environment allows you to reinforce the concepts and techniques, avoiding debilitating panic reactions.



Code Kata

In software development, the concept of performing “Code Katas” in order to train your fingers and mind is well established. There are plenty of resources available online to help programmers home their skills.

A selection of notable kata are:

More free-form training can be achieved by working on random short assignments. These helps you train your problem-solving, by removing the safety of knowing how to approach an issue. While this is not training in the same way as performing a kata, it can be a useful addition to it.


  1. In martial arts, this is called a “kata”. A kata is generally a select few movements, which are executed in a fixed order at a fixed cadence. Even though these are solitary drills, practitioners are told to imagine they are fighting against real opponents while performing their routines. ↩︎