Comforting? Not at all.
Satisfying? To a point.
I have worked with machines it seems all my life. I like the machines, and what they have become in my lifetime. I have excelled in my craft. I have built abstract creations of such hidden beauty, works of art as creative as any you might see. An art, though, that no one will see. An art that can be seen only by the mind's eye. Impossible for most. Too difficult for those few who can. People with years of experience might have the vocabulary and language necessary to understand, necessary to comprehend. But probably not the patience or the interest. They have their own castles to build.
There is no color nor taste in it. No sound to hear, no object to touch. There is nothing physical or material. There is only the abstraction of concept, coded into thousands upon thousands of instructions-to-the-machine. Implemented, written, incorporated, coded, yet remaining abstract. Visualizable, but not picturable. Hidden deep within the internals of digital systems.
Further up, layers upon layers away from this hidden beauty, there is the final result. The display the user can see. The output that he can touch and feel with his own mind. A good and useful device in and of itself. But the concepts that make it work? Forever hidden in an unlit world of "internals".
When I code, my mind swims and flows in a world of abstractions. There are no words. Only processes coming together, then spawning apart again. A huge spaghetti-maze of logic paths flowing, splitting, diverging, merging. Each one needing to find its beginning, needing to seek its end. "What about this?" "What if that?" "What will happen when?" "Oh shit! I forgot about THAT!" These are the constant urges that drive the coding process. Each of them giving rise to a branching of the logic paths. Each one giving creation to the abstraction needed to resolve its question. Each one remaining a flaw until resolved and merged back into the overall flow of the program.
Occasionally, once in awhile, the solution to a path will be utterly new, the abstraction will be totally beautiful. Something to be proud of. Something to be satisfied with. Something I cannot show or even explain to the people I love. Something that I am forced to keep … private.
When I code, my mind swims and flows in a world of abstractions. There are no words. "What are you doing?", someone will ask. I cannot answer. The cost is too high. There are no words at hand. Only the mental flows of forms and processes. "WHAT ARE YOU DOING?!", someone insists. I have to stop. Let it all settle into … stillness. Then maybe I can find the words, but now the process is gone. That is the cost.
"What about this?" "What if that?" "What will happen when?" "Oh shit! I forgot about THAT!" But then suddenly comes the answer: "It is done!" Suddenly, there is stillness. There is that perfect moment when you just know, in an inescapable way, there are no questions remaining. All the paths have been connected. All the answers have been coded.
There is stillness. It is done.
You asked what I do. This is what I do. There is satisfaction, but no comfort.= = =
David Cole – July 2000
In the 53rd year of my life,
34 of which have been devoted to programming,
22 of which have been devoted to XDC.