This is BrainLog, a blog by Dan Sanderson. Older entries, from October 1999 through September 2010, are preserved for posterity, but are no longer maintained. See the front page and newer entries.

September 2004 Archives

September 29, 2004

Ten Songwriters, Ten Songs, a one-song-each introduction to ten of Broadway's all-time best songwriters and songwriting teams. (Thanks Matt.)

Ooh! Jon Udell has a bookmarklet builder that lets you look up a book at your local public library with one click while viewing its detail page. Try before you buy! Search for books using Amazon's database instead of your library's lousy WebPac! Check out books recommended by bloggers with two and a half clicks! I jump to SPL's site from Amazon pages all the time, and it never occurred to me to eliminate the six awkward steps it usually takes with a bookmarklet.

Via Merlin Mann's 43 Folders, which Anil credits for the recent rush of blogolarity (coin!) for the stress-management book, Getting Things Done by David Allen. Going from the front page alone, Merlin writes about Mac OS X productivity apps, GTD, and using technology for productitivy and life management. (Here's Merlin's response to Anil's article.) 43 Folders easily earns a spot on my regular reading list.

Speaking of libraries and (guh ick) iPac, my wife would like me to remind everyone that prefers their library's telnet interface to continue to use it, lest it be taken down. Telnet for a cleaner, faster Seattle Public Library research experience. (You have to enter your library account number every time you place a hold, and it's still faster.) Now that pretty much every SPL branch has thrown out their old terminals in favor of Windows machines, I keep thinking the fact that the telnet interface is still up is merely an oversight.

September 28, 2004

Ob. praise for MT-Blacklist: Considering how deeply affected others have been with "comment spam," the abuse of a weblog's commenting facilities by advertisers of snake oil and cigarettes, I've been rather lucky. Prior to a month ago, I ran my own custom software, and it wasn't worth most spammers' time to figure out how to get their spam robots to work with my proprietary forms. Some spammers posted spam to my blog by hand, but it was so rare that it was easy to delete them as they were posted. After I switched to Movable Type 3.0d, I was running software spambots could recognize and interface with. I played a little trick on them by renaming my comment form, but that would only trick the dumbest of robots, and as we all know by now, spammers are hiring smart people to write spam software these days.

continue reading...

September 27, 2004

The new Hitchhiker's Guide radio series has begun! Each episode will be available for listening on the web site for seven days after the Thursday evening (GMT) repeat broadcast. Listen to episode 1 now, before they take it down!

When you're done with that, check out the BBC's graphics-enhanced Flash remake of the Infocom text adventure.

Six minutes in four years: how Kerry Conran started Sky Captain on his Mac. Not a lot of information here, but since I don't actually get to see movies any more, I have to read about them in joint promotional flyers.

Paparazzi! is a small Mac OS X utility that makes screenshots of web pages. Enter a URL and image dimensions, and you get a PNG of the page.

September 24, 2004

How to Design Programs: An Introduction to Programming and Computing, by Matthias Felleisen, et al. The website features the complete text for the September 2003 edition of the book, solutions to exercises, additional problem sets, and errata. The book uses DrScheme, the interactive graphical programming environment for the Scheme programming langauge with Windows, Mac OS X and Unix/X versions free for download. The book and site are affiliated with The TeachScheme! Project, which advocates using Scheme in the introductory classroom. DrScheme is fun to play with, and clearly of educational value. I can imagine volunteering at a local high school to teach with this material.

For a free on-line book on how computer programs work that's a little more college-level, try Structure and Interpretation of Computer Programs by Harold Abelson and Gerald Jay Sussman. With complete video lectures by the authors! This book uses Lisp, not Scheme. The difference between Scheme and Common Lisp, from the Scheme FAQ. (I'd wonder if the origin of the answer softens it in one direction, but the same answer is repeated in the Lisp FAQ.) More such info, suitably wiki-thrashed by the warring factions, at this page on Ward's Wiki.

If you're just in it for the Scheme and don't need to know how computers work (?), see Teach Yourself Scheme in Fixnum Days.

