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

I am attempting to add one new kōan a week, on Sunday. If inspiration strikes me and I add mid-week, it will probably be on Wednesday.

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.

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:

.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. :-)
.de Translations of the kōan text into German are courtesy of Adam Thalhammer and Robert Fendt. Vielen Dank, Adam und Robert!
.fr Translations of the kōan text into French are courtesy of lboi. Merci beaucoup, Luke!
.es Translations of the kōan text into Spanish are courtesy of José Tordesillas and Carlos García Ibáñez. ¡Muchas gracias!
.ru Translations of the kōan text into Russian are courtesy of Constantine Linnick, Sergey Malenkov, Stanislav Seletskiy (Станислав Селецкий), Elena Drogovoz (Елена Дроговоз), and Alexei Burmistrov (Алексей Бурмистров). Большое спасибо всем вам!

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 Zhou Ji (吉州) and KZ (康政). 谢谢你,吉州!

KZ also supplied a very useful Python algorithm for translating integers into Chinese numbers for the case headings.
.pt Translations of the kōan text into Portuguese are courtesy of Bruno Kim Medeiros Cesar. Muito obrigado!

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 creditted. 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.

Submitting translations 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.

Translation 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.

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.

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 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 Everyday Koans. If you want to read some wonderful koans in the true Zen spirit but with a modern setting, you should definitely check out these elegant offerings. I especially like #26.
  • The "Rough Book" Koans. Some kōans by Vivin Paliath on his "Rough Book" site. Vivin says that they were inspired by The Codeless Code. :-)

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