Dao De Jing

The question I face perhaps the most often is, how can I get so-and-so (or perhaps, people in general) to see things my way? A funny phrase, my way. It implies that there is a way of seeing things that is mine, unique to me: a way that I own. And it implies that there is a way that is yours, and your way may be different from my way. And the whole idea of getting people to see things my way implies that our ways should come into contact; that there should be a contest or perhaps a dialogue between them; and that one way will emerge the victor and thenceforth be shared by us both.

Curiouser still: the use of the word way itself. I do not think it means what you think it means. A way is literally a path, a road, and from that meaning derive metaphorical meanings: a process, an algorithm, a style. But the use of the word way in the phrase see things my way is highly inappropriate: seeing is not a procedure; there is no algorithm for perception, and there are no different styles of perception. To the extent that we can say there is a way that we see things at all, there is only one Way, and it is shared by us all.

Now, what I really mean when I say see things my way is, think about things my way. Because thinking is a process. It does use algorithms, and there are different styles of thinking. And that, you might say, is where all the trouble starts.

The way that can be told is not the eternal Way.

The problem with perception is that you cannot explain it or tell someone how to do it. Perception is ineffable. This becomes apparent when you observe people whose jobs require a highly-specialized perceptive skill—for instance, people who sort baby chickens into male and female. It is very difficult (I'm told) to discern the sex of a chick by looking at it. But there are people who can do it. And they can't explain what they're perceiving.

Kathy Sierra - Chicken Sexers

The name that can be named is not the eternal Name.

the unspeakable world

36 Views of Mount Fuji

Orthographic Projections

Of course, although we could have lengthy philosophical debates about exactly which atoms make up a particular tree or mountain or person, such discussions are not practically very interesting—we can all agree well enough on such matters to be able to communicate anyway. What does get interesting and difficult is when we start to discuss relationships between things: conceptual objects that don't correspond to any particular thing in the physical world. This is, perhaps, nowhere more apparent than in the field of software engineering. We talk about cohesion and coupling, dependency, degrees of abstraction, behavioral test coverage. The important thing to note about all these concepts is that they don't exist in the software being talked about: they are all imposed, post-hoc, to describe and give names to what people are perceiving at the ground level of reality. Because they are views imposed on reality, and not reality itself, they don't match perfectly: the rules for software engineering that programmers have come up with are all rife with exceptions. And yet this does not mean the rules have no value: they are useful windows onto a world of conceptual relations that, like our own physical world, exists but is simply unspeakable.

The unnamable is the eternally real.

Indeed, it is precisely the unspeakability of these things that jolts us into entertaining a belief in their reality. The only things we can speak (or write) are symbols—that is, references to real things.

Naming is the origin of all particular things.

Free from desire, you realize the mystery.

Let us return to the eternal question: how can I get people to see things my way?