The Case for Making Mistakes

When I was 19 years old and fresh out of school, I was convinced that I wanted to be a psychologist. I wanted to know “what makes us tick”. I thought being a profiler was the coolest job ever. And even if, in the end, I didn’t end up wanting to profile people or be a therapist - the wealth of career paths I could choose from with a psychology degree made me very sure of my choice.

So I went to the Netherlands to study psychology. But little by little, over the course of about 2 years, I got the feeling that psychology was not something that kept me busy and motivated. But switching to something else didn’t seem to be an option to me at the time: I didn’t want to be labeled a university dropout. What would people think when they saw that on my CV?

I still ended up dropping out, due to a variety of reasons - but the main one being that it just wasn’t my passion. The fact that “being a dropout” was now on my permanent record was something I struggled with for a long time.

Let’s talk about something less life-changing. Ever since I started playing video games, I was obsessed with being good at them. League of Legends, Counter Strike, Smash Brothers, you name it: I always gravitated towards the competitive scene very quickly.

But anyone who has played online games knows what happens when you screw up in those games, especially when you’re playing ranked game modes: People get really, really angry at you. Since insults are exponentially easier to throw around the more anonymous you are, in some games you pretty much exclusively communicate through insults.

With the advent of streaming, I started to play less and less myself, and watched people play instead. You can convince yourself that you’re watching because you’re learning from them, and when they lose, you can just watch someone else; you can try to learn without feeling the negative consequences of making mistakes. I did eventually become decent at a few games; but not just by watching people play.

Our Relationship with Mistakes

Why am I writing about all of this? Basically, the common theme here is that the way our society treats mistakes had a very profound impact on the things I decided to do with my life.

We generally treat mistakes as something to avoid at all costs. The assumption is that when you make a mistake, it says something about your character and you as a person.

You made a bad decision in a video game? You’re probably stupid, and will never be good at the game. You dropped out of university? You probably lack discipline and can’t see things through to the end.

Obviously these are 2 examples that are very easy to dismiss. People online are just mean, and a good employer won’t judge you based on bullet points alone.

But honestly, you can find examples of this behavior everywhere. The first thought when you screw up is “I wish I hadn’t done that”.

Every Mistake is a Lesson

So, how did I eventually get better at video games? Many people who are good at their craft or sport will tell you the same thing: By reflecting back on what you did right and wrong. Obviously I had to play a lot, but playing a lot also resulted in a lot of mistakes to reflect back on. I once heard a player say something along the lines of

With every loss, you’ve learned of a new way in which you can be defeated.

These were likely not his own words (they sound very much like a line from a fortune cookie), and you can find the same idea in a lot of quotes, but hearing this had a very deep impact on me. I realized that the only way I would improve was by failing.

And to come back to my first example: Dropping out of psychology was one of the best decisions I’ve ever made, in hindsight. For a long time, I’d seen university as a continuation of school: You just have to grit your teeth and get through the boring parts, then you’ll have a piece of paper that allows you to do the fun stuff.

In the end though, my degree was something I myself had decided on - I didn’t need to grit my teeth and go through anything! I could just be honest with myself and admit that psychology was not my passion. And that’s ok! The only way I could’ve known is by trying.

So, what I’m trying to say is that mistakes should be something positive. Messing up is not the end of the world, and you can get so much better by looking at what went wrong. There’s an anecdote I like to tell:

A developer messes up horribly at his job, and it costs the company a million dollars. The CEO talks to the CTO, and asks him, “Aren’t you going to fire him? They cost us so much money, surely we don’t want to keep them around”.

However, the CTO responds: “Why would I fire them? They’ll never make that mistake again. I just spent a million dollars to train them, why would I let someone else reap the benefits?”

Yay, Let’s Make Mistakes!

All of this talk might make it seem like I’m encouraging people to make more mistakes. Which I am definitely not trying to do 😅 Of course we should always use our best efforts, and intentionally running into problems head first is never a good thing. You should not mindlessly try things out because “making mistakes will teach you the right way eventually”.

What I’m advocating for, is to change the way we treat mistakes. If you screwed up, you’re now uniquely qualified to speak on the subject, because you’ve experienced it. Reflect and try to make the most of it, and share your experience with others so they can avoid going through the same experience!

And (sorry if this is getting a little meta), reflecting on how you reflect is also very important. If you keep on making the same mistake, just thinking about how to fix that specific mistake might not be the best course of action. Try to recognize patterns in your behavior and in the way you mess up when you do. Try to set up measures that will remind you of your past behavior and take note of how well these work. Just thinking “Alright, now I know” by itself is often not enough!

Changing the Culture

One more point I’d like to make is that adopting this attitude by itself probably won’t change our culture. Negative reinforcement of mistakes is very deeply ingrained in our mindsets and won’t just go away if you just change your perspective. But I think there are a lot of things you personally and companies as a whole can do to help:

Talk about it!

Vocalizing it is the most important thing. Talk about your own mistakes and what you learned from them in a positive way, especially if you’re confident in your abilities. In the developer world, where things like feeling impostor syndrome and being completely self-taught are very common, you need to lead the charge when it comes to this if you’re confident in your abilities!

Being good at programming is not about knowing everything, it’s about the way you handle the things you don’t know.

Set up Structures to Promote Reflection

A very good way to do this is to hold something akin to “expert talks”. Whoever screws up can do a small writeup of what went wrong and what steps can be taken to prevent similar problems, effectively becoming an expert on the problem. There should be specific time slots in developer teams to share these experiences.

In my opinion, it’s important that this is not strictly enforced, and that it’s voluntary. It can quickly become emotionally problematic if the wrong people are forced into this, but again - If the right people act as role models here, they can promote a positive culture and help others gain the confidence to join.

Sorry if this was a bit wordy, but this is a topic very dear to me. Improving the way we gain knowledge and interact with each other while developing not only makes us more efficient, but it also lets us have a lot more fun doing it!

If you have any thoughts, feel free to shoot me a mail or write a comment. I’m happy to hear about your opinion (and about any mistakes I made in this article 😉).

Let me end this with a quote about not being afraid. As Jake the Dog from Adventure Time puts it: