Published at 12:31, Tue 13 May 2008
I’ve been a fan of I Can Has Cheezburger? for a while, and I tend to find that the pictures I like most are the ones with cats doing, you know, cat things — sod the captions.
So, now that I’ve found Cute Overload, well, this seems likely to be my new favourite website.
How about a few samples? Oh, go on then.
Published at 17:01, Tue 6 May 2008
I’ve just released version 1.00 of my Text::Match::FastAlternatives Perl module. Since I’m apparently declaring it stable, I thought it was worth writing up a description of what it does, and how it does it.
Suppose you have a large list of strings, and a set of keys, and you need to determine, for each of the strings, whether any of the keys occur in it. For example, the list of strings might be a list of user-agent headers sent to a web server, and the keys a set of strings that are good indicators of robots accessing your site; you want to calculate some server statistics, but disregard any robotic traffic.
How do you go about doing that?
Published at 14:05, Tue 6 May 2008
Once upon a time, Microsoft set up MSN Music, a store for selling limited rights to listen to DRM-encumbered music. It turns out that Microsoft are retroactively cancelling customers’ ability to, you know, actually listen to the music they’ve already forked out money for.
Published at 18:48, Mon 28 Apr 2008
SSH is great; it’s highly secure, and actually easier to use than insecure alternatives like rsh or Telnet. In fact, it’s so easy to integrate SSH with everything else you do that it’s commonplace to rely on it for all sorts of things. But oddly, that very ubiquity tends to reveal an unexpected problem when you try to use SSH for, say, accessing a revision-control system: merely connecting to the remote end and performing the handshaking necessary to set up the encrypted channel takes an appreciable amount of time.
So herewith instructions on how to eliminate that overhead.
Published at 22:36, Sun 27 Apr 2008
Published at 14:48, Sun 30 Mar 2008
One of the axes along which revision-control systems differ from each other is where they choose to store their working-tree metadata.
Published at 22:42, Thu 20 Mar 2008
Today is the Jewish festival of Purim. One of the customs associated with Purim is the eating of hamentashen — triangular pastries with a sweet filling. (The word is probably Yiddish for “Haman’s pockets”, where Haman is the bad guy in the events commemorated by the festival; in Hebrew they’re called אוזני המן oznei haman, or “Haman’s ears”.)
Published at 15:16, Sun 16 Mar 2008
I’ve been watching some
Prison Break lately. I don’t suppose I’m giving all that much away if
I mention that season 2 follows the lives of some convicts after a, y’know,
prison break.
One of the convicts in question is Our Hero, Michael Scofield, who we’re meant to believe is a genius. But I saw something the other day that gave me serious cause for concern on that issue.
Published at 20:25, Wed 12 Mar 2008
Published at 13:35, Mon 3 Mar 2008
Today I read an article by Zed Shaw about the strengths and weaknesses of Ruby, part of a series of similar articles about several dynamic languages, each written by an appropriate expert.
Most of it was just as you’d expect: a description of the Ruby landscape, and the places it works well. But buried here are there are one or two comments that just make no sense whatsoever.
Published at 17:11, Sun 2 Mar 2008
Eric Sink has an interesting piece about MeWare, ThemWare, and UsWare. The basic idea is that one way of categorising software is by who uses it:
I think most programmers can see what Eric’s getting at there. If you’ve ever worked on, say, a piece of software used exclusively by people in a different department of the company you work for, you know how hard it can be to ensure that the software actually meets those people’s needs.
However, I took issue with one particular thing Eric says.
Published at 16:15, Sun 2 Mar 2008
Published at 14:47, Wed 27 Feb 2008
I’m hardly the first person to observe that it’s hard to test code that needs a database. Production usage almost certainly needs a database server, but then the tests need some way of getting a suitable database handle.
Published at 21:30, Wed 20 Feb 2008
Perhaps this is a little too much Unicode for one day, but, well, that’s life.
John Gruber links to an amusing proposed typographical term, also available as a t-shirt. In plain text, it looks like this:
Published at 11:06, Wed 20 Feb 2008
The Unicode character U+029A ʚ is named LATIN SMALL LETTER CLOSED OPEN E.
Both CLOSED and OPEN? That’s a neat trick.
Published at 17:59, Fri 15 Feb 2008
Freecycle is a pretty good idea. Lots of people have stuff they no longer need; lots of people need stuff they don’t currently have. If those people could get together in local geographical communities, so that the first group can give stuff away to the second group, then more stuff will get reused rather than being filed away in landfill for a few centuries.
But the implementation of Freecycle is, shall we say, somewhat suboptimal.
Published at 12:42, Thu 14 Feb 2008
A colleague approached me today regarding a unit test he was writing. He was constructing a series of test cases from a data structure; his code at the time used a multi-line string of which each line had several fields which together described a test to run.
time_tPublished at 12:37, Mon 4 Feb 2008
In the context of a discussion about the Y2.038K problem, Craig
Berry surmised that the 32-bit Unix time_t type originated on 16-bit
machines. That’s entirely true; for those with too much time on their
hands, here’s a short history of Unix time handling.
Published at 09:51, Tue 8 Jan 2008
Various things we do at work involve taking RSS feeds from elsewhere. Some incompetent people emit feeds that are broken in one way or another.
Published at 01:32, Tue 8 Jan 2008
There’s been some discussion lately about the utility or otherwise of keyboard shortcuts, after Tim Bray linked to several pieces by Tog on the topic. Tim disagreed with Tog’s analysis, leaving explanations as an exercise for the reader, and Kevin Scaldeferri, one of his commenters, took up the challenge:
Published at 23:41, Sun 6 Jan 2008
GNU Screen is an extremely useful piece of software, but one that requires an annoying amount of hackery to make it useful. Herewith a description of why you want to use it, and what you have to do to make it work better.