For a more everyday useful implementation of Scheme, try Scheme 48, the Scheme implementation described by The Scheme Underground ("We want to take over the world!") as "an ultra-portable Scheme implementation which is easily interfaced to existing software written in other languages." See also MIT/GNU Scheme.

Once you're an addict: hosts copies of the de facto Scheme standard, R5RS, and more.

I got a bunch of these links from Aaron Hawley's Scheme page, which also nicely links the Free On-Line Dictionary of Computing, great for if you want to know why Scheme is called a functional programming language, why a functional language is a declarative language, why most functional langauges are based on typed lambda calculus, who invented lambda calculus and why he gave up on the project.

Lambda The Ultimate is a programming languages blog worth watching if you're into this sort of thing. A recent entry mentions newLISP, a new Scheme/Lisp fusion that's targetting scripting and web programming as well as artificial intelligence and statistics.

One more thing: Where is all this gorgeous TeX-originated HTML coming from, and why are these Scheme books the first time I've seen it? The answer to the former: TeX2page. To the latter: Because it's written in Scheme.

September 23, 2004

The weirdness of crowds, a survey of estimation. See also part two of the analysis.

Do you have a favorite font, but don't know its name? Want to know which font was used in a newspaper advertisement or movie title? Identifont will tell you which font you're thinking of based on answers to a few simple questions, and show you a sample of the font, information on the font's creator, and where to buy it. The questions get rather specific ("How many terminals does the top of the upper-case 'W' have?"), but a dozen answers is enough to identify your font out of thousands.

September 22, 2004

NYTimes on's search engine spin-off company, A9.

An A9 search for "beagle puppy".

The Education of Stacy Sullivan: A First-Time Nonfiction Author Learns That Getting Published Is Not Necessarily the Hard Part. (Thanks Jerry.)

September 21, 2004

