Nick Ang profile picture

Nick Ang

What I learned from teaching colleagues how to code

I joined Smartly.io as a Service Operations Engineer close to 2 years ago. One of the first impactful things I did was to establish an in-house web development bootcamp that I called the “Tech AM Bootcamp” (AM = Account Manager) and I’ve since conducted it with two groups, each spanning 13 weeks.

In this post, I document what I have learned from teaching colleagues how to code. I am writing this fresh from having just concluded the second cohort, teeming with excitement and relief.

A safe learning environment can be created in a bootcamp

Two years ago when I joined and pitched the bootcamp internally, I was most worried that I wouldn’t be able to teach colleagues as effectively as I taught strangers in external bootcamps. A few things contributed to my worry:

  • What if my tone of speech gets misconstrued as out-of-my-place, condescending, or otherwise inappropriate in a workpalce setting?
  • Will they be able to commit to the bootcamp so that it becomes a worthwhile endeavour and not a half-assed professional development type of course?

Turns out, I didn’t need to worry, because a bootcamp is like a bubble within the larger organisation. As long as you set the rules clearly during enrolment, those who have chosen to step into the bubble are a small, self-selected group of willing learners. I’ve found that setting expectations even before enrolment was key to the success of the in-house bootcamps I’ve run at Smartly.io.

Of course, there is something to be said about company culture and how it provides a safe learning environment. Smartly.io has a great environment for learning. That said, I strongly believe that if you can get buy-in for conducting a bootcamp, and if you set expectations of commitment before enrolment, then you can create a safe learning environment within the bootcamp class. Bring a bunch of self-motivated learners together, set expectations early, and it will be easy to create a safe environment where people can ask questions freely without worrying about being judged socially or professionally.

In-house technical bootcamps are more valuable than commercial ones

This is high-value work, because the colleagues I taught were mostly customer-facing and they already understood the acute pains that our (their) customers face. What they lacked, until now, were the skills to implement those projects.

And this is where my knowledge of our product comes in handy. As I conducted each class, teaching JavaScript loops and conditionals, functions and HTTP requests, I would relate these to the scripts and customised tools that we have built for our existing client base. I regularly hear colleagues thinking out loud, saying something along the lines of “oooh, so I can use this to solve that bulk-duplication problem that my client has been facing for months and the product team hasn’t prioritised on the feature roadmap”, to which I usually reply, with lit-up eyes, “Yes!”

Sometimes they have also found ways to improve their own personal workflow, like when one of my colleagues, after learning how to use Terminal, found a one-liner command that could bulk-resize images in a folder so that they can fit in a single email to our accountant.

Effective live online learning is possible when the playing field is levelled

The second bootcamp that started in February 2020, just before COVID-19 cases increased exponentially throughout Europe. It forced me to switch from teaching mostly in-person in Berlin with some remote participants from Amsterdam, Paris, Madrid, and Helsinki to teaching completely remotely from a corner of my apartment. It’s funny to say this, but looking back, I appreciate being thrusted into learning how to conduct classes remotely.

Levelling the playing field - that was the single most important thing that helped make online teaching and learning possible for us. This is something that Jason Fried and DHH from Basecamp (a fully remote company in business for 20 years) emphasised time and again, most recently in a Periscope live Q&A. It turns out, most remote-related challenges really do melt away when everyone is joining the class from different places.

Some insights for conducting high-quality live online classes:

  • Change the scaling of your monitor to have everything slightly bigger (like what your grandfather might set on his personal laptop)→ it helps participants more clearly see what you have on the screen

  • The world is still learning the dynamics of online calls, so lay your expectations as ground rules at the beginning of the call (e.g. “I won’t be able to see you I don’t have a second screen, so please make some sound if you want to say something any time.“)

On the art of teaching

When the student is ready, the teacher appears. - Someone

When it comes to teaching, 70 percent of the battle is already won if you have students who are self-motivated to learn what you are going to teach, so it pays to focus on recruiting only those who appear ready to learn. The other 10 percent and 20 percent are won by consistent encouragement and instructional quality.

My ability to teach the same topic has improved significantly since the last time I taught it. I explain concepts more clearly because I remember (to my surprise) the foibles from the last time I taught it. By now I’ve taught the basics of JavaScript programming more than 5 times to strangers and to colleagues and I can recall all the times when some way of explaining a concept just didn’t work. It’s probably a mix of wanting to avoid embarrassment and a genuine desire to want to get the message across clearly.


Nick Ang profile picture
Husband, dad, and software engineer that writes. Big on learning something everyday and trying to have fun before the lights go out.
contact  |  subscribe