What Qlik developers can learn from The Karate Kid

By Barry Harmsen

Karate KidAs you might have guessed from some of my earlier posts, I am a sucker for popular culture from the 80’s and 90’s. On this (apparently) most-depressing day of the year, let me offer you some light hearted, positive reading and share with you five of the motivational lessons that I learned from the 1984 classic The Karate Kid. Specifically, I will tell you how these lessons can be applied to learning Qlik, increasing your skills and expanding your knowledge. Or at least make you smile.

A quick summary of the plot for those not familiar with the movie (shame on you! ๐Ÿ˜‰ ):

Daniel has just moved from New Jersey to California with his mom. He quickly discovers that it isn’t as great as he thought it would be. Daniel doesn’t fit in and a gang of bullies, who are all adept at karate, are making his life miserable. He then meets Mr. Myagi, a handyman who also happens to be a karate master. Mr. Myagi takes Daniel under his wing and teaches him karate, showing him along the way that karate (and life) are not always about power and strenght. Can Daniel overcome his bullies in the All-Valley Karate Championship? (spoiler: yes he can!)

And now, on to the lessons!

1. Wax on, wax off

Let’s start with what is probably the best known quote from this movie: “wax on, wax off”. When Daniel starts his karate training with Mr. Miyagi, instead of learning cool karate moves, Mr. Miyagi instructs Daniel to do all sorts of menial chores. Waxing his (pretty awesome) collection of American cars, sanding his deck, painting his fence and house. Mr. Miyagi is also -very- particular about the way he wants things done, what a control freak!

The chores go on for several weeks and Daniel gradually gets discouraged and frustrated, this man isn’t teaching him karate at all! One night, Daniel decides to confront Mr. Miyagi about why he does not (seem to) holds up to his end of the bargain. The video below shows how this plays out.

As it turns out, these seemingly random chores were indeed karate training! Better yet, Daniel continuous practicing of these defensive moves had made them like reflexes. He didn’t even have to think about them anymore.

So, what can Qlik developers and consultants learn from this? As it turns out, quite a lot!

Practice makes perfect, even if it is frustrating at times

During my classroom and online trainings, students often ask me why my exercises require them to write so much script and expressions instead of just copy and pasting them. The reason for this is simple. Even if, at first,  it can be frustrating and grinding work, writing and reading a lot of script and expressions trains your hands and brain to more effectively process it. Do it enough and it will become a natural, intuitive process for you. Those missing comma’s and quotes that you struggled so much with when you first started with Qlik? You will be able to spot them instantly!

 

2. First learn stand, then learn fly. Nature rule, Daniel-san, not mine.

During one of his training sessions at the beach with Mr. Miyagi, Daniel spots him doing a particularly interesting move. Daniel asks Mr. Miyagi what the move is and Mr. Miyagi tells him that this is the “crane technique”. More or less this is (supposed to be) the most complicated and ultimate karate kick. Master this and you are the king of karate! (yeah, of course I’ve tried it ๐Ÿ˜‰ )

Daniel immediately asks Mr. Miyagi to teach him this technique, to which Mr. Miyagi replies “First learn stand, then learn fly. Nature rule, Daniel-san, not mine“. Or, in plain English, Daniel is not ready yet.

By the end of the movie, after much practice, Daniel has finally mastered the crane technique. In the grand finale, shown in the next video clip, he uses the technique to beat the main bully and win the karate tournament. (fun fact: karate experts agree that using that move should have gotten Daniel disqualified)

Start simple and work from there

The lesson for Qlik professionals is (hopefully) pretty obvious. If you are just getting started with Qlik, work on something small, simple and manageable. Then as you get more comfortable with the tool expand your solutions and incorporate more advanced and complex methods and techniques into your applications.

This is exactly the approach we used in our book QlikView 11 for Developers, it starts out simple and as the chapters progress we gradually introduce more advanced concepts. Once you have reached the end of the book you will be able to crane kick any bully and take first prize at the Qlik World Conference Hackathon! (OK, so I guess that is where the similarities end…)

 

3. Man who catch fly with chopstick accomplish anything.

One day, while visiting Mr. Miyagi, Daniel finds him trying to catch a fly with a pair of chopsticks. Daniel doesn’t understand why Mr. Miyagi would use such an awkward method and asks him if a fly swatter wouldn’t be easier. Mr. Miyagi responds that a “man who catch fly with chopstick accomplish anything“. As the next video clip shows, Daniel also tries to catch the fly with chopsticks and, amazingly, he succeeds! Mr. Miyagi dismisses this as beginner’s luck, but it is clearly a big boost for Daniel’s confidence.

So what can Qlik developers and consultants learn from this seemingly nonsensical exercise?

Sometimes you just have to try something new, even if it seems impossible and success is uncertain

Many people get stuck in the comfort of their own routine and knowledge. Whenever a task presents itself, they are very result-oriented and quickly reach for the familiar approach to achieve it (“I’ll just do this in Excel…”). Many times I have seen colleagues and clients spend hours, days even, on (recurring) tasks that could have been completed (and automated!) in under an hour if they had only taken a step back, thought about the problem a little and had decided to try a different approach (or, a few different approaches).

