What Silence Is...

I fully expect several new people to be checking out this blog in the near future (because I'm taking on extra work, so will have new co-workers). I thought it would be worthwhile (and self-indulgent) to introduce myself. If you know me (well), there's no need to read this. Don't waste your time: this is a long post. Really, I'm just pointing out the salient bits for those who might read backlogged entries. I'll try to paint with a broad brush, here. If you want details, read back in the blog or ask me directly.

These won't be in any order: I'm feeling lazy.

The mundane: I've been married for 13 years (!), and we have an 11-year-old son. I have lived in California (Corona) and Massachusetts (I consider Amherst "home"). Now I live in Albuquerque, New Mexico. It's better here.

Personality: It's difficult to accurately describe one's own personality, so I'll try and capture what other people have said about me. (You'll have to take my word for that, of course!) When you meet me, you are likely to think I am shy, intelligent, well-spoken, and nice. When I'm getting to know you, I will ask lots of questions, and some of them will strike you as strange--others will strike you as really unique. As you get to know me better, you will find out that I'm a story-teller, absent-minded, that I stutter because I try and talk too fast, and that I tend to make incongruously rude jokes. You will also quickly learn that I am quite opinionated.

While I might seem shy, don't be fooled. I am entirely capable of public speaking, I will openly express my opinions (at least on business matters), and I will hold my own in an argument. I often surprise people with how bold I can be.

I am quick to forgive and quicker still to accept responsibility when I've screwed up. (My wife might disagree with that last bit, though. Heh.)

I swear. Not a lot, but enough to offend the occasional person.

Drawing: I took up sketching in 2007. My skill level is roughly "I don't suck". I am currently taking a drawing class at a local community college. Related to drawing, I play 1000 Blank White Cards (1kBWC). When you go back and see a post that's mostly an image, with some rule-like text under it: that's a blank white card.

Music: I compose music using the computer and "soft synthesizers". I've only ever released this music for free, on the internet, under the name of "Introspective". I listen almost exclusively to electronic music, which is also what I write. I tried to major in music, but didn't have the performance chops. Still don't.

Religion: I am an atheist. I like Zen, but am not Buddhist. Getting me to say more requires some trust.

Role-playing: I play casually, and have since I was in grade school. I prefer rules-light systems, as I am a "Narrativist".

Board Games: I enjoy playing board games, when I have the chance... which isn't that often, frankly. When 1kBWC isn't an option, my first choice is Carcassonne. Set would be my second choice.

Computer Games: I play a few, but--as with most things--I am terribly picky. I wouldn't call myself a "gamer", but I'm on the fringe. Half Life 2 is the best game yet written. Morrowind is a close second. I prefer computer games to movies (read on): I think they are a more sophisticated art form, even.

Health: Mine is not so good. I'm sick at least two or three times a year, once is often quite long-lasting (usually sinusitis, followed by bronchitis). My right middle finger is missing the tipitty-top--people will know me for years before noticing this. I have Hashimoto's thyroiditis, which went undiagnosed long enough for me to also have myxedema. It was really nasty; I thought I was dying.

Sports: I enjoy martial arts, but haven't done any in years. I'm also not bad at darts. (At least, I wasn't a few years ago.) I've been known to play pool, though I'm no better than an average novice. I used to hike (read: take long walks), but stopped that a few years ago. Aside from that, I'm pretty clueless about sports.

Food: I love food. I talk about food frequently. I'm vegetarian for non-moral reasons, but eat fish, dairy, and eggs. I could subsist for years on sushi, pizza, and salads, and never complain... but I love all manner of (vegetarian) food. New Mexican cuisine has become a favourite, too. I also love diet sodas and herbal tea. ...Enough that I thought to mention it. ; )

Politics: ...are important to me. I'm a moderately-outspoken liberal--a card-carrying Green--with a few exceptions (I'm against gun control and not draconian about privacy rights). That said, I recognize that the liberal point of view is dangerously Utopian, so I can tussle with even the most staunch right-wingers on most political subjects. (Exceptions where religion is concerned, and where every-man-for-himself is condoned.)

Vices: I don't drink, smoke, do drugs, or support the sex industry. None of these things offend me... I just don't do them, probably because I'm a control freak. (Is being a control freak a vice?) That said, my hobbies are often vice-like, in that I get sucked into them to vaguely unhealthy degrees (example: I'll binge on a computer game for an entire weekend, a couple times a year). I also eat out more than I should.

School: I left college because we were having a kid; I deeply regret it. Bringing up the subject will make me moody (read on). I'd probably be teaching right now, if we hadn't left school. I was a linguistics major, and will happily babble about languages for hours. Recently, I've been trying to learn a few.

