Many thanks to Tristan Morris for creating a beautiful illustrated hardcover print edition of the site

tcc-case-title
Contents · Topics · Names First · Previous · Next · Last · Random About ·  
^ |< < > >| i

Origins

I am a software engineer, and have been for most of my life.

One afternoon I was thinking about my tendency to obsess over minor technical details. I'm not alone in this tendency, but I have no doubt that many others — even some in my profession — view it as a peculiar form of madness. What metaphor, I wondered, could possibly convey why it was so difficult to let go of seemingly-trivial issues?

As it happens, I'd recently been discussing Douglas Hofstadter's Gödel, Escher, Bach with a friend. It was that book which introduced me to Zen kōans.

Thoughts collided, and the first of these pseudo-kōans was born. Consider it an experiment: an attempt at merging vocation and avocation.

Happily, I'd been looking for a small daily writing project to do during the month of November, something to ease my regret at (once again) not being able to participate in National Novel Writing Month. The project had to be something I could fit in at the edges of the day, and I realized that I could probably manage one new pseudo-kōan every evening for the month. There were days when I did more than one, and a couple where I was unable to complete what I'd started the night before. Still, by the twentieth of the month, I had enough to justify putting the collection online.

Authenticity (or lack thereof)

Although the title of this collection is a rather obvious play on The Gateless Gate (a historically important collection of Zen kōans), please note that the offerings here are not Zen kōans, nor do I intend any disrespect to practicioners of Zen Buddhism. Some of the differences:

  • The cases here are much longer.
  • They have nothing to do with Zen. Although the more philosophical ones come close, such as "Void", "Reduce, Reuse, Recycle", and "Neither Yes nor No". Generally such cases will involve Java master Kaimu.
  • For the most part they do not follow traditional kōan form described below. This is partly out of artistic necessity: I don't want the stories all sounding the same to Western ears, and I certainly don't want the source of my inspiration to serve also as its warden and executioner.
  • I have attempted to make the lessons far less opaque than the traditional form would allow, since the primary goal here is entertainment.
  • There is rather a lot more violence. Generally this is intended for comic effect.

In a few cases I've tried to follow the traditional form of the Gateless Gate. "Echo" is the first example to do so:

  • First comes a title of four "characters". (In Chinese, each "character" would have been a word, but as a westerner I think I can go either way with this.)
  • Second, the body of the kōan, beginning with the name of the protagonist of the case. I took a slight liberty in "Echo", using the clan's name instead of the monk's.
  • Third, the scribe's short commentary (being Mumon/Wumen in the original collection, and Qi here of course — although I'm speaking "in character" when I do these).
  • Fourth and last, a short poem by the scribe, in a particular four-line form. According to deoxy.org, a well-known Japanese poet was asked how to compose a Chinese poem, and said:

    "The usual Chinese poem is four lines," he explained. "The first line contains the initial phrase; the second line, the continuation of that phrase; the third line turns from this subject and begins a new one; and the fourth line brings the first three lines together. A popular Japanese song illustrates this:

    Two daughters of a silk merchant live in Kyoto.
    The elder is twenty, the younger, eighteen.
    A soldier may kill with his sword,
    But these girls slay men with their eyes."

You will notice that the number four plays a significant role.

Update schedule

In the past I tried to add one new kōan a week, usually on a Sunday or Monday, and with an illustration if time permitted. Lately, however, I have found that to be increasingly difficult to maintain:

  • Life has become far busier in general, and my available time for side-projects has almost vanished.
  • New, interesting ideas are not coming quite as quickly, and I don't want to add material just for the sake of meeting some self-imposed deadline. I certainly don't want to waste my readers' time with anything that I'm not reasonably proud of.
  • I'd like to devote some time to going back and illustrating old cases, putting out a hardcopy book of the best ones, and making some improvements to the site itself. That time has to come from somewhere.

So from now on, I will release new cases far more sporadically, although (I hope) the site as a whole will become better for my efforts.

Book (Yes!)

I am pleased to report that a fan named Tristan Morris (@binnimasts) surprised me in May 2022 by having produced an absolutely beautiful print-on-demand hardcover edition of The Codeless Code containing all cases, each with its full-color illustrations. Tristan very generously gifted me with a copy, and it surpassed my wildest hopes. Tristan has made it available on Lulu (at printing cost) here:

Hardcover print-on-demand edition of The Codeless Code on Lulu.com

I will forever be grateful, Tristan.

Translators

