Dražen Petrović, ReactJS, temptation bundling and videogames

09 October 2015 – 11:47

Motivation. I suck at it, badly.

You’ve probably never heard of Dražen Petrović. He was one of the first europeans to play in the NBA and probably the best shooter ever, but in words of Janez Drvaric, his previous coach, he was not talented. At all.

So how did he manage to become one of the most successful shooters in NBA history? He shoot. Every single day. A lot. Janez Drvaric says:

Before training with the whole team, he usually spent an hour and a half with individual training, and after the official training session, he stayed in the court, shooting. At least 500 shoots per day.

Every single day, he found the courage and motivation to push himself a bit more, to shoot one more time, pushing the limits.

Photo credits to Lipofsky Basketballphoto.com

Why am I telling you this? Well, recently I decided to improve my Javascript skills. You know, using it the proper way. I have lots of experience with HTML, CSS and jQuery, but I’ve never had the opportunity to deal with any major Javascript framework, so I thought I’d better start learning some proper Javascript. I got a copy of Javascript, the Good Parts, one of the best books about the subject, and started reading it.

I was doing pretty well for a couple of days, until I just found myself not reading it anymore. I stopped reading it without being aware of it. It turns out I’m not Dražen Petrović.

But hey! I was not going to give up. I know a couple of different tricks to deal with motivation, so I decided to try something new to motivate myself, a technique called Temptation bundling.

As defined by Katherine Milkman, author of the paper Holding the Hunger Games Hostage at the Gym:vAn Evaluation of Temptation Bundling, temptation bundling:

“involves coupling instantly gratifying ‘want’ activities with engagement in a ‘should behavior’ that provides long-term benefits but requires the exertion of willpower”

In a nutshell, temptation bundling happens when you pair an instantly gratifying guilty pleasure with an activity you know you should do more often. So, in my case, I knew I had to bundle Javascript with a guilty pleasure. Eating chocolate? watching Breaking Bad again? Mmm what about developing videogames?

Javascript and videogames. Sounds good, right?

So I’ve been developing Reactclicker for a couple of weeks — yes, one of the silliest videogame is my purposeful guilty pleasure to learn Javascript, ReactJS, Flux and NPM. Just a Cookie Clicker clone, simple enough to be easy to start with, but with room to add complexity, new layers, levels and features to face challenging problems.

The app embraces minimalism while providing subtle affordances to lower the user cognitive load.

And today I’m 29 commits closer to achieve my goal, I’ve learnt about npm, tap and hold interaction patterns in mobile, .gitignore, todo lists in markdown, HTML5 and localstorage while having fun.

This may not work for you, and you probably should find a bundle that suits your needs, but you should definitely give it a try. Because not everyone is like Dražen Petrović.

Learn more about temptation bundling:

This is the personal website of Ignacio Palomo Duarte, Product Manager . If you're looking for my portfolio and more information just have a look at the homepage, and if you like this article maybe you can consider sharing it on twitter.