Media: I only read non-fiction books... usually "teach yourself" stuff, or even college textbooks. I have reluctantly come to accept that I love movies. I like action movies best, though I'm ashamed to admit it. I also like "artsy" films. Cinematography and realistic, natural acting are most important to me in a film, though sometimes a really imaginative piece will trump that. It's one of the first subjects that I'll brooch with people I've just met. Television, on the other hand, irritates me. (Bad commercials infuriate me, and I don't like the repetition of series.) There have been exceptions. (Firefly leaps to mind.) ...But, by and large, I would rather watch movies. THAT said, I historically haven't watched these things on my own much. For me, these are social practices.

Work: I love programming because it lets me help other people, feels "clever", and produces immediate results. Ruby is the best language I've yet discovered for accomplishing these ends, though I'm comfortable with a handful of other languages. Meaning is very important to me in my work: I love to feel like what I'm doing has meaning on a grander scale. I don't need recognition (and it makes me uncomfortable)... but having the sense that what I'm doing contributes to greater good... that's what makes me passionate about my work.

If I could have any job in the world, it would be a college professor. I love the college environment: the turnover, the passage of time, the sense of potential, the need to squeeze everything out of life, the architecture and landscaping, the synthesis of art and science, the energy of youth, the attractive women (heh), the feeling of fun, the desire to learn, and most especially the meaning. ...Almost everything about it appeals to me.

Since I don't have a degree (yet), this is impossible... and programming is an easy second choice, for many of the same reasons.

Email, Wikipedia, Preservation

I had four new messages in my GMail inbox today (my completely non work-related mailbox).

I mention this because my daily average is probably somewhere around 0.1 messages per day, if that. And it strikes me that, even five years ago, I would typically get 4 messages an hour. Let's face it: I have become an internet recluse!

For a few seconds, this bothered me. ...Then I remembered that the reason that I've become less communicative on the web is because of the number of things I'm doing "in real life".

Still, some part of me pines for the days of being hyper-active on the web.

One of the messages I got made this temptation even stronger. An old co-worker of mine (Ron, if you know my history) emailed me to point out a book review. Well... it's ostensibly a book review. In truth, he spends about two paragraphs actually touting the book. The rest of the article--which I highly recommend reading--talks about Wikipedia. And it has something very, very interesting things to say.

As the deletions and ill-will spread in 2007—deletions not just of [articles about] webcomics but of companies, urban places, Web sites, lists, people, categories, and ideas—all deemed to be trivial, "NN" (nonnotable), "stubby," undersourced, or otherwise unencyclopedic—Andrew Lih, one of the most thoughtful observers of Wikipedia's history, told a Canadian reporter: "The preference now is for excising, deleting, restricting information rather than letting it sit there and grow."

This bothers me. If there's a trend to remove stubs because they haven't had the proper time to stew and become full articles: that disturbs me. My cackles were raised when I read--and agreed with--the following:

Rob Balder, author of a webcomic called PartiallyClips, likened the organized deleters to book burners, and he said: "Your words are polite, yeah, but your actions are obscene. Every word in every valid article you've destroyed should be converted to profanity and screamed in your face."

This has me contemplating getting back into Wikipedia editorship.

Were you aware of the purge? Where do you stand?

dot rand

I was just installing faker and stumbled on the delicious little extension that it makes to Array. Namely, you can call array.rand, to select a random element from it.

This is really sweet. So instead of the clunky expression like

a = ['foo', 'bar', 'baz', 'boozer', 'frell', 'dren']
pick = a[rand(a.length)]

...You just call


...It also works with ranges, though you have to splat them first (or call to_i):


...Maybe I'm a weenie for thinking so, but I really, really like this! : )

(Note to shelf: Blogger needs a syntax highlighter!)

Encyclopedia of Life

I've been interested in Biology for quite some time. One of my early introductions was a book by Edward O. Wilson. I loved it, and it helped steer me toward doing strange things like reading biology textbooks in my spare time. I love the stuff. There are three areas that interest me most: 1) endocrinology, 2) biodiversity, and 3) taxonomy (or systemics).

As any of you reading this know, I have been watching TED for quite some time. It's a great source for videos of talks on science. A few of them are on biology. I rather enjoy "hanging out" there, when I have some free time. Last November, I was browsing around and found out about the TED Prize, which is awarded every now and then to "the biggest ideas". Lo and behold! One of the prizes was awarded to good old E.O. Wilson. His big idea was to create an "Encyclopedia of Life" (EOL): it would be like Wikipedia, with a collection of all the known information about all the known species. It would be editable by the public (but filtered by experts). It would "mine" as much information as it could from other scientific sources. Everything.


I checked it out. At the time, it was not yet online. Now it is. You can look at it here, if it's up: they've been overwhelmed with traffic. : )

My View On the Return from Massachusetts

This was what I could see out my window on the second leg of my flight back from Massachusetts:

...ie: the engine. My ears were ringing for two days afterwards (along with the massive headache).

What swine architect decided to put the engine above the wing on this American Airlines jet?!?

Worst flight I'd ever been on.

Syntactical Sugar: once

It dawned on me that I do things like this a lot:

did_it = false
array.each do |element|
unless did_it
puts "This is the first element"
did_it = true
# Do other stuff

...Yes, I know there are other ways of accomplishing this, some of which may be far more succinct, but I prefer this one because it's clearest.