The kōans are written in English, which is my native language. All other languages on the site are courtesy of the hard work of some very generous volunteers:

.cs Translations of the kōan text into Czech are courtesy of Hanzík. Děkuji mnohokrát!
.da Translations of the kōan text into Danish are courtesy of Søren R. Nissen. Mange tak!
.de Translations of the kōan text into German are courtesy of Adam Thalhammer, Robert Fendt, Theonix, and Andre Bogus. Vielen Dank!
.es Translations of the kōan text into Spanish are courtesy of José Tordesillas, Carlos García Ibáñez, Gonzalo Alcalde, and Xavier Tama. ¡Muchas gracias!
.fr Translations of the kōan text into French are courtesy of Damien Pollet, Luke, Nicolas Delsaux, and Sylvain Abélard. Merci beaucoup!
.it Translations of the kōan text into Italian are courtesy of Marco Pastori — Rome, Italy, and Alessandro Desantis. Molte grazie!

I think Marco got the ball rolling, because soon after the first translation went up I was contacted by many kind people who offered to help out. :-)
.nl Translations of the kōan text into Dutch are courtesy of Thomas Sluyter. Dank je wel!
.pl Translations of the kōan text into Polish are courtesy of Krzysztof Sikorski. Dziękuję bardzo!
.pt Translations of the kōan text into Portuguese are courtesy of Bruno Kim Medeiros Cesar. Muito obrigado!
.ru Translations of the kōan text into Russian are courtesy of Sergey Malenkov, Elena Drogovoz (Елена Дроговоз), Constantine Linnick, Alexei Burmistrov (Алексей Бурмистров), and Stanislav Seletskiy (Станислав Селецкий). Большое спасибо всем вам!

In addition, Sergey Malenkov has also been translating many of the kōans on his own site.
.zh Translations of the kōan text into Chinese are courtesy of KZ (康政), and Zhou Ji (吉州). 非常感谢!

KZ also supplied a very useful Python algorithm for translating integers into Chinese numbers for the case headings.

If you've translated even one case and you don't see your name up here, please let me know!

Submitting translations

Via Email

If you want to provide a translation for a particular case, I am very happy to post it! All you need to do is send me the text as UTF-8 or HTML, and tell me how you would like to be credited. Don't worry about formatting or images—I'll take care of all of that.

If you want to make things really easy on me, you can email me (or provide via a git repository, or link to URL) a simple text file in UTF-8 as shown below.

Via Git

Thanks to Alessandro Desantis (one of the Italian translators), we now have a Git repository for translations! Alessandro created the repository and has very generously agreed to act as the curator. Go to https://github.com/alessandro1997/the-codeless-code and take a look at the 'it' (Italian) directory for examples of translations.

I will do my best to pull from the repository in a more-timely manner in the future, but for now I can at least agree that any contributions you post to the repository for cases 60 and upwards will be posted to the main site on Sunday when I post the new case.

If you want to commit your current work on a file but don't want it to go up on the website just yet, just put the following in the header:

    Skip: 1

That will cause my conversion scripts to ignore it.

Case File Format

