Friday, September 22, 2006

If the Truth hurts, Wear it

I have been programming for a dozen years now, and was fortunate to get in on the action when the WWW was in its infancy. Prior to that time, you might say that I "enjoyed an interesting life." The details of my life are unimportant. What I consider important is what I have learned and gained from my experiences. Any experience you can walk away from is a good one, after all!

I work almost entirely with Microsoft technologies, and the Microsoft .Net platform in particular. I have been fortunate to have worked with almost every type of software except for real-time software. I have built Web Applications, Windows applications, Web Services, Windows Services, DLLs, Console applications, and a plethora of other types of software. I have worked with a half-dozen programming languages as well as English (the programming language that humans in America, England, and a few other countries use to exchange data). And it has been (mostly) a blast.

In the course of my experience as a programmer, I have seen a connection between the various sciences, mathematics, philosophy, and religion, and take great pleasure in learning everything I can about the true nature of things. I believe that all of these disciplines contain pieces of the puzzle that we call "human existence." And it is my goal to understand as much about human existence as possible in my lifetime.

Along the way, I have had the privilege to pick up a few bits and pieces of the puzzle, and want to share what I have learned, as others have shared, to contribute to the betterment of all mankind.

Truth is hard to come by. Although I am at this point in my life roughly 50 years old, I find that there is actually very little of what can truly be called "truth" in my personal Knowledge Base. But the bits that I have managed to accumulate are promising. The Title of this post is one of them.

Why is Truth hard to come by? Well, the Title of this post contains a clue to a part of the answer: The Truth is often painful. And we humans have a peculiar capacity to ignore Truth by choice, and even to deceive ourselves (although the mechanism of self-deception is a mystery to me). In fact, I have boiled down this principle of self-deception into a fairly simple aphorism:

What You Seek Is What You Get.

We humans are very powerful. We have very powerful minds. And these minds of ours have the capacity to solve massively complex problems, often without our even being aware of it. For example, as an infant, you learned to walk. That was no small achievement. We are still working on technology that would allow robots to walk like humans. It is a tremendous balancing act, although most of us would not think so. We do not remember how we taught ourselves to balance, to use our limbs, to coordinate between the muscles in our body that maintain balance while perched on top of our complex and rather small feet. We do it without think consciously about it.

It is my observation that almost all of what we do is in response to some set of requirements, much like the requirements that drive software development. When we walk, it is because we want something. Our mind has determined that in order to achieve that something, we must tranport our body from one point to another (among other things). In other words, we are driven to do what we do by desire, or will. And most of the time, with some persistence, we manage to achieve it. The more deeply we want it, the more we are willing to work for it, the more likely it is that we will achieve it.

One of the things that we share, in terms of desire or will, is to understand our own existence, and the existence of the universe we all share. To understand requires fact, Truth, if you will. And we have the capacity to find the answers. But some requirements are contrary to others. At times, we are forced to choose between goals that are in conflict with one another. One cannot turn left and turn right at the same time. For example, if a Truth is unpopular, we have a conflict between our desire to obtain that Truth, and sacrifice popularity, or obtain popularity and sacrifice Truth. And we do have a choice. We always have a choice.

At such times, we must choose between these conflicting alternatives. At that time, we will choose whichever goal has the highest priority. And we will achieve what we choose. Therefore, at times, the Truth hurts. So, in order to obtain Truth, one must make it a higher priority than other desires, lest one trade it for the box in front of which Carol Merrill is standing ("Let's Make a Deal"). As for myself, I have decided that the Truth is worth the sacrifice. At least I hope so. After all, as I said before, one of our capacities is self-deception.

Therefore, in my desire to contribute to the betterment of mankind, I hope to share some of these bits of Truth with the rest of us. Of course, this is a rather lofty goal. So we shall see how successful this will be. I will give it my best effort.

I have a highly eclectic mind, so please don't expect me to be organized about it!


Sean said...

You raise some interesting points. I myself often attempt to live by the same method, but as you have pointed out...we are great at self-deception.

I have not really applied these thoughts to software, being a C# developer myself, so I think it is interesting that you connect the two. I have never thought of it like that.

I think by merely asking ourselves these questions we are accumulating more wisdom, which in turn helps us in making the correct decision and not the one that deals with self-deception.

I believe that once we start to eliminate ignorance, and begin to look at ourselves for who we truly are, can we achieve happiness.

I am not quite as old as you, Actually I am almost half your age, So I am sure that you have more wisdom than me in the amount of time you've had to ask yourself these questions. That being said, I am not trying to start a religious conversation, but what you and I describe here are deeply rooted in Buddhism. just my opinion, and recent area of study. at least in the discipline area.

Good luck and keep up the good work!


Uncle Chutney said...

Thanks for the constructive comments, Sean.

I believe you are correct about asking these questions being the starting point to "accumulating more wisdom" as you put it. What You Seek Is What You Get. ;-)

As for these ideas being "rooted in Buddhism," I think I would say that the Buddha saw these principles, just as you and I do. That is, these ideas are not innately Buddhist, but can be seen in a number of philosophies and religions. As Plato would have put it, the ideas were always there. People have simply observed them at different times.

I have no compunctions about discussing religion; religion, like philosphy and science, is also grounded in the search for the ultimate Truths in life. I tend to take a "holistic" approach to this endeavor. Each branch of study approaches the same questions from different angles.

As for how these ideas are connected to software development, I have observed that software development tends to force more and more discipline of thought in one. Bugs are often caused by poor logic. The longer one works at it, the more disciplined one's logic becomes. If one learns to apply the same logic to these sorts of questions, I believe it is helpful.

As a side note, the discipline of logic was developed by Aristotle. The Greek word "logos" is translated as "word," but also as "thought" or "reason." I find it interesting to note that the Apostle John, in his gospel, used the word "logos" in the first sentence of the book. It was written in Greek, and about 300 years after Aristotle's time. I'm sure that Aristotle was fairly popular at the time, and John was using the vernacular of the day. Unfortunately, it has lost much in the translation. The concept is still difficult to grasp, even when the etymology of the word is understood, but it seems clearer somehow.

Anonymous said...

Nice to visit yer blog Uncle. And keep up the nice posts on the C-Sharp group. Watch the chicken salad surgery.