≡ Menu

“Reptiles” by M.C. Escher courtesy of Wikipedia

Originally written in the Summer of 2013:

I have a quiet relationship with visual art. I love to look at it, but I can never talk about it and I generally avoid group discussions about it. The most I might say is “I like that one” or “These ones are nice.” The best I can do is to gather some life events and weave them into a coherent story and give it meaning.

Somewhere in the story, I stumble across a piece of art which connects the dots between seemingly disconnected events. An artist puts something into a form the intellect cannot comprehend, but somehow the art grabs the observer, though the observer has no idea who or what in him understands. One piece of art that induced such surreal emotions in me is the 1943 lithograph print entitled Reptiles by M.C. Escher.

I first saw Reptiles in Gödel, Escher, Bach: An Eternal Golden Braid (also known as GEB) – a textbook-sized 800-page tome in which author Douglas Hofstadter attempts to figure out how inanimate objects can become animate beings. The publisher called it a “metaphorical fugue” in which Hofstadter fused the works of four of his biggest inspirations: writer Lewis Carroll, 18th-century composer Johann Sebastian Bach, mathematician Kurt Gödel, and graphic artist M.C. Escher.

Between each chapter, Hofstadter draws inspiration from two of Carroll’s characters, Tortoise and Achilles, in twenty stories of his own. In one story, the characters are caught in a precarious situation in which they can “push” into and “pop” out of books and pictures, one of which is Escher’s Reptiles.

The print shows seven or eight small alligator-looking reptiles, each with two tusks protruding downward from the upper lip. One of them is blowing smoke from his nostrils. The reptiles are crawling in a circle over several objects, including a book, a dodecahedron, and a small metal pot. Three of the reptiles are crawling into and out of a two-dimensional drawing of tessellated reptiles. A small empty glass sits on the right side of the canvas next to a corked jug – Hofstadter used this as part of a “pushing and popping” potion for his own story. An open book sits on the top side of the canvas – more pushing and popping for Hofstadter’s story – and a plant below the canvas. A small pack of JOB-brand cigarette papers sits below the drawing.

Hofstadter uses the reptiles’ dimensional pushing and popping to set up a chapter in his book in which he uses the pushing and popping in other forms including computer science. Although the book was not necessarily written for programmers, I bought GEB as an aspiring computer science major.

In my early computer science lessons I learned how useful and common pushing and popping are in writing programs. I saw pushing and popping everywhere: writing my own computer programs, going from waking to dreaming, hypothetical reasoning, and even in religious ideas. I saw the patterns Hofstadter pointed out, not only in his book, but in many areas of my own experience.

In 2010, one of my good friends told me he had been experimenting with lucid dreaming – becoming consciously aware he was dreaming during sleep. He thought I might be interested and recommended some books and techniques. It certainly piqued my interests in the metaphysical, so I gave it a try.

After practicing some of the techniques, I could recall more dreams and they were more and more vivid with each passing week, and on Labor Day weekend in 2010, I had my first lucid dream – a short, odd dream in which I was chased by a video game monster (a Tank from Left 4 Dead).

Achieving lucidity was surreal enough, but lucid dreaming now had me inquiring into the nature of my own consciousness. I wake from my typical dreams assured that the last twenty minutes or so never actually happened, but now I was aware I was pushing and popping into and out of realities. I questioned who was dreaming and who was aware of the dream. I wondered how I could know whether I “popped” out of my sleeping dreams into another dream which has a much longer story and many more complex characters who share in the same dream.

GEB and Reptiles inadvertently became part of my dream experiments, if only by invoking that strange surreal emotion I feel when a work of art weaves into my experience. Neither GEB nor Reptiles confirmed anything about the nature of my dreams or the nature of the world as I see it, but I could not ignore the feelings or the odd sequence of events which led to GEB and Hofstadter’s use of Escher’s work.

While Escher claimed there was little meaning in the picture and that he was merely trying to draw something funny and paradoxical, even a casual observer can see why someone else can draw deeper meaning. One woman told Escher she thought Reptiles was a “striking illusion of reincarnation”. I take no definite stance on reincarnation, but I have looked into it and have come across some readings that at least entertain the idea, most notably in a self-study religious book I have read several times since 2007 entitled A Course In Miracles.

The book also takes no definite stance on reincarnation, but it does refer to this world and this life – our physical world and bodies — as a “dream world” and indirectly says that we go through many of them. I did not read A Course in Miracles (ACIM)for the purpose of dreaming. I seemed to have stumbled across it as I did GEB and Reptiles – out of curiosity and causal interest.

But ACIM does use sleeping dreams within the physical realm as an example of waking from one order of reality to another: “All your times is spent in dreaming. Your sleeping and waking dreams have different forms, and that is all. Their content is the same.” So if ACIM is right, when I wake from my sleeping dreams, I am simply “popping” into another dream world and I have yet to pop out to reality. My point is not to convince anyone that what our physical eyes see is not real, but that ACIM was another piece in my own “metaphorical fugue.”