I use a MediaWiki-style format in UTF-8, which gets turned into PHP/HTML content fragments by scripts on my home machine. Here are the key points:

  • Normal HTML tags and &-entities are recognized.
  • A hard return may be given as // at the very end of a line.
  • If you indent every line of a paragraph, the resulting HTML will also be indented one level.
  • Names are hyperlinked via a MediaWiki-like syntax:
    [[Banzen|Translated Name]]
  • Cases are hyperlinked via a MediaWiki-like syntax:
    [[#64|translated linked text]]
  • Sub-sections like "Qi's commentary" are introduced with "==" with a blank line before and after:
    == Qi's commentary
  • Horizontal rules are indicated by three dashes separated by spaces, with a blank line before and after:
    - - -
  • If you translate the hover text for an illustration, provide it in the header as follows, where the images are numbered 0, 1, 2, etc:
    Illus.0.title: translated hover text

Here's an actual example for this case:

Number: 65
Title: Due scelte
Lang: it
Translator: alessandro1997

Il maestro Java [[Kaimu|Kaimu]] aveva
lasciato [[#64|tre novizi]] a discutere
della firma di un metodo di servizio.
Un'ora dopo trovò i tre nel suo ufficio,
confusi e in disordine.

“Avete raggiunto un accordo?” chiese Kaimu.

Il primo novizio, l'abito strappato e
il labro rotto, disse: “Siamo più lontani
che mai da una conclusione pacifica.
Ciascuno di noi preferisce la propria
soluzione rispetto alle altre due. Vi
preghiamo di fare la scelta giusta al
posto nostro.”

“Molto bene,” sospirò Kaimu. “Tra le tre
opzioni offerte, una era abbastanza audace
da rigettare la nostra tradizione della
tipizzazione forte, dichiarando il metodo
in modo che accettasse un oggetto Object,
in modo da soddisfare tutti i potenziali
utenti. Chi di voi l'ha proposto?”

Il secondo novizio si fece orgoliosamente
avanti. Con un rapido calcio nello stomaco,
il maestro lo fece ruzzolare fuori dalla porta.

== Il commento di Qi

Il metodo che accetta Object accetterà
felicemente PiedeSinistro.

== Il poema di Qi

Una rana perfetta è rannicchiata sul tavolo, //
circondata da schegge di giada. //
A ogni soffio, lo scultore ha due possibilità: //
favorevole, contrario.

In some cases I have received more than one translation in a given language. In general, the first one I receive will become the "default" translation, but the others can all be reached from links in the footer and the "translations" menu at top.

Illustrations

All illustrations are done by me (that includes the border artwork you see on every page). I generally start with mechanical pencil on plain paper or graph paper, then scan the page in and do the digital inking and coloring on my Linux box using Gimp and a Wacom graphics tablet. Sometimes I use Inkscape to turn the pencil lines into clean vector graphics.

I first hit upon the idea of illustrating the kōans when I wrote Shape. I was struck by how much the then-simple graphic lent to the page. I went back and did pictures for a few earlier ones, like Empty, and by then was convinced that I wanted to illustrate as many kōans as possible. It's a challenge, because the illustrations can take much much longer to do than the kōans, and my actual goal is to keep churning out text.

Website

The website is pure custom PHP5 — my first major foray into learning the language. There is no real content management system: I write the kōans in plain text on Emacs and use some custom-rolled Perl scripts to turn them into HTML fragments with fancy quotes, em-dashes, and the like. I preview my local copy of the site, then update the real site via a secure rsync.

Fonts

The titles for this website use the lovely (and free) Gothic Ultra Regular font (version 2.0) which was designed by Jess Latham of Blue Vinyl Fonts. Jess was kind enough to generate a custom version of the font for me. The original CSS @font-face kit was downloaded from Font Squirrel, which saved me quite a lot of work.

I'm toying with other handwritten fonts for smaller text; right now I'm using Google's "Shadows Into Light" because it works well with the main title font, and Google's "Quintessential" for in-page section menus.

Forums (or lack thereof)

I thought really long and hard about this, after having been asked by a number of people to create a facility for feedback and/or discussion.

The short answer is: since my intent is for these writings to invite personal contemplation, I think that a public forum would subtract more than it would add. I also don't want to be a moderator or spam-cop.

Please know that I am always happy to read and respond to email, if you really want to discuss something one-on-one. My address is at the footer of every page.

Credits

Thanks go to several individuals for their help with the site:

  • ...to the translators, who have made my writing available in more languages than I'd ever dreamed possible.
  • ...to Frances Donovan for her initial feedback on the usability of the site;
  • ...to Evan Evanson for telling me about the CSS problems under Safari;
  • ...to Ben Chun for pointing out the problem with the original RSS feed;
  • ...to Ken James, for helping pick the title (which is way, way better than my early proposal);
  • ...to many other friends (like Peter Larsen) who read the stuff in its nascent stages and encouraged me with positive feedback;
  • ...to everyone who has written me with kind words about the site, or who has alerted me to the occasional error;
  • ...to Max Hunt and Brian Nachbar, who both pointed out that the die on my "random" icon was incorrect. :-)
  • ...and finally, to my lovely lady Z, who has read every damned one of these things, including many that sail right over her head, and who still encourages me to write more.

  • "The Gateless Gate", as beautifully illustrated by Mark T. Morse. These are the real Zen kōans which inspired The Codeless Code.
  • The Rootless Root. I was unfamiliar with Eric S. Raymond's excellent series of Unix-inspired kōans when I began this collection — I discovered it while working on Case 55. The titles are similar because they were both derived from The Gateless Gate, a historically important collection of kōans by Zen master Mumon. I wonder if Eric was inspired by that work's appearance in Gödel, Escher, Bach, as I was. Impressively, Eric has stayed faithful to the brevity and structure of Mumon's Zen kōans, whereas I (lamentably) have wandered from the true path. Do yourself a favor and check it out.
  • The Jargon-File AI kōans. On his site, Eric also hosts a small but elegant collection of AI-related kōans. The original ones were authored by Danny Hillis.
  • The "Rough Book" Kōans. Some kōans by Vivin Paliath on his "Rough Book" site. Vivin says that they were inspired by The Codeless Code. :-)
  • Sylvain Abélard's cases. Sylvain Abélard is one of the hard-working translators on this site, and he has also written his own kōans inspired by The Codeless Code, with some old characters, and some new!
  • April King's e-book recipe. April has graciously written a Calibre recipe for converting The Codeless Code into an e-book. It's hosted on GitHub and can generate .epub and .mobi files. Thanks, April!

Cultural appropriation

"Cultural appropriation" is a topic that seems to come up a lot these days when discussing art of all types. So let's not ignore the elephant in the tea-room.

I'm neither Asian nor Zen Buddhist, nor is any member of my family on either side. I don't speak a word of Chinese, and like most Westerners my exposure to the vast corpus of Eastern culture, history, religion, and philosophy is pretty damn limited, even with all the wonders of the Internet at my disposal.

The Codeless Code started out as a private little writing project chiefly inspired by the real Zen kōans I'd read in Gödel, Escher, Bach. Somehow it got more exposure than I'd ever dreamed possible. And as gratified as I've been about that, there has always been a nagging part of my brain that questions whether I should keep doing it.

I ask myself: is it cultural appropriation for a Westerner like me to create a site like this?

Strictly speaking, I suppose it is. I'm borrowing bits and pieces of other cultures, remixing them for my own purposes, and presenting those elements out of proper context. That's kind of the definition of cultural appropriation.

Is it harmful?

That depends on who you ask. While the setting here is clearly fictional, the Asian influence is more than overt: it's sort of the whole idea. There's every possibility that a person reading this site could come away with mistaken ideas about China or Buddhism or the meaning of violence in Zen kōans. On some level, the stereotype of the Harsh Asian Master is not much different than that of the Fat Lazy American. I want to be clear that I would never intentionally be disrespecful. I try to do at least some minimal amount of research before creating a name or mentioning a weapon or musical instrument. Some elements, like the violence, I have made cartoonishly over-the-top so that they're taken less seriously. But intent is not important. You can have the purest motives and still offend people. I watched The Mikado recently and cringed when I found myself wondering what the first Japanese audience members would have made of it.

So given this problem, what do I plan to do about it?

I've really thought about it, and I keep coming up with the same answer: exactly what I've been doing so far. I'll keep writing as long as people are reading. When I run out of things to say, I hope I'll have the good sense to stop.

But in the meantime, if you can think of how I can build this site more sensitively — especially if you're a member of one of the groups that you feel is being misrepresented in a cringe-worthy way — please email me. I'm always willing to consider going back and fine-tuning some of my earlier writings. I'm not going to censor myself completely, but I do want this site to be enjoyable for as many people as possible.

Senseless violence

I'm the sort of person who will capture spiders in the house and set them free outside... so, no, I don't condone violence in the workplace. :-)

While there is a tradition of brutality in Zen kōans (Nansen's Cat, Gutei's Finger), the sort of wanton disregard for life and limb you see here is not so much "Gateless Gate" as it is "Kill Bill".

If you still find yourself squirming uncomfortably, just remember that (in this world, at least) a Temple's reputation for excellence is in part founded upon its reputation for strictness — so a bit of poetic exaggeration is to be expected from its masters, and not even the scribe is to be trusted. :-)

Disclaimer

The stories in this collection are works of fiction, synthesized from ideas acquired over many years. Any resemblance to persons living or dead, or to corporations, situations, religions, philosophies, gross acts of injustice, or other works of fiction — past, present, or future imperfect — is purely coincidental.

No* actual monks were harmed in the making of this website.

* Well, maybe a few.

License

Creative Commons License
The Codeless Code by Qi is licensed under a Creative Commons Attribution-NonCommercial 3.0 Unported License. This license pertains to all text and images on this website.

Final thoughts

I know the audience for these is somewhat limited. I'm often dismayed by this thought. But then I remember Stanislaw Lem's poem from The Cyberiad which merges love and tensor algebra. Sometimes we are simply called to write something, no matter how weird or useless it might appear to be. There's little point in debating inspiration, and it's downright perilous to turn her away at the doorstep. She may not choose to visit again.

Anyway, thanks for reading this far.

Qi