Is the path of Zen compatible with computer science?

score:2

Accepted answer

After user16788's answer answer about Zen rock gardens, the answers to topics like these might be relevant to your question :

In Zen and the Art of Motorcycle Maintenance (whose preface says it should "in no way be associated with that great body of factual information relating to orthodox Zen Buddhist practice" ), the author who according to the story had been a technical writer says:

"What I wanted to say," I finally get in, "is that I’ve a set of instructions at home which open up great realms for the improvement of technical writing. They begin, ‘Assembly of Japanese bicycle require great peace of mind.’"

That's similar to developing software -- I find it can be done only with peace of mind, concentration without distraction -- there might even be "unity" described in the topics on calligraphy, e.g. software runs correctly on the computer if it previously ran correctly in the mind.

A long while ago I read this about writing code ...

'Experts' write code that computers can understand -- 'gurus' write code that people can understand.

... so you try to write code that people (fellow-programmers) can understand -- with clear design, comments, and so on.

Learning new stuff can be stressful though, I guess. I try to learn enough to do what I need to do.


Also, ethics -- avoid lying, keep your promises, don't hide things from your team, etc. -- e.g. "cryptic" doesn't sound ideal, it sounds like either that's not well- and carefully-written and -explained (to be understood by other people), or it's obfuscated (which I think is generally unethical, i.e. if it's code which you're supposed to be reading then the author shouldn't have tried to obfuscate it).

Conversely the other properties you mentioned -- i.e. "simplicity, clarity, open space, non-judging, non-solving, higher non-thinking intelligence, beauty, expansiveness, ease, flow and lightness of mind/thought" -- all seem to me to be more-or-less what well-written or well-understood software is like.

Upvote:1

On the theoretical side of computer science, there is clear correspondence between the idea put forward by the Incompleteness Theorems and that of kōans, Śūnyatā, etc. in Zen Buddhism. The main concept being that there exist inherent contradictions in all formal systems, and yet we can "overcome" these by stepping outside of that system; in Zen terms, by Non-Thinking. These sorts of things are written about in books by Hofstadter (Godel, Escher, Bach), and Raymond Smullyan (The Tao is Silent, Forever Undecided).

Upvote:2

Look at a Zen rock garden and look at well crafted code and then tell me the two aren't compatible.

More post

Search Posts

Related post