I'm very honored to be speaking at Dev Day 2014 in Krakow this September!
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.
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:
In a few cases I've tried to follow the traditional form of the Gateless Gate. "Echo" is the first example to do so:
You will notice that the number four plays a significant role.
I am attempting to add one new kōan a week, usually on Sunday. If inspiration strikes me and I add mid-week, it will probably be on Wednesday.
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:
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.
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:
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:
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.
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.
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.
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.
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.
Thanks go to several individuals for their help with the site:
"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.
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.
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.
Provided under the Creative Commons Attribution-NonCommercial 3.0 Unported License.