log (2010/09/03 to 2010/09/09)

Fame! *8)

Our Thursday entry got mentioned on popular geek site Reddit (thanks, Sean!), resulting in a massvie traffic spike (I expect; I haven't been saving and analyzing traffic logs for a few years now), and comparatively lots of reader comments.

A few selected ones, from the comment box and the Reddit thread:

I wish you all could have been at the code review meeting I was at today. My god. It's almost like it came straight from the meeting...

I carried on scrolling, got to "as nifty as virgins", realised my life is essentially meaningless and closed the tab.

This should be required reading for all programmers.

Story of our lives.


Hey I'm not sure your colors are as user friendly as they could be

I just wanted to express my appreciation for your September 2 post - even though it hurt a bit to hear my coworker ask "what's so bad about it?"


slots = SEVEN made me literally lol

2010-09-02 kicks ass

well hello! Nice blog you've got here

(Other popular responses included several "Hi!" or "Hello" or "Howdy" or "Hey, there!", one "dog", one "daugther" and one "sims" (probably related to sims), and one perhaps rather overly familiar "hi fatso!".)

Condolences and congratulations to the reader who acheived enlightenment on reading "as nifty as virgins"; glad to have been of service.

The user commenting on the imperfect user-friendliness of the color scheme is invited to try out the alternate stylesheets available from the tiny selection box at the bottom of the page, or alternately to harden up.

The Reddit comment thread is pretty interesting reading, as things about software development go. A couple of people there articulated an important principle that I think we forget alot (and that I've been encountering a bit at work, and that partly led to my posting in the first place although not at a consciously spelled out level): it turns out that in many cases it's not actually efficient to design software in such a way that it can easily be made to do lots of things that you don't need it to yet, because most likely you will never need it to do those things. Either you will never need it to do anymore than you do today (if it turns out not to have a future), or you will need it to do some different set of things that you didn't anticipate when you were first writing it.

So you will have either wasted effort writing general code that will never need to generalize, or you will have wasted effort writing general code that is general in the wrong way, and that is probably harder to generalize in the way that you actually turn out to need than it would have been if you hadn't done the original generalization at all.

(The XP meme for this is YAGNI, or You ain't gonna need it.)

Which isn't to say that you should never generalize anything; just that it's far too easy to overestimate the future benefits of generalization when weighing them against the present cost in code complexity and development time.

In email, a reader who I suspect got there from Reddit and then scrolled downward, writes:

i read your post about jehovah's witnesses and virgins.
here's the clearest explanation i've found of what "virgin" actually means
although some claim that virgin means "young girl", they don't understand Hebrew law from 2000 years ago.

I replied that that's fine for talking about the words used to describe Mary, but since Revelation was (probably) written in Greek rather than Hebrew, and it uses the relatively unambiguous "parthenos" for "virgin" (whence the English "parthenogenesis"), and includes also the helpful "not defiled by women" bit, there's not much doubt about the intent.

Unless of course you think it's a metaphor. *8)

And finally, a picture of a kitten!

Kitten, Sun