Whatever Happens, Happens

I don’t think I will ever admit it but I do have regrets and there is one regret that sometimes keeps me awake at night, I know that the regret is silly but somehow even knowing that I can’t discard it and accept things the way they are. The regret I am talking about is starting late.

The truth is I started programming in my college and It wasn’t till my 6th semester when I consciously decided to get better at it. Right now I am a decent programmer not the worst of the bunch but not that great either. I am also aware that to become expert anything requires substantial amount of time and effort but it’s not easy (at least for me) when you realize that at your age many programmers started working on projects that essentially changed the world forever, sometimes its just hard to accept that whatever you do there are people who did things in order of magnitude of yours.

Well, this what I believed for a long time and this was something that held me back. No matter what I did there was a voice at back of my head stopping me from enjoying my work and making me regret that I hadn’t started earlier, it was till recent months that I realize how silly all of these things were and it made me think that the past doesn’t really matter as long as your learning from it. I realize this fact from one my early memories as a programmer,

In my early days of my 2nd year, I started hanging out on IRC. Most of my time was spent in this one channel which consist of people with interest in tech, since I was gamer back then I have lot of fond memories of discussing which GPU was better, how the latest AMD/ATi offering defeats the fastest nVidia card by 10% or which components are needed to assemble the ultimate gaming PC on a moderate budget. Though there was one discussion I hated the most, it was the dreaded Windows vs Linux. Being a gamer meant that I used to spent most of my time on Windows and since there were very few games on Linux which made me in turn stay away from it, so I used to come up with very silly arguments why Linux was terrible but that was mainly because I didn’t care about Linux instead of any logical reasoning, It didn’t have “The Witcher” on it thus it wasn’t worth my time.

I was so rigid about my views back then, I never questioned them I just assumed they must be true since more than 90% people in the world used Windows (and still do) thus it should be perfect for any kinda of task. I was very reluctant to try new things out since it might me lead to format my machine for the nth time (remember those old days when we formatted our machines every month or so 😛 ) but I am somewhat grateful that because of those people I somehow had courage to try Ubuntu in my summer vacations and that lead me to a many magical experiences in my 3rd year and beyond. Today I can’t even code few lines of code without relaying on the Unix command line.

It taught me two very important lessons,

Always question things

It’s very important that you question things and develop your own reasons instead of blindly follow what others are doing, if you don’t know why you are using particular tool, technique or follow set of beliefs aside from the generic everyone else is doing it argument. I think its a good time to questions those things and find reasons for following/using them.

2. Don’t be reluctant to try something new

Being a programmer essentially means trying out new things, we have so many new things coming out every year and forming opinions without even trying them could be devastating for you. Why not spend a weekend trying out a new library or discussing with someone over the internet who uses it on regular basis and try to find his reasons behind it.

Finally , I caught up with one of my friends from the IRC channel few days back. He was impressed by what I had done in the past year and made a remark on how I grew past those stupid arguments. I think this is when it finally dawned to me it doesn’t really matter what you did in the past, as long as your learned from them and corrected your mistakes they really don’t matter much. I will be the first to admit that I didn’t like getting picked on back then but none of the things I am doing right now would have been possible without them. Why get stuck over the past ? just forget about them and move on and maybe you might find yourself cracking a smile or two about those things in the future.

Yes, it might be true that I haven’t done anything comparable to other amazing programmer in the world but I can’t change it right now, I can only make sure that I don’t repeat those things, open up to new things and try to get better consciously. I know this also means that I might never be that famous or awesome as the other programmers but does it matter, I mean as long as I enjoy programming something I don’t really need to justify to anyone.

Though I will accept that I haven’t overcome these feelings entirely and there are few days when I feel these regrets even now but when these feelings overtake me I just try to remind myself of these lessons and I usually get over them in few hours, in the end even the greatest programmers in the world gets joy out of programming and as long as you are having fun while writing code you already are an amazing programmer and the past, well it won’t matter any more.