In my career i have also made some dumb coding mistake that have caused bugs to go into production and would have failed the application to produce the excepted results.
Everybody makes mistakes
It
doesn’t matter who you are or how good you are at development or
whatever else you are doing, you’ve made mistakes in the past and at
some point in the future you’ll make them again.
The fact of the matter is that mistakes are just part of life.
We can try to avoid them. We can try to deny them. But, regardless of what we do, mistakes will happen, so it’s best to learn how to deal with them.
Own up to it
The most important thing to do when making a mistake is to own up to that mistake.
Chances
are everyone else already knows that you made the mistake, and no
amount of excuses or finger pointing will change anyone’s opinion of
it. Trying to avoid the ownership of a mistake is more likely to make
you look even worse and damage your credibility.
Sometimes the mistakes truly are only visible to you. In those cases it can be even more difficult to own up to the mistakes.
I
have a tendency to try and pretend like somehow the mistake I made was
not a mistake at all, but rather the wisest choice I could make given
the set of circumstances I faced, regardless of how bad the outcome was.
This
is called justification. Not only is it not healthy, but it is a
complete waste of time and energy. When you justify your mistakes
instead of acknowledging them, you completely void any possible benefit
you may have gotten from making that mistake.
Justifying
mistakes is tantamount to throwing your hands up in the air and saying
“what comes, comes.” It is taking away your power and control over your
life and career and giving it to everyone else. It is becoming a
victim of your circumstances instead of a master of your destiny.
Long story short, when this !@#$ hits the fan in your life, it’s probably your fault, so own up to it.
Fix it (if possible)
You can’t always fix your mistakes.
Once I deleted my backup folder and emptied the recycle bin, BEFORE I had copied that folder to my new backup drive.
That was it, it was done. There was no fixing it at that point. Oops.
Fortunately though, in many cases mistakes are fixable if they can be identified and you are willing to own up to them.
There is a wise old Turkish saying that goes something like this:
“No matter how far you’ve gone down the wrong road, turn back.”
I
always try to remember this saying, because the first tendency I seem
to have when caught in a mistake is to try and ride it out with the
foolish thought that I’ll save what I invested so far by continuing to
go down the wrong road. As if somehow the wrong road will magically
become the right road.
If you have made a mistake and you know what that mistake is and that mistake is fixable—fix it!
Don’t
try and “ride it out” or build on top of it. Tear down the building to
the foundation and fix the mistake, before it can get any worse.
Little
mistakes become big mistakes when we let them fester. Big mistakes
become tragically life altering mistakes when we ignore them.
Guard against future mistakes of the same kind
Now,
like I said before, we can’t always fix all of our mistakes, (although
you’d be surprised how many mistakes you can actually fix if you are
willing to eat a little humble pie,) but we can guard against future
mistakes.
The
first thing that I try to do after I have made a mistake that I have
identified, owned up to and have tried to fix, is to figure out why the
mistake happened and how I can prevent it from happening again.
Far
too many people make the same mistakes over and over again, because
they don’t take careful steps to prevent the mistake from happening
again.
It
is very easy to move on from a mistake or dwell on the mistake without
making any effort to analyze why the mistake happened in the first place
and how it could be prevented in the future.
Many times in a rush to move on to the next thing, I’ve been guilty of this meta-mistake myself.
It
is very important to examine a mistake with a clear head and honestly
evaluate what brought about the mistake and why exactly it was a
mistake.
Once
you know what caused the mistake, it is important to put in place a
procedure or some other sort of guard that will ensure that mistake
doesn’t happen again.
In
code, I’ll often add a new unit test or some other type of automated
test to ensure that a bug I fixed can never happen again.
In
life, I often don’t find it that easy. Many times the mistakes and the
consequences of those mistakes are quite far apart, so it can require a
very careful and honest analysis to determine the connection and find a
future remedy.
I
have a high tolerance for people making mistakes, because I know we all
make mistakes. But, my tolerance wanes for people who continually make
the same mistakes again and again.
Single mistakes are expected and accepted, repeated mistakes indicate incompetence and carelessness.
Move on… quickly
It
is to easy to get hung up on a mistake and become paralyzed by it in
such a way that it prevents you from having future success.
I
seem to have an instinctual desire to throw away what I am doing or try
to completely wipe the board clean, whenever I make a mistake.
I
remember as a child playing Nintendo and hitting the reset button over
and over again every time I died on a level or messed up in the
slightest, instead of continuing on and doing my best from that point
forward.
I’ve
embarked on projects and ventures where I have made mistakes and
instead of plowing forward to learn from them, have simply given up.
Giving up isn’t the same as moving on.
Sometimes
it’s the same and you need to know when changing directions is the
right course of action, but often we are so caught up in our mistakes
that the continual focus on those mistakes shifts focus from what we
should be working on and derails us completely from our track.
I’ve
learned that is it important to quickly acknowledge the mistake, take
corrective action, guard against it in the future and then move on.
This means letting go of it and accepting mistakes as the only way to move forward.
Fail, but when you do, just be sure you are leaning in the direction of success. Then when you fall it will be forward.
I’ve
had many situations in my career where I know I’ve screwed up and I
know what I did wrong, but the process and consequences of my mistake
have drained the enthusiasm and spirit out of me to press on.
In
those situations I’ve had to tell myself that I was not going to give
up and I was going to make the best of my current situation, regardless
of what it is, instead of making the worst of it.
What about you? What kinds of mistakes have you made and how did you recover from them?