Spiritual Code

Often my sprituality and my programming code seem to have alot in common. Or at least I think about them in the same ways. My World View or Spiritual Understanding is like a big program that takes various input from the world and tries to make some cosmic sense of it.
Some code is very simple.

While(Living):
  Eat()
  Drink()
  BeMerry()
Die()

But most of us have code which we probably couldn’t write out easily. If someone is a good Christian, Buddhist, Muslim, etc. then it seems like that means thier code runs ok. There may be the odd strange result or crash, but its usually easy to restart it.
The place where this metaphor really works for me is in the idea of improvement. I can try to improve your spiritual code by incorporating code from other people or organizations. I can do this by studying their code and writing my own or by simply copying from them directly.

If AcceptJesusAsSavior():
    GrantEternalLife()

If I copy I have to be careful of a few things. Other people’s code often has some high level abstractions (“AcceptJesusAsSavior”) when I haven’t been clear on the meaning of them It has left me confused when my code had to deal with pretty challenging input. Closed Source code (where only some privledged class can interpret these abstractions) has proven to be a problem in the past so try to avoid this at all costs.
Writing your own code does take more time. It means spending alot of time studying the people who have been there before. Whatever path I try to go down, I find I am always walking in someone else’s footprints for most if not all of the journey.
One of the hardest parts is having the guts to toss out stuff when its no longer working. As I try to understand more about faith I have probably thrown away 80% of the code I have written. A few parts never change but after trying to maintain the code for a long time, I am often searching for a simpler more maintainable solution.
This requires me to question to challenge assumptions and refine them as needed. Often this leaves me adrift, with little sense of any meaning in life since my code is undergoing so much change that it won’t even compile. I try not to panic and just comb through the source and keep working at it. Its ok to break the build every now and then. Its my code and no one else is running it.


Posted

in

by

Tags:

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *