I have taught hundreds of beginner developers through CTROTECH over the past few years. I expected to help them learn. I did not expect they would make me a better engineer.

Here is the pattern I noticed: every time a student struggled with something, it revealed an assumption I had been making in my own code. Fixing those assumptions made my code better.

This article is about five specific patterns I observed across hundreds of students and how they changed the way I write software.

Pattern 1: Beginners Struggle with Implicit Behavior

When students first learn JavaScript, implicit returns cause a lot of confusion.