The Tower of Babel

My eyes were opened today by simple miscommunication. I was discussing the integration of code into an existing framework. The premise was very simple; just hand my process the data, it will process the data, then my process will hand back the results.

Whooof. Nothing is ever so simple.

There are always many things to consider such as: the machine you are working on, the OS that is installed, the version of the OS, the most recent patch to the OS, the computer language that the interface is written in, the present version of the language, the transport layer, the size of the memory, the size of the disk, the speed of the disk, and on, and on, and on. And this just encompasses the easy part.

The difficult part is how the author of the interface used it all. How many variables were used in communication? What are the variables? What are the defaults? What is the order of events? Sheesh! What is the friggin’ phase of the moon?

It is enough to drive anyone to extreme insanity (see www.maypoleofhate.com)

You might ask what this has to do with a tale from the Old Testament. Well, after personally experiencing communication difficulties, I came to an epiphany. The linguistic diaspora that struck the inhabitants of the city of Babel struck deeper than presented in the the bible. The curse struck deep within the minds of all men and fused itself at the level of thoughts and ideas.

Recall that the God of the Old testament was a jealous and vengeful God (Exodus 20:5), not the forgiving God of the New Testament. This God praised with kingdoms and punished with fire and brimstone. This God was one to push a punishment to the very limits, as experienced by all but 8 people in the entire world during the story of Noah and the Great Flood (Genesis). And so, when man tried to elevate himself the height of God, He struck decisively, and He struck deeply. He struck so that man would not achieve divine perfection and thus be equal to God. He took from mankind the ability to communicate.

And now even simple tasks between people who love each other are difficult, such as selecting wedding china or perhaps a color to paint the bathroom. It is much worse between people whose only affiliation is that a company pays them money to work together to, say, develop a software interface. It becomes painful when the people work for different entities.

When such an interface is discussed, immediately each participating party spawns a solopsistic shell around embryonic ideas as if there were no other people in the world to consider. Each shell nurtures an idea and begins to develop a language to express itself. This language may share commonalities with other solopsistic shells, but personal experience indicates that this phenomenon is rare. Some pathological people spawn multiple solopsistic shells concurrently growing ideas and embryonic language within a single brain.

If you want to experience this for yourself, give each of the following tasks to individuals without letting them discuss interfaces.

Gather data from two channels
Detect large pulses in the data
Remove pulses from the data
Cross correlate the data
Detect the peak of the cross correlation
Plot the data and illustrate the peak location

No chance that this will work when put together. Simpler process chains have failed. For more complex ideas, there is no chance in 43-double-hockey-stick of it succeeding.

In the movie Highlander, immortal men fight to be the last (there must be only one) immortal. Upon slaying the penultimate immortal, the victor gains the power of understanding. At the time, I was a teen, and thought such a mundane prize truly sucked (at least he got the girl). Now, after experiencing many years miscommunication in binary-, cyber-, and meat-space, I realize that the movie was pure fantasy. There is no chance of true understanding happening while the Curse of Babel is rampant.

Communication is key.

To offset the curse, group programs form discussion forums and establish management for oversight. This adds a level of cohesiveness and forces disparate ideas and interfaces to establish commonalities, while pushing the disparity up the ladder away from the developers. Progress can be made, but only fractionally. Larger projects require more management and more management layers to minimize the miscommunication at the development level.

But alas, like the Tower of Babel, each layer of management brings fractionally smaller developmental returns, and eventually, the management tower becomes too great, and collapses. In this fashion, amazing tasks are conceived, planned, and built, but are always bounded away from perfection by the Curse of Babel.

This entry was posted in Humble Opinions. Bookmark the permalink.

Leave a Reply