How Bugs Can Make Us Better Learners

Jacob Hampton
4 min readFeb 11, 2021

The word “repetition” often seems to exist paradoxically.

Depending on the habit, repetitions can be categorized as stagnation or be a disciplined practice leading to new knowledge, skills, ambitions, and (hopefully) accomplishments.

In college, I spent two years working as a server at an upscale restaurant. I spent the first few weeks trying to be unique for every table and quickly ran out of new jokes and stories. This was a real problem for my “never provide the same experience twice” idea. I thought a one-of-a-kind experience was the best way to maximize tips and I would be doomed by repeating my jokes and stories until I had a whole new set. This was troublesome for a college student with very few budgeting skills at the time.

Photo by Fabian Blank on Unsplash

What I ended up learning though is a table didn’t seem to mind when I had told other tables a joke or a story. They didn’t mind that I had already described the same bottle of wine with the same words to another table. It turns out the second, third, and 50th tables tended to enjoy the jokes more, buy more bottles of wine, and left me bigger tips. How could this be? Had the world lost all appetite (very intentional pun) for originality? Was there no thirst (also intentional) for new experiences? How are bugs and bottles of wine going to connect (except for wanting one while dealing with the other….)?

I’m not sure if you also wrestled with any of these riveting questions but that last question posed is worth addressing. The reason tables bought more bottles of wine the more times I shared about the bottle is because I knew the words that worked and the ones that didn’t make the wine sound appealing. I improved the customer’s experience not because I had never had that experience before but because I had a thousand repetitions of that experience. Each table was a framework I repeated and because it simplified things I was able to learn more quickly and adapt if something new came along. Repetition allowed me to keep my eyes open for new opportunities because I wasn’t having to start from scratch. This is where bugs come into play.

When I first started programming — first as a salesperson trying to prove a new feature wouldn’t be that hard to add — bugs terrified me. I’m ashamed to admit this now but I used to delete the entire project and start over if there was a bug because fixing it would be a nightmare. While some of this is because I had no idea about writing DRY code (DRY stands for “Don’t Repeat Yourself”), or abstraction, or anything that makes it easier to manage changes, a bigger reason was I had no process to repeat to fix my code. A problem without a pattern to resolution is messy.

Photo by Ricardo Viana on Unsplash

I still don’t love an error or a bug in a program I write. It proves my fallibility and exposes my humanity, but they don’t scare me anymore and I don’t delete the program. Instead, I pause, I think about the pattern I need to follow to trace the bug one step at a time and then I work those steps, one at a time. I’ve now practiced these steps and repeated these steps so many times (think about the framework I used with tables) that when I approach a bug I’m no longer even just able to solve the bug I’m usually able to keep my eyes open for new and better ways to solve the problem than I knew before.

* Great but I clicked on this to become a better learner so…*

So what can we learn from bugs about becoming better learners in general? Practice makes us better (I almost said “perfect” but bugs are evidence that’s not the case). Just like solving a bug, learning is done best one step at a time. There are big concepts and big problems in the world and I bet you’d like to learn about at least one or two of them. If you’re like me, you’ve probably been scared to start learning something new by how large of a task learning something new seems. That’s ok. Don’t throw out the whole program. Pause, think about the first step you can take, and then follow each next step.

When you look back you’ll be amazed at what you’ve accomplished, what you’ve learned, and you’ll know not only that you can learn something new but you’ll have established a framework for learning something new which you can use over and over again to keep learning.

Photo by Tim Mossholder on Unsplash

--

--