2009-02-11

Applied Faith

It is the absence of faith that produces despair in difficult situations. No glib Christian platitudes compensate the reality of faith insufficient for challenges afoot. When we recognize our faith is not enough for the despair of our days, what are our choices? At one day in my life, this was me. Do you find yourself there, as well?

Systems thinkers, the likes of which populate the world of science and technology, will be given a crossroad situation. I have certainly had mine. Thinking in technology terms, this is the same sort of mental "race condition" that shuts down intelligent, killer androids; a logic puzzle with no solution would be equally jamming, but the spiritual puzzles are harder on believers. You can walk away from a logic puzzle much more easily than you can a spiritual puzzle. Dismiss it as intractable and walk on from it. There is no connection to the puzzle, it is abstract. Spiritual puzzles are all about us, though, right?

If we are meant to address the spiritual challenges in our life on our own, then we are meant to solve them as well. Following that thread, what happens when we can't solve spiritual challenges? How do we persist? These challenges happen to us, and we are compelled to care about them because they involve things we perceive to be important in our lives. Nothing is instinctively telling us to walk away, because we are meant to be compassionate about the problem. Sure, when we have an opportunity to make a clear choice, we should act, but many times, it isn't up to us. But, that's what faith is. God has told us that He cares about certain things in our earthly lives, and each have the potential to become a component of a spiritual challenge.

Faith is trust in God, his power, and his love. If some challenge in your life is spiritual, and things hang in the balance, and you really, really want it to go a certain way, but you cannot see what to do, to fix things, to make it right, what do you do? Trust in God. It is a little like giving someone who works for you a task and trusting they will do it, with the notable exception that we, in fact, are given the role of serving God. The first time through, it is painful, and you want to look over their shoulder and meddle and micro-manage. Faith is saying: "it looks like things are going to fail here, because nothing I can do or think of doing or ask someone to do for me is working, but God has it covered, I can trust that." When it is this hard, walk away. When the problem is spiritually intractable from what you can do, that just means it really isn't your puzzle to solve.

The systems thinker believes he can analyze this completely. He thinks he knows every person involved in the system, and every aspect of their decisions. He has laid out every possible set of choices by himself and by others and does not identify a God-intended outcome where his choices will lead to it. Taking the converse approach, trying to trivialize the problem to a series of very small systems, down to individual decisions, he is just as paralyzed, because it winds up back into the overall system puzzle with a zero-sum advance. Make a choice, and trust God will work with it. Avoid the ones that feel diabolically satisfying, and you won't mess up the system. If you aren't sure which is which, think about one choice for a while, really mull it over, then look in the mirror. If there's some sneaky smirk or grin, that's probably not the right choice. Repeat for all choices.

The Engineer's Prayer for Faith

God, please grant me the wisdom to recognize, early, that I am not meant to solve all problems, and that attempts to do so are risky and may waste resources. Further, may I have the humility to know when a problem is out of scope for a single processor such as myself. You are the greatest problem-solver there is, and for all my skill as a lover of technology, please help me to love You enough to trust You to solve things for me. I'm a hard worker, both with technology and with life, but not working on this problem just means I don't have the right knowledge or skill set to address it; it doesn't mean I do not care. I'm just asking for help, and that humility is the sign of a good work attitude. For all the times I have really trusted and believed my system or program that I built all by myself would work, let me, at this difficult hour give up on this puzzle and let You crank at it for as long as it takes. I'm just trying too hard and getting nowhere on my own. I know You are going to have a better perspective on the problem, being omniscient and all, so it makes sense that this task is reassigned.

2005-01-12

Seven Deadly Choices

There is no master I can fight with my hands, no captor to slay with a blade. How will I live free? Will I die a slave?

There is a slavery of choice. The accompanying death of this slavery is a choice based on fears that grow in the heart. That is where this imprisonment exists, in the heart. The imprisonment is sin.

Gluttony is but one of many sins. In Western culture, we identify seven such sins. Greed is among them. All relate to selfishness. A renowned evangelist was once offered the opportunity to send a telegram to the entire world, but the stipulation of the generous giver was that the message be only one word. The evangelist chose "others" as his word. The degree to which we sin is our own measure of selfishness, or our own measurement of thoughtlessness to others.

Would a woman leave her marriage for the arms of another man if she were putting the needs of all others before her own? How could an angry youth commit merciless killings of students, if he were compassionate? Would unrepentant greed at the top of Corporate America even exist if the CEO's of the world did not constantly think to themselves "I run this company, I deserve more than everyone else, and I have the power to give it to myself and my friends."

To what end do you act selfishly? Are you a "me first" driver on the freeways, cutting people off, finding ways to bend driving rules? Do you evaluate your gift-giving and holiday cards based upon what you were given last year? Do you believe your marriage is 50-50, and your spouse isn't doing their half, so why should you do anything extra? Are there things you do in secret or alone which if done in the presence of someone else, would hurt them? Do you help friends or relatives with the expectation that they will "return the favor?"

Selfishness grows like a weed, looks like a weed, and ruins what's around it like a weed.

2004-05-21

The Artless World of Software Engineering

It didn't take me very long to show interest in writing commercial software. I was dreaming of it by the age of 12, perhaps younger. In high school, I developed my interest in animation, and thus thought I must be good at it. Somewhere in the middle was computer animation.


In college, I discovered CS 185, taught by the now dismissed R. Hyde. It was an important lesson, and a well-earned A. The lesson was our group tried to write a video game in 10 weeks, in assembly. Concept art, planning, and module identification was as far as we got. What we learned is that unless there's enough money, there is never enough time to write it correctly.


