Why Online Programming Courses are Like Gym Subscriptions.

Andrey Esaulov
SmartHouse
Published in
4 min readMay 23, 2017

And how to really become a highest-paid programmer by applying 4 Hour Body and Freeletics approach.

Advertising Strategies — Better Version of You

Learning programming requires a behavior change. A long-lasting commitment to do something you are probably not used to do. The gym analogy is quite literal. You don’t get any fitter by getting your gym card, you do by doing your exercises consistently.

Unfortunately the economics of online programming courses are focused on pushing the same buttons as gyms do. After all — it’s the same business model of monthly subscriptions.

There is a lot of pre-sale going on in order for you to internalize an image of a better you. It’s the person you want to become, a better version of yourself:

You have tried waking up at 5:00 and failed? What if you didn’t. That’s what it looks like. Are you already feeling the morning breeze?

Let’s take a look at some advertising techniques leading online courses use that are very similar to this tactics:

[COURSE NAME] not only took the intimidation out of coding mobile apps, it made it fun.

[COURSE NAME] showed me what I wanted to do with my life, and to this day learning web development from home has proven to be one of the best decisions of my life.

Post-Sale — Guilt

What happens when you buy a gym card, subscribe to an online course?

The program will show you what to do. Do this excursuses for this long. Don’t skip your trainings. Go.

From the moment you’re a customer — you are essentially on your own. Moreover, when you fail to keep up — to go to the gym, or watch the tutorials regularly. What happens?

Right — the Guilt card gets played.

We can’t wake up at 5:00 for you, now can we? I thought you said you wanted to learn iOS development with Swift — didn’t you say you wanted to change your life? Well — that’s what it takes. Just study 3 hours a day. Every day. For 6 months. And you’ll get there. No? Well — who’s to blame?

Will it Stick?

In his book 4 Hour Body Tim Ferris’ established one test that I often use when teaching what learning strategy my students must use. This test is called “duct tape test”. And has one simple question: “Will it stick?”:

Chopping vegetables and cleaning the Cuisinart three times per day will lead to one place: abandonment of the method.

Does that mean it won’t work for some people? No. It just means that it will fail for most people.

Take adherence seriously: will you actually stick with this change until you hit your goal?

If not, find another method, even if it’s less effective and less efficient.

The decent method you follow is better than the perfect method you quit.

Tested Out

I’ve tested this on myself. I had my gym card for years and rarely went there. Then I found Freeletics. I could see the first results in the first 2 weeks. The motivation wasn’t the issue anymore. I lost 8 kg. And never looked back.

That’s when I realize I could apply this to programming as well. I spent several months learning and discovered this path that really made me “stick to it”:

Think about a product

I wanted to build a Shopify App to sell on Shopify AppStore — and to get some passive income. The key is focusing on creating some visible result. Not learning for learning sake.

Deconstruct

I looked at the components I’m going to need in order to build it: Frontend, Backend, Shopify API.

Selection

What are the components that will take me personally the least amount of effort — but at the same time will produce the most results. I strongly believe in Pareto’s Law — that’s why I’m always looking to cut the corners — and identify those 20% that will get me 80% results.

What can I get out there — in front of the beta testers — to see if my idea is viable? That someone is actually willing to pay for this product?

Frontend! Building UI that I can integrate into Shopify and beta-test with couple of merchants.

Sequencing

What are the logical steps to take in order to achieve this MVP?

  1. Find beta-testers, write them about my idea — and tell them it will be ready in x weeks.
  2. Having enough initial responses — and having set the deadline — plan the daily learning/programming sessions I would need to make the deadline. There’s no turning back.
  3. Learn enough in order to test it in my app. Fail fast. Go back to learning. This one is tricky. It’s easy to get stuck in learning programming mindset — and be afraid to actually go out there and build stuff. That’s why I always try “fail fast” approach. After every learning session I go back to my app and try to build it — as I knew what I was doing. I fail, I hit the wall. But as a result — I know exactly WHAT I need to learn next — in order to find my way out.
  4. Ship the beta, collect the responses, tweak.

P.S. ❤️ Sasha for finding this Tim Ferris quote so quickly!

Thanks for reading! :) If you enjoyed this article, hit that heart button below ❤ Would mean a lot to me and it helps other people see the story.

--

--

Andrey Esaulov
SmartHouse

Head of Mobile / Speaker / Programming Coach PhD in Languages - Bringing Tech and Real Language Processing together. Strong believer in Voice Interfaces.