Still, everytime I do this, I wince. It seems pretty verbose for the simple procedure of doing something on the first element of a foreach loop.

It would be nice if someone could concoct the syntactic sugar to make that look like this:

array.each do |element|
once do
puts "This is the first element"
# Do other stuff

...Perhaps the "once" function should be named "on_the_first_time", but whatever floats your boat. I like shorter (unabbreviated) names.

All this needs, of course, is some way of remembering that this function has already been called. Something like this:

def once
yield unless &yield.has_already_been_called

However, how to reference (&) the block being called by yield is beyond my ken, as is the magic behind has_already_been_called.

If you have any ideas on how to make this work, I'd like to hear them.

It dawns on me that this could be slightly uglier and probably work... something along the lines of:

def once_for(name)
unless @@already_called.include?(name)
@@already_called[name] = true

array.each do |element|
once_for(:some_unique_name) do
puts "This is the first element"
# Do other stuff

...Any thoughnuts?

Last in-class Contour...

Last two in-class contour drawings:

Unusual Sensuality

Speaking of things that turn you on but shouldn't...

...do other people find this woman strangely sexy?

And, by the way, try and tell me she isn't totally in a "trance" when she plays!

In-class Drawings


It's my first self-portrait ever, and my third contour drawing... so please be kind: the point was not to lift your pen off the paper, and to only look at what you were drawing periodically.

Aww, who am I kidding: you can laugh now.

My second one came out much better, I'm happy to say, though it's still countour, so that's not saying much. ; ) I had to turn that one in, so I can't post it until it's graded. Same story with the second countour drawing (more glasses).

I finished the self-portraits way early (like, 90 minutes?), so I asked if I could do a third. The teacher told me that was fine, but if I wanted to, I could draw another student. (!)

I happened to be sitting next to the nicest girl in the class, so I asked her with folded hands if she would mind being drawn while she worked. She agreed, and I did it. Three things to note:

  1. I haven't been that nervous in months... you could see my hands shaking, in the lines.
  2. It was strangely sensual. ...Sorry, but it's true! I don't mean to sounds like a perv, but... man... it was quite alluring. She's not particularly attractive (not that she's unattractive... just that she's not my type), so that wasn't it. ...I don't know. Hard to say.
  3. She liked the result, and asked me if she could keep it. I let her have it. Thus, you'll never see it. ...It was worth the experience, though, so I don't mind!
Here's my first contour drawing ever:

I can't tell you how badly I wanted to throw this thing in the trash and storm out of the room. ...But I learned from it, and I promised to post what I draw, so here's that piece of trash. ; )

Before we were doing countours, we worked on "Negative Space", which is boring, but came out reasonably well, in terms of doing the assignment (drawing a bunch of sticks leaning against the wall)... this is also the first time I have ever touched ink (using a sumi brush and a fine sable brush for the details):

Homework 1: Indoors, "Full Value"

Here's the source. I wasn't actualy working from the photo--this is my house, I was sitting in that location. That said, I did use the photo to get the composition, and I took four reference points from it (a prominent feature in each corner) to start with (so you'll notice the drawing is quite similar, compositionally). But that was it; I put the camera away after those four reference points (and you can tell because I was way off on a few key features, blah).

Here's the first step, after about four (!) hours:

Here's the second step, this was about six hours in. At this point, the light was completely different (it was almost night), so I did bring the camera out now and then to gauge light levels--making a few liberal changes (for example, making the desk and chair much lighter to be consistent with the "frame" of the near wall):

And here's the end result, after seven hours of work:

I expected this to take maybe four or five hours. Sheesh! Anyway, I learned to like charcoal more after this (it's all about the chamois, soft eraser, and torchon, not the charcoal stick). Still not something I think I'll use when I don't have to. : )

I am moderately pleased. I think it "works" as is, though I'm a little disappointed at how "flat" it ended up (in terms of visual depth--the distance to the far corner you see there is considerable, and this view makes it look a few paces away). I got a few angles grossly wrong (the table that the TV is on, for example, should have been more foreshortened), and a couple of other proportions are off... I thought I knew how delicate perspective was, but this really taught me the effect of moving my head just an inch or two. It's one of those things that you don't really "get" until you work on something from life with serious depth.

Anyway, the point is, I actually learned a few things from doing this drawing. That's all to the good. So I don't much care that this isn't a drawing that you would want hanging in your house. ; ) It was an experience.


I love programming.

There are few things as satisfying as writing a script that does something truly useful. For example, this afternoon, I whipped up a script that discovers incoming files, predicts which files should be there, warns you which of those aren't, looks for matching "deletions" files, counts the number of events in them, moves the original file to the internal directory where we want it, reports on the deletions, and constructs a URI that will process the file.

This is a process that easily eats up 30 minutes of someone's day each time it's done, and we've been doing it for three years now. It took me well under an hour to write.

Isn't that a shame? Three years of processing these files once a month, and with an hour's writing code, it becomes a 5-minute task.

Tickles me pink. In a guilty-pleasure kind of way.