A 21 day experiment to screen for a coachable coding apprentice

Utsab Saha
5 min readMar 13, 2017

--

WHAT

First of all, what does it mean to be a “coachable coding apprentice”? Three qualities, ranked in order of importance:

  1. Orientation towards personal growth in all areas of life, not just coding.
  2. Responsiveness to coaching.
  3. Ability to do an hour of code per day.

WHY

Quality #1: I have found that the biggest challenge that may prevent an apprentice from learning coding often has nothing to do with coding. It often has more to do with how they manage life as a whole and their ability to adapt and improve in whatever aspect of life may be the most challenging at any given moment. Another program aimed at improving social mobility through teaching career skills emphasized the same quality.

Quality #2: Responsiveness to coaching is a must. This is a two-way street of course. If the apprentice is not responsive, it says just as much as the mentor’s ability to teach as it says about the apprentice’s ability to listen. Whatever the cause, however, this situation will not end well for the apprentice.

Quality #3: The apprentice must demonstrate some capacity to handle the workload. Our first attempt at screening for this quality was to give the apprentice a project on FreeCodeCamp to complete over the course of a month. This failed in a couple of ways.

One apprentice, for example, found the project to be very easy. She waited till the last day and then quickly finished the project . Another apprentice, was intimidated by the project and did not even start. In either case, the results tell us nothing about the apprentice’s actual work ethic.

Another drawback of focusing on the outcome of completing a project is that apprentices may feel discouraged to ask for help, because they may worry that they will be judged as incapable of completing the project on their own.

Therefore, I am adjusting the way we define success, based on an insight from B.J. Fogg, a professor and behavior science researcher at Stanford. He recommends that instead of focusing on the outcome, focus on the specific behaviors that lead to that outcome.

For a coding apprentice, the behavior that I’m looking for is the ability to consistently devote at least one hour per day towards coding:

This habit is also enforced by William Welch, who has been teaching coding for over 20 years (currently teaches at Central Texas University), with the goal to improve social mobility among war veterans.

HOW

The overall strategy for screening for these qualities is to coach a candidate apprentice towards developing quality #3 (hour-of-code every day) and one other behavior that is not coding related. For example:

Here my not-coding-related behavior is to drink 8 cups of water each day.

B.J. Fogg’s “Tiny Habits” method can serve as our habit-building framework, as presented in his TED talk.

The overall strategy is to start small, with baby steps.

In his free 5 day course, B.J. Fogg recommends to check in with an accountability buddy everyday, sending in a simple “y” for each completed tiny habit or “n” for a failed habit.

After a few days of success with a given habit (Fogg recommends 5 days), you can add to the difficulty as you gradually build up towards the goal.

Evaluating Success

By the end of the 21 day experiment, the apprentice will gradually build the ability to code for one full hour each day (demonstrating quality #3). The apprentice will also gradually build up to another life habit of their choice (demonstrating quality #1).

What about quality #2 — responsiveness to coaching?

It turns out that it usually takes a good amount of trial-and-error to find a Tiny Habit “recipe” that works for you.

Here my buddy, Neil Shah, offered a suggestion on how to improve my Tiny Habit recipe for drinking more water. And I adjusted based on his feedback. This is exactly the kind of dynamic I hope to see between a mentor and apprentice.

Troubleshooting

It’s possible that at the end of 21 days, the apprentice has not built the habit of an hour-of-code each day. As long as the apprentice is demonstrating responsiveness (Quality #2) and a willingness to keep iterating (Quality #1), then she can repeat the pre-requisite phase one more time (go another 21 days). If by the 2nd attempt, the apprentice still has not demonstrated the “hour-of-code” habit, he should not be admitted into the program, or perhaps to try again after a year.

Acknowledgments:

  • Matthew Abrams for encouraging me to model the ideas myself.
  • William Welch for explaining his teaching philosophy to me.
  • Dennis Bishop for collaborating with me on the pre-requisites.
  • Angelia Baxter for her feedback on our recruitment process.
  • Neil Shah for his participation in my Tiny Habits experiment.

--

--