Why don’t they try an alternative solution? Because they know that their familiar approach will get the job done, even if it is horribly inefficient. There is risk associated with trying something new!

I firmly believe that everyone should (to some extent) find better ways to achieve their tasks and solve their problems. Or, just plain “experiment”. Can it be done? We will only know if we try.

Many experiments will not work out, I will certainly stick with the fly swatter instead of using chopsticks. Even from those failed experiments though, you -will- learn something new. It might not be applicable immediately, but very often some time later you will benefit. For example, those pointless visualizations I published two years ago helped me get many new insights that enabled me to deliver some really nice custom visualizations for clients.

 

4. Hey, what kind of belt do you have?

When Daniel first meets Mr. Miyagi he asks what kind of belt he has. Mr. Miyagi replies that his is from JCPenney and costs only $3.89. Of course, this is not the answer that Daniel was looking for, he wants to know what kind of -karate- belt Mr. Miyagi has. The video below shows Mr. Miyagi’s response: “Karate here (in your mind), karate here (in your heart), karate never here (in your belt). You understand?

The lesson here? Well, we’ve learned that belts were much cheaper in the 80’s, but for me the main lesson is:

Certifications are great, but they cannot replace experience and a proven track-record

When starting with Qlik (or any other technology), getting certified is a great way to distinguish yourself from inexperienced, non-certified Qlik developers and get your foot in the door at potential clients or employers.

Don’t stop there though! Certificates typically only demonstrate that someone possesses the minimally required amount of knowledge. In my experience, certificates do not always accurately predict a person’s actual skills. There are many examples of people who passed certifications merely by rote learning. They might know the answer to the question, but not how to actually implement it. Certificates are a hygiene factor, not a differentiator.

So what, in my opinion, is a more accurate prediction of someone’s skill? Experience and a proven track-record of course! In the early part of the movie, we see Mr. Miyagi beat up an entire group of skilled karatekas. After seeing that, no one doubts that this man has the skills! While Daniel asked Mr. Miyagi about his belt before he saw him perform, he now asks him to train him without asking him for any formal qualifications or certificates. Seeing Mr. Miyagi in action has already convinced Daniel that this man can deliver.

How can Qlik developers and consultants gain provable experience? It is easy if you are already in a Qlik role, just build solutions, try to make them as good as possible and deliver them on time and within budget. People seeing (or hearing) that you can predictably deliver results puts you in a much better position than merely being certified. A solid resume listing your accomplishments and good references from employers or clients can go a very long way.

But what if your current role is not suited to build up experience and demonstrate results? In that case you can still build up experience and a track-record, but you will have to do some of it in your spare time. Think about:

  • Answering questions on the QlikCommunity, preferably with good example QVW’s that demonstrate your skills;
  • Creating a blog (or get a guest blogging spot) and sharing your solutions and experiences with people;
  • Submitting an extension or mash-up solution to Qlik Branch.

If you get a little creative, I am sure there are many more things that you could come up with.

 

5. Whole life have a balance. Everything be better. Understand?

Daniel is about to go on a big date and Mr. Miyagi, being the cool dude he is, lends him one of his awesome cars. Something is wrong however, Daniel looks anxious. Mr. Miyagi asks him what’s the matter. Could he be nervous for his date? As it turns out, Daniel is scared about the upcoming karate tournament. It’s all he can think about right now.

Mr. Miyagi asks Daniel if he remembers his lessons about balance? Turns out that lesson was not just about karate, but also a lesson about life! Or as Mr. Miyagi puts it “Whole life have a balance. Everything be better. Understand?“. Everything sure has a deeper meaning with this guy.

How might this wisdom apply to the life of a Qlik developer?

Got stuck? Relax and do other stuff

I am the last person to deny that Qlik Sense, QlikView and technology development in general can have very addictive qualities, and that stepping away while an issue is still unsolved annoys me to no end.

However, while putting in lots of hours gains you lots of experience and I think tenacity is a positive character trait, through the years I’ve learned that continually hammering away at an issue is usually counterproductive. Got stuck? Do something else for a while, let the mind wander and return to the problem later.

It’s been hypothesized that there is a strong relation between unconscious thought and out-of-the-box thinking. The supporting evidence is all over history; Archimedes and his Eureka moment in the bathtub, Isaac Newton and his apple tree, Einstein solving special relatively while riding a car and just last week, Barry Harmsen finding a missing comma because he went out for a little walk.

 

 

Got any Mr. Miyagi wisdom?

I could probably go come up with much more Mr. Miyagi wisdom, but the 5 lessons in this post have already pushed it way too far into tl;dr territory. So instead, let me ask you; what are your favourite bits of Mr. Miyagi wisdom? Looking forward to hearing your thoughts (bonus points if it includes a video)!

And just in case you still feel a little depressed on this Blue Monday; remember that you’re the best around, and that nothing’s every gonna keep you down!