Reptiles might simply be one of Escher’s attempts at a paradox and humor, but like an instrumental ballad that invokes different memories and emotions through different ears, Hofstadter took an artist’s print and gave it a new meaning, weaving it into one of his own tales. And among my lucid dreams, reading GEB, computer programming, and ACIM, I found Reptiles as a casual reader, which triggered an awareness of my own metaphorical fugue.

The story (my fugue) might be nothing more than confirmation bias. I have no intentions of convincing anyone that their life is predetermined, or that such objects were placed in front of me to spark questions about reality. I merely stumbled across an image which triggered an awareness of some emotion – emotions I could not explain but neither could I ignore.

A ballad can remind us of heartbreak or of a fun childhood summer. Likewise, an image can draw brooding emotions or remind us of joyous memories and inspire. I find it hard to believe Escher could create such a picture and see little or no meaning in it beyond paradox and humor. Questions about our own consciousness and the dimensions in which they exist are littered throughout the psychological and physical sciences. Eventually, my eyes found Escher’s work.

For me, it would be a reminder that I still did not know who I was or where I was, and he did it with tiny reptiles crawling in and out of a two-dimensional drawing in a small black and white lithograph print.

I wrote this post a while ago and I thought I’d rewrite it since I brilliantly deleted the database and SQL file in which I stored it (when you save a SQL file of your old WordPress posts you should know where you saved them and don’t delete them, kids).

So having browsed the Interwebs for hundreds of CS and software development blogs over the past couple of years, I think this list will be better today, anyway.

Note: I don’t read many exciting developer blogs anymore, since I don’t read a lot of blogs altogether anymore, so I couldn’t even come up with seven (I’m sure there are many good ones). Instead, I’ll rewrite this with a few of my favorite developer blogs, and then kinda sorta try to stay on point with the rest. It’s really just a list of some of my favorite blogs.

Here is the list, in no particular order. Enjoy:

Joel  on Software – Joel Spolsky

This is one of the most informative blogs for any computer science student, software developer, or entrepreneur I can think of. Joel has built a reputation as a great entrepreneur and writes with fantastic style for anyone in the world of software engineering.

Coding Horror – Jeff Atwood

In 2008 Atwood and Spolsky started Stack Overflow, a Q&A forum for programming where you can ask specific questions on specific programming problems. Atwood still writes (well) on his Coding Horror blog, and it contains many gems for software developers.


Slashdot is a very popular collection of user-submitted news items, questions, and posts. The once dubbed “News for Nerds” now contains posts on various subjects, but still aims at the tech crowd. As a user-submitted news site, you must tread each post with caution and go to the source when the post is actually posing as news, as the submitter might misread or misrepresent an article. Expect a lot of fun and hilarious and informative commentary.

Four-Hour Blog – Tim Ferriss

Ferriss broke onto the scene in 2007 with his bestseller The 4-Hour Workweek – one of my favorite books. Ferriss’ blog tagline aptly reads “Experiments in Lifestyle Design” – a tagline he certainly lives up to. He mostly produces podcasts right now, but his body of works is dissecting the habits and regimens of high performers in entrepreneurship, athletics, or anything else that grabs his interest. He is also an angel investor, with a knack for the tech markets and tech people.

Scott H. Young – Scott H. Young

Young created and finished the MIT Challenge, in which he put himself through the Computer Science curriculum of the Massachusetts Institute of Technology (MIT). He did in in just under a year. Whether or not he attained much or any of what a student might attain attending MIT for four years, I don’t know. That’s not the point. Young was challenging the conventional “get a 4-year degree” (in 4 years) thinking which plagues and slows kids into a sort of static lifestyle, waiting until arbitrarily qualified to do what they want. He also writes and studies on learning, itself.

Rough Type – Nicholas Carr

This is more of an anti-computer-science blog, in some sense. I am not anti-CS, but I am certainly not a fanatic that prefers to sit hunched over a keyboard for hours. Carr wrote a blog post in 2008 called Is Google Making Us Stupid?, and some follow-up books, including The Shallows: What the Internet Is Doing to Our Brains. At the very least, I recommend the blog as a collection of thoughts counter to the whole automate-everything idea in which we seem to want to automate ourselves out of existence.

Mark’s Daily Apple – Mark Sisson

I’m really stretching with this one. This has little, if anything to do with programming. It is Mark Sisson’s blog on health and “primal living.” I figure it wasn’t a bad choice, since many of the programmers and entrepreneurs I meet look pear-shaped and have poor posture – a side-effect of long periods of sitting in front of a computer all day, knocking back Dr. Peppers and pizza, or whatever cliché developer food-ish substances we supposedly eat.