One of the most memorable mistakes I ever made professionally happened while I was coding at 3 in the morning a few years ago. It was a mistake I took lessons from as someone who is constantly experimenting with new ideas and technologies. It is also a mistake I draw upon as someone who is now in a position of leadership. I suppose it is not the mistake itself that is valuable but rather what one learns from it and the idea that innovation and progress can be gained by allowing ourselves and co-workers the freedom to experiment, accepting the fact that in the process of experimentation, we will make mistakes along the way.
It was one of my typical workday years ago when I used to spend nights in my office trying to complete projects. There was no remote access back then and so I had to drive to my workplace and work from there. I was learning how to code and I was in a rush to complete the project. The particular project I was working on involved emailing a couple of thousands of customers about a satisfaction survey for one of the departments I supported. It involved writing a program that would loop through a list of emails and sending an email one at a time. I came across an email component on the web I had never used before but decided to use it on this project. Although I tested my program using a few of my personal emails, apparently I did not test it wide enough to notice what could go wrong, and ultimately, what actually happened. The error went something like this – the first email on the list received one email, the second email received two copies of the same, the third email received three and so thousandth email received thousand copies. What I failed to do is to include a command that erases previous emails in the program’s memory, one line of code.
I was very lucky because there were some systems in place on our email system that prevented most of the emails from being sent out. When I came back to work a few hours that morning, I was informed of what had happened and what was still going on. I went on a panic mode, thinking I will be fired for what I had done. I had to contact our email administrator to delete the emails that had not been delivered. I also had to go talk to my supervisor at that time to inform her of the mistake I had made. While I was in her office, she patiently listened to me describe the situation and while I knew she was upset, she was calm and offered to make a phone call to the head of the organization affected. She calmly said “it happened, let’s learn something from this and let’s move on.” While she was on the phone, another colleague of mine came into her office and told her about another situation involving another system that had accidentally authorized the transfer of thousands of dollars. At that point, she looked at me and excused me from her office so she could deal with the seemingly bigger problem. When we reviewed the situation a couple of days later, I found out the head of the organization was not really too upset about it. As a matter of fact, her response was “These things happen. My husband also works in the tech industry and I’ve seen this happen before.”
I have never forgotten this incident and I use it to this day as one of my reminders with my projects. After that project, I took testing a lot more seriously by taking the extra steps to double check my work. In addition, I became more critical of new components I am using for the first time. I also share this story to my staff in making a point that it is okay to make mistakes from time to time as long as they learn from them. I also shared the fact that my supervisor did not punish me to a point that I stopped experimenting. The last thing I want them to do is to stop improving themselves for the fear of being punished from the mistakes they make. As a developer, I was constantly learning and applying new techniques and that was how I developed my skills. I also think we put more significance to the mistakes we make than what they really are. I certainly felt as if it was the end of my career when the mistake above happened until my other co-worker had a bigger problem than mine.
How do you view mistakes in your organization and your career?