An artist can spend years on a painting. A programmer cannot spend years on software unless it is a work of art. Who considers software a work of art? There's vivid, artistic software out there, even the experimental/visual efforts are noteworthy (just gaze at WinAmp's visualizations as an example). None of it is regarded as art, not widely.


Paint is really interesting. You can slop some on your hand and press it against canvas, or flick it off your brush. You can even fill a balloon and drop it from heights to burst it onto the canvas, or do wild things like spin the canvas while dripping paint onto it. A child can create art. I envy visual arts. They end up on the family refrigerator. Software, however, does not. Avoiding the anticipated drone of self-pity, you can imagine that software engineering is difficult to reflect approval, acceptance, and praise. Such things are important as a child, hence the interest in computer animation.


There was a period in time where computer software was regarded as an art form, back when there were limitations of the equipment. Programmers used to devise clever mechanisms for accomplishing certain previously inescapable goals, such as vivid color screens on a 32-color raster display long ago. For a computer software engineer, this borders on impropriety, but the genius, the art of coding still thrives in a dark corner. True viruses remain to me the most stunning example of art. Code capable of polymorphism, self-replication, stealth, and even mutation; a rare effort. The beauty is they are given away, even if you don't want them. Sadly, that's evil genius.


Intrusion Detection Systems naturally must exceed the sophistication of viruses, but knowledge of these is several orders of magnitude less common. A first-grader may know the difference between a worm and a virus, but how many government employees know what is helping keep them safe, 8-5?


Every sufficiently complex program has errors. Errors are often accepted in the world of art. Look at the works of M. C. Escher: he made a career partly out of his impossible perspective drawings, a career out of errors. Errors in software are not perceived as art. It may be an art form to actually use error-prone software with any stability, but the software's errors are not art. The errors get in the way of human expression. Errors in software are as useful to most as a sweater with no opening for a neck. Immediately, your mind thinks of ways to make use of such a sweater, doesn't it?


Humans need to relate to what they experience in order to regard it as art. Be it music evoking an emotion, comedy connecting with our own experiences, or a photograph that captures a word-thought. Until software reaches us on that level, it is abandoned as potential art. At this point, you might be considering something like a video game to be art. Can you do that fairly to all involved? It is multimedia, but the art is in the media, not the software. I carve a careful exception to some AI programming in video games and custom software such as Massive by Weta Digital, where the art is distinct from the media.


Art in software engineering lies on the fringes. The endless sea of software is a vast and jumbled space. When the sea rises to consume those breaking shores, the waters on the fringe are drenched in mass, and the art, the limits of software move elsewhere.


Head for shore.

2004-04-14

The Tower of Babel

The Holy Bible was written by humans inspired by God, and it has meaning today and tomorrow. It never changes, and what was once freaky and weird is starting to eerily make some sense. The Tower of Babel Genesis 11 is historical. Some consider the Ziggurat at Eridu to be this tower of Babel. It is of no doubt that the Tower of Babel was in Messopotamia, the problem, of course, is that many of these massive structures were ravaged to build others. I've read as high as 50 ziggurats. Regardless, the structure stood at one point in the land of Shinar.


The effect of the Tower of Babel is that language diverges. God introduced this phenomenon. That's why (for example) an Urban-American likely won't make sense of the spoken words of a Creole-American, and the rest of us have trouble with both. If French, Italian, Spanish, and English are all Romansch languages, (as in, Romans gave us the root: Latin), going back further in time, there were fewer languages. I, with my California roots, often intentionally mix some trite Spanish expressions into what I say. Compound that with the odd cross-section of mid-western words (pop, not soda, for example) and a very mild case of Minnesotan accent, and I've ended up in a peculiar corner of English. Give me enough time and may I raise up a nation through my children, and an exchange on the order of:

You want to come with for dinner, dontcha? Steve caught a grande' walleye, Amigo.

Human language divergence point made, if a bit forced.


Enter computer languages! Computer languages do not require social acceptance to exist. In fact, all they require to become prevalent is financing. IBM has kept REXX alive decades longer than prudent, and the mere existence of vbscript is a testimony to Microsoft's die-hard attitude about languages they make. Ten years ago, Markup Languages did not exist in vast numbers; I think it was only SGML and HTML. Now, XML has spawned a rebirth of dialecting. I used to think there were 100 programming languages (loose sense of the word programming). Now, knowing more than 30, counting all the proprietary languages (such as the command scripting of a Cisco router), I'd guess there are beyond 1000 computer languages. Twice that if you count versions and revisions.


Every once in a while, someone comes around and decides it is time to try to converge. Esperanto ring a bell? There's also a son-of-Esperanto, Ido. I believe someone said that Ada was to be a computer language convergence. My study of it suggests that they tried: a little of everything.


As humans, we need to be aware of this phenomenon. If it ever goes away in my lifetime, that with several dozen other reasons would suggest that the end of the world is nigh!


Since this is my introduction to web chronicling, I'd like to point out that I claim Vexar as my own 'net name. I was Vexar in late 1991 as an email address at my first college of attendance, pre-dating the use by countless others as a personal identity. Does it predate the trademarked orange fencing? Probably not. A dear friend of mine pulled the name off the side of a Revell plastic model, back in the years when computers were running at or below 1Mhz; this suggests commonality as both are plastic. Perhaps it is a fitting name for a space ship of war, when taken in the original Esperanto.

Subsequent to this claim, I have attracted a challenge to its use. Victor Mercieca, who is likely of Russian origin, debates that his original naming, Vexzar (a Russian hybridized word), predates my own use. However, Victor has yet to provide historical evidence of its use prior to 1991, and uses only a homonym, with an Americanized spelling adjustment. The debate continues...