There are many times in life that I have wished that I could simply turn back time and change something. I would like to believe that this is the case for most people; unless of course, we are living in a simulation and I am just experiencing a glitch in the matrix, which just sounds absurd (yeah, come at me, simulated reality believers). Anyhow, the point is that most of us have done or not done things that we later regret.
It is even more difficult for me to deal with the fact that I can’t just go back and change stuff because I develop software for a living. In the software world, whenever we find out that something went wrong, we can just go back, find the problem, fix it and start all over again. We call this process ‘debugging’. Yeah, the tech world always has fancy names for things!
It is the nature of humans to reuse things that they have learnt. So, it made sense for me to try to relate debugging with life. The process of debugging is very simple:
- You discover the problem
- You look around and find out what caused the problem
- You try to come up with solutions
- You pick the solution that you believe will work best
- You try to fix the problem with the solution that you came up with
- You run the software again
Now, with life, it’s a little different. If you can go through steps 1 and 2 then you can easily breeze through steps 3 and 4 because often times the solution is the opposite of the decision that caused the problem. Step 6 is the real bummer! You can’t just fix the problem and start over. With life, you have to move forward and fix the problem WHILE you live your life. Also, step 5 is the most difficult of the bunch. You have got to make sure that the solution you came up with won’t mess up other things that are working right. You don’t want to make something work while breaking some other things. But, sometimes, it’s just impossible to make everything work together. So, naturally, you have to give up some things.
There is this one song by My Chemical Romance that goes, ‘Everybody wants to change the world but no one wants to die’. These lines say exactly what I want to say. You can have something that’s important to you when you give up some other thing. So, it is very important for us to realize what the most important thing is.
Let’s say you want to get married to someone but the society just wont accept it. Now, it is very important for you to realize what matters to you most. Is it social status? or is it the person you want to get married to? There is also a third angle here. Maybe you don’t want to be alone and just want to get married and you are not thinking about if that person is right for you. So, in the future you end up realizing that the weight of society not accepting you combined with not being married to the right person is stronger than your desire to not be alone. You just caused two important side effects. You were untrue to yourself and you broke your partner’s heart. But hey, it’s okay to make mistakes! That is how we learn. But, it is important to know that your actions break not only you but all the people and things around you. So, when you debug your mistakes, you need to try to fix what you broke for other people if possible.
Life is a series of problems which we keep on solving to move forward. When you are a child, you solve the problem of not being able to walk. When you go to school, you solve the problem of knowing little about the world. When you date someone, you try to solve the problem of not having someone you can connect with. And when you read this post, you solve my problem of getting my thoughts out to the world. All of us are experts at debugging when it comes to life but we are a little iffy about the side effects because sometimes the bigger problems prevent us from seeing the bigger picture.
If you were looking for a solution then I am sorry to say that I have none. I am like you too; A person who has been debugging all his life, on the road to find the perfect solutions while breaking things as well as people time and again……