Skip to main content

Path of a Programmer

I think the one thing that being a programmer has taught me is the truth of something is so much harder when you don't have the "philosophical" approach available to you.  If I try to compile a segment of code, and it comes back with an error, I can't just be partially right about how to fix it.  I have to utilize methods of testing the problem against what i know, and make sure that it is true in ALL cases, EVERY time.

 This kind of daily interaction is partially what led me to my loss of faith.  I know that is a big jump in what little context I've given, but let me explain.  When each and every day you deal in precise mathematical truth (it either works, or it doesn't) you begin to realize that believing in anything that you cannot absolutely show proof for is not just wrong, but intellectually dishonest.  How can I say that I know that the universe was created by a supernatural God who transcends time and space, when we know next to nothing about either of those topics in the grand scheme of things?

The logical fact-finding tools that you HAVE to develop to be a programmer are so vital to having a good foundation for finding truth in the real world.  When dealing with code, you cannot have contradictions and inaccuracies and just expect your code to work.  It doesn't work that way.  You have to constantly grapple with the simple fact that every day, you have to code with the understanding that the most basic, common things that you think you "know" about your own code, could be completely and utterly wrong due to some other factor.  If I set a variable to equal the number 5, and then when I check it, it equals 73, I have to figure out why.  No good programmer would ever use the logic of, well, God changed that variable.  Or say that, well, I have faith that the next time that I run this code, that number will be 5 like it is supposed to be even if i don't change anything.  Programming logic teaches you to use reason and logic to make very probable predictions.  You would start by running some debugging tests on that variable.  Set a breakpoint if the memory address is ever modified.  Put a watch on it and step through the code.  Search for any instance of the variable being set by an equals operator.  You don't just take it on faith.  You go in and you find proof for the inconsistency, and then you fix it.

This is the exact same logic that I started applying to my faith during my first job as a programmer.  I would see a hole that no one could really explain, or if they did explain was just completely and utterly unsatisfactory and vague.  I would see a contradiction between modern science and religion.  I would see people just disregarding reality and taking things on faith.  I couldn't square these things away with my logical process I was using.  Ultimately, after many years of constant scrutiny of each individual aspect and detail of the bible that I could come across, I could no longer stand on such a weak foundation any longer.  It just didn't add up.  The formula just couldn't be balanced.  The only possible way that I could still call myself a christian and actually believe it was to literally just turn a blind eye to the parts that couldn't be explained logically.  Obviously, this just couldn't work for me any more, and so I left.  I walked away.

I just hit a breaking point.  The equation couldn't be solved.  There were no debugging tools to turn to.  There were no test cases to run.  I simply ended up having to leave the faith on insufficient evidence.  Now, obviously, this is not the only reason that I left my faith.  The situation is far more complex with many other factors that I just simply don't have time to go into in this post.  However, all that I am saying is that when you spend your days using the problem solving skills and precise calculations that are required in the daily life of writing functional software, it puts things in a whole different perspective.  You are no longer satisfied with "just because" answers.  You are no longer satisfied by untested hypotheses.  For you to take something (especially something as big as a divine deity) as true, you must have sufficient reason to believe it.  You must have testable and tangible reason to believe that you can test it and prove it to be true at all times across the board.  Otherwise, you remain skeptical.

I believe it was Bertrand Russell who said, "Either the thing is true or it isn't.  If it is true, you should believe it, and if it isn't, you shouldn't.  And if you can't find out whether it is true or whether it isn't, you should suspend judgement."  So that is exactly what I did.  I suspended judgement.  That is where I stand today.  I spend my days expanding my mind using the tools of logic and reason, believing only what I can prove and disregarding the things that I cannot.  The tools of a programmer are invaluable.  They cut away all of the grey areas, all of the conversational padding, and all of the comfort zones.  They allow you to put things to the test and determine right from wrong.  Yes from no.  Off from on.  One from Zero.

Comments

Popular posts from this blog

Our Place In The Universe

We live on one simple planet, Earth.  That planet is about 12,712 kilometers in diameter from pole to pole.  The entire human species is just a speck on the face of this planet.  That planet is part of a solar system made up of 8 other planets which revolve around an average star that we call the sun.  Our solar system is approximately 287.46 billion kilometers in diameter.  Just to give you some perspective on our small little tucked away corner of the universe, the Voyager 1 probe was launched from earth on September 5, 1977 and has been traveling ever since.  The total mission duration is about 36 and a half years.  During this time, the probe has traveled at a velocity of 17 kilometers every second (that's 11 miles every second).  As of August 25, 2012, the voyager finally left our solar system and ventured into interstellar space.  That is the scope of our solar system.  Let's move out a little more and see how small this massive so...

Respecting Beliefs

You hear it all the time.  "respect my beliefs!"  you've all heard that phrase repeatedly right?  When is it usually said?  Usually anytime that you disagree with someone's beliefs and they don't really want to talk about it anymore. I say fuck that phrase.  No belief demands respect by default.  Nor should it ever be so concrete that it ever demands respect.  I respect that you have the right to believe whatever you want, and that is very important.  However, the beliefs that we hold, individually, should be tested and challenged constantly.  "But I don't know enough about the intricacies to defend it".  Fair point, but then again maybe you shouldn't espouse it as a belief then if that is the case.  If you can't pose a justified reason as to why your belief is true, then you probably shouldn't hold it as a belief.  If you don't know, just say you don't know.  There is no shame in that, and it is far more honest of a posit...

The Beautiful Chaos of Kids

Everybody thinks that they know exactly how to raise kids...when they don't have kids.  When you've got the time to sit and ponder and think and spend days, weeks, potentially months finding solutions to complex problems of child behavior it all seems so simple. The truth of the matter is that you are never going to have all of the answers readily at your disposal.  You will make good decisions and bad decisions.  Some days will go smoothly, some will go very badly.  You will be exhausted most days and the answers that once seemed so clear in the silence of your pre-child life will be increasingly absent as you go along.  You will try your best, and that's all you can do.  Others will constantly criticize you for decisions you make and how you handle things with your children.  Especially people who have no kids.  Don't waste too much time trying to explain yourself to them or trying to justify yourself to them.  They just simply don't unders...