News posted back in June: Progress on NewsRadio DVDs: Stephen Root mentioned in a radio interview that he completed recording commentaries on the first two seasons of NewsRadio, which could be a sign for an impending release. Amazon announced a release date for the set a year or so ago, and I immediately pre-ordered it. The date was subsequently pulled (resulting in disappointing messages from parts of Amazon's system saying "release in January 2010"), supposedly because the show's creator, Paul Simms, wanted to be involved in adding special features.

OS-tan, personifications of operating systems as little girls by Japanese artists. Article includes examples and links. (Thanks Geegaw.)

Only of interest to those with an immediate use for the tech, but I enjoyed's article on Automated Tree Drawing as a nice introduction to XSLT and SVG. I'm slow: Only now do I realize that SVG has immediate applications in my life and work, and is something I should have been excited about with everyone else years ago.

W3's SVG page. Adobe's SVG page, including an SVG viewer browser plugin for Windows and Mac. Apache's Batik project is a set of Java libraries for viewing, editing and generating SVG, including Squiggle the browser. SVG for Mozilla means SVG support will be native to the browser (as opposed to a plugin).

Inkscape is an Open Source SVG editor.'s own XHTML + SVG + MathML WYSIWYG browser/editor Amaya also edits SVG.

September 20, 2004

Trailers for the next inevitably awesome Pixar movie The Incredibles are available. Check out the cast: Holly Hunter, Craig T. Nelson, Samual L. Jackson, Jason Lee, and Sarah Vowell—Sarah Vowell!— as Violet (the daughter). Opens November 5th.

UNIX� on the Game Boy Advance. Nice article for a look-what-we-ported project.

Yay! Myst IV: Revelation (ob. Amazon link) hits store shelves September 28, and includes a Mac version! All of the previous Myst games were made on Macs and had Mac versions, but their MMORPG, Uru: Ages Beyond Myst, only had a Windows client, and I worried that they had abandoned the platform.

Last year I re-played Myst (via RealMyst) and Riven, and started Exile after having it sit on the shelf for about a year, and got most of the way through until a little baby decided to show up and take up all our time. This news motivated me to stay up past the little girl's bedtime and finish it, so I'm ready for the next chapter.

September 17, 2004

Lame. I don't post for seven days and my front page goes blank.

Thankfully, the Movable Type template tag MTEntries has other modes of operation, including one that shows the last several entries. The default mode is to show the last seven days' worth of entries, however, so it took an accidental blank to point this out. To enable the last-n behavior, add the "lastn" attribute:

<MTEntries lastn="5">

See the docs for more information. It's actually quite a powerful tag.

That, plus seven comment spams in the last few hours. I guess I know what I'm doing this weekend.

September 10, 2004

Paul Graham: The Age of the Essay. (Thanks Jason.)

The Society of Professional Journalists Code of Ethics.

Apache and Debian unable to deploy Sender ID. The Apache Software Foundation and the Debian Project have both declared that the Microsoft-patented Sender ID mechanism, which helps identify the origin server of email, is incompatible with their respective licenses due to the license agreement Microsoft has attached to the idea. Any product with an implementation of the patented mechanism must have the Sender ID feature removed before being included in the Debian project. Apache's statement gets specific.

September 9, 2004

NetFlix and TiVo team up for digital delivery of movies!

Thanks Jim for mentioning this article of Eleven SSH Tricks. Jim also has his own article discussing agents, forwarding and tunneling.

An article introducing Scribus, an Open Source desktop publishing solution. The Scribus home page.

September 8, 2004

Best new-to-me discovery of Bumbershoot this year: The Bad Plus. A modern jazz trio completely devoid of pretense, and exploding with talent. Each one of these guys blows my mind individually, and the luck for them to have formed a trio is simply unimaginable. Buy their albums: Motel, These Are the Vistas, and Give. While supplies last, get Give from their website with an autographed booklet. Website also features streaming previews of every song on Give and a few on Vistas.

And yes, they have a blog—like, a real blog, with Bumbershoot photos and everything.

Screenscraping the Senate, using XSLT to make a Semantic Web application out of the Senate web site.

Higher Order Perl by Mark Jason Dominus will be published on November 22, both in print form and available for free online (at that website).

September 7, 2004

DragThing 5.3 has some much-desired features, especially support for application icons that change appearance as the application does stuff, e.g. the Mail icon shows the number of unread messages, the iCal icon shows the current date. I've been running DragThing and the OS X dock (hidden to the left) just so I can check the Mail icon by throwing the mouse. Now I don't even have to do that.

Portable video is finally a reality. Formerly limited to those willing to spend $500 on a fancy Windows-powered PDA, portable music and movies are now available to those willing to spend $500 on a fancy Windows-powered media player.

Just as the iPod was not the first pocket MP3 player, but it is now the best, the inevitable video iPod will not be the first pocket video player.

Now, who will be the first with TiVo transfer capability?

As I've dived headfirst into document authoring with XML, I've been thinking about typesetting musical score again. I like the ideas of Lilypond and its output is great, but it's surprisingly difficult to do correctly for even short, simple bits of music. As I play with auto-validating XML editors, it seems like the kinds of mistakes I tend to make with Lilypond would be much less frequent if it were XML-based (using an auto-validating XML editor).

Of the zillion music notation formats out there, five or six are XML-based. MusicXML seems popular, and is notable for the existence of xml2ly, a MusicXML to Lilypond converter, which may very well provide the best (and worst?) of both worlds. Not sure if MusicXML was meant to be edited by hand like Lilypond is.

MusicXML in Practice, an article on Recordare's web site. Recordare is the creator and curator of the MusicXML format. The article includes a one-note Hello World MusicXML document of 37 lines. 8 of those lines describe the note itself. That might answer the "edited by hand" question right there. (And of course, "edited by hand" is debatably inappropriate for many SGML-based formats.)

A million links and pages on music notation at that site,, including the site author's own XML-based music notation format, MusiXML.

And lastly, MusiXTeX, a TeX macro suite for typesetting music. Mentioning it mostly to say I haven't tried it yet.

September 3, 2004

Movable Type 3.1 launched on schedule! Not sure what to make of some of these support forum posts, but some may be inspired to wait for a point release before upgrading. Me, I just have to get around to it.

With the new post scheduling feature, it's time to say thanks and goodbye to Jim Flanagan's Trickle plugin. I try to post a couple of things each weekday, but I tend to find most of them on the weekend. Trickle has helped maintain an illusion of regular author participation that I couldn't have achieved with MT otherwise. (My old self-written software did this, too.) Thanks, Jim!

It'll take me a while to see if any of the bugs I requested to be fixed got fixed, and examine the callbacks added since 3.01D. I'm hoping I can finally get Builderoo to a proper 1.0 release at some point, fixing some of the issues blocked by MT bugs. Of course, I'm back at work now (and about to be hit by a tidal wave), and nobody seems interested in Builderoo but me, so it may not happen right away. *sigh*

Anyway, yay MT 3.1. Also, is now an official Six Apart website, with a new design.

P.S. MT 2.6 -> 3.0, 1 year. 3.0 -> 3.1, 3 months. 3.0 - 2.6 = 0.4, 3.1 - 3.0 = 0.1. 0.4 / 0.1 = 3 months / 1 year. What's the big deal? (Har har!)

These two articles by Paul Prescod from February 2002 are together an especially lucid introduction to web services, some of its problems, and solutions that can be found in an "architectural style" known as REST. These articles are the number 3 & 4 Google search results for the terms "XML REST".

Results 1 & 2 are two spots in a thread questioning the scalability of REST.

Here's a fresh link to Roy Fielding's original dissertation. See also a rather nice introduction to REST in practice.

And because I enjoyed his writing: Paul Prescod's home page.

September 2, 2004

Powell's prowling Seattle for used books. Portland, OR's famous and large new-and-used bookstore Powell's is setting up a temporary book-buying location in Seattle's University District for ten days in September. On the one hand, Powell's is robbing local book buyers from a local supply. On the other hand, Powell's tends to pay well, so well that many Seattlites (such as myself) tend to keep a stack of books in the closet for the sole purpose of making a road trip down to Portland to sell them. (For store credit, naturally.) And Seattle's local book buyers pay crap, at least for the stuff I'm hawking.

GNU libavl is a library of binary search tree and balanced tree algorithms, written in a literate programming style, so it serves as both a comprehensive implementation and as a textbook explaining the algorithms. (HTML version.) Very pretty, and a wonderful demonstration of literate programming.

nXML: a new XML mode for GNU Emacs. So good, Norm Walsh has abandoned his DocBook Emacs IDE in favor of it.

September 1, 2004 The Critical Masses. Music critic Anne Midgette discusses what the next big thing in musical ideas might be, and how likely we are to miss it. (Thanks Mom.)

As a consumer of music, I'm comfortable with my own personal focus on certain sub-genres of older, Western music. As excited as I am about the possibilities of new music (in any genre), it's cheaper for me to rely on the test of time to highlight the more engaging, more historically relevant works and ideas. I have no difficulty keeping an open mind to newer stuff, but, at a critical level, it takes more effort to put it into a useful context. I'm getting better at differentiating between stuff I don't understand and stuff that I understand but sucks, it's just that there's inevitably much more irrelevant material in the new than in the surviving old. So I shall focus on the old while I build a foundation for appreciating the new, in the hopes that my mind will not shrivel and close before the new gets a chance.

To be sure, when I say "understand," "appreciate," and "relevance," I mean more than drawing an academic landscape. Enjoyment, the sympathetic vibration of the soul to a piece of music, is the end goal, and I'll listen to anything to meet that end. Here's hoping the critics can dig up and broadcast the good stuff that I don't have time to find on my own.

Top Ten Subversion Tips for CVS Users, practical advice and advocacy, for when your wife asks you what's so special about SVN over CVS, and you don't remember because your employer doesn't use SVN and you don't have time to work on personal projects at home to use SVN more often.

The latest version of
has a plug-in API, and a short list of available plugins. Not that Quicksilver users don't already know this, considering that for some reason QS betas are programmed to expire after so many weeks (lame)...