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.

March 2005 Archives

March 31, 2005

Linux users have never had a problem with reading basic PDF files, but Adobe Reader v7 for Linux provides a better viewing experience.

Jeffrey Veen: State-of-the-art interactivity?

The ZoomQuilt, a collaborative art project [Flash]. (Thanks Zannah.)

March 30, 2005

A fan/abandonware site for Garry Kitchen's GameMaker, the game development and runtime environment for the Commodore 64.

Nvu is a web authoring system derived from Mozilla Composer that hopes to rival FrontPage and Dreamweaver. Open source, free, and for Windows, Mac or Linux. I need a good free web page editor to recommend to non-technical (HTML-phobic) folks, maybe this is it.

Tom Coates of Social Software for Set-Top boxes.

March 29, 2005

A nice article on one of my favorite Commodore 64 games: Crossroads, and its sequel Crossroads II: Pandemonium. Includes disk images for you to play on your favorite C64 emulator. (Sadly, I can't get the disk images to work in Power64.)

If what you liked most about retro computing is the music, SIDPLAY for Mac OS X emulates the SID audio chip from the Commodore 64 and plays music files of the era.

Of which there are thousands, including music from C64 games, tracks from the demo scene of the day, and even tracks from contemporary composers. A lot of similarity in the demo scene tracks makes much of the collection difficult to enjoy, but it's still impressive.

A collection of emluators of various computers for Mac OS X.

March 28, 2005

[Updated: Thanks to Mike for pointing out I originally got my links mixed up for this entry. Below is proper text for the original link, and a new link for what I originally intended to post.]

Project 64 collects and transcribes old manuals and documentation for Commodore computers, including the C64, C128, the Amiga, and assorted software.

Power64 is a Commodore 64 emulator for Mac OS X. Shareware, demo limited to 10 minutes, but a definitive emulation for OS X. Good sound emulation, a nice disk drive management interface, and an adjustable anti-aliased display.

Nifty Corners: rounded corners using CSS, no images. (My rounded corners use images, so 1999.) (Thanks, Matt.)

Ajaxing the Rails. 8O

March 23, 2005

SouthernMedia's News Music Search Archive, a database of local TV news themes throughout history and across the country (U.S.). Check out which generic news theme sound packages were used (and re-used) by whom and when. (Thanks Matt.)

Lessig's "Code" rewrite wiki is up.

March 22, 2005

Tom 7: Illustrated Notes from Computer Science. Not exactly, uh, informative, but very cute.

amaztype, an exceptionally clever search interface [in Flash].

March 21, 2005

Incremental GTD App Hacking. Fraser Speirs puts together a GTD solution with OmniOutliner and AppleScript. OmniOutliner is what (finally?) got me interested in AppleScript enough to buy a book.

Will Wright Presents Spore, a next-generation (er, no pun intended) sandbox game with an emphasis on solving the game industry's expensive content creation problem with a player-driven dimension of gameplay. Photos from the presentation.

Yahoo buys Flickr. And just a couple of days ago I began evaluating both Yahoo Photo and Flickr for photo hosting...

March 18, 2005

How to Snatch an Expiring Domain. A nifty article on the registrar business, and timely now that many of the tech bubble squatters are letting some of their stock expire.

Finding Lisp, a learning blog for the Common Lisp programming language.

IEEE Standard 754 Floating-Point, in case you've ever wondered why your computer thinks 10.19 - 9.80 = 0.38999999999999, and 10.18 - 9.79 = 0.39000000000001.

March 17, 2005

dord (dôrd), n. Physics & Chem. Density.

MacSpice, a free circuit simulator for Mac OS X (or 8.6). The latest version, 3f5, is free, but not open source. 3f4 is open source, and is mostly a port of the original UC Berkeley project, Spice3.

CLiki, a Common Lisp wiki.

March 16, 2005 includes an archive of audio for 1,275 complete episodes (issues?) of The Doctor Demento Show, as far back as 1972 and as recent as 2005. (Thanks, Jerry.)

It appears the site maintainer has put heavy restrictions on access to prevent people from slurping the massive amount of content on the site. While I sympathize with any admin coping with the bandwidth burden of a popular web site, I don't see how you can put this kind of material online and expect fans not to try and collect it. It's valuable; it's digital; it is offered in the spirit of collection, openness and sharing; it's available now, and it may not be available later (for legal, physical, or mortal reasons). Forgiving the legal grayness of abandonware, this is what BitTorrent is for.

Still, woo!

Electronics suppliers list from the ugly but useful Science Hobbyist web site.

The Common Lisp Cookbook.

March 15, 2005

MS Excel Tips and Techniques.

Stu Feldman on quality assurance for large software projects. Part 2.

Wing Commander Privateer fan-made remake, for Windows, Linux, and Mac OS X. Naturally, I couldn't get the OS X version to run, but still pretty sweet.

March 14, 2005

Code as Design: Three Essays by Jack W. Reeves. The first is Jack's 1992 essay on software design, the second is a response to the 13 years of discussion on the subject, and the third is a 1992 "letter to the editor," which includes the phrase, "...[A]bout ten years ago I came to the conclusion that, as an industry, we do not understand what a software design really is."

The IEEE Virtual Museum: The history of electricity, electronics, and computers. Mostly for a young, general audience; some neat photographs of actual museum artifacts.

Curt Hibbs has published part 2 of his tutorial, Rolling with Ruby on Rails, Part 2. In it, he mentions Amy Hoy's detailed visitation of the first part, which is also neat.

March 11, 2005

nXML quick reference. Thanks Jason!

SAJAX - Simple Ajax Toolkit for PHP. Open source library for building Ajax web sites with PHP. Woo!

Boing Boing Cory likes to blog about mash-ups, the art of editing multiple pieces of recorded music together to form new works, an ultra mega form of sampling and further on the edge of fair use. DJ Earworm, particularly his latest "No One Takes Your Freedom," has caught my interest for this underground art form.

More famously: DJ Dangermouse's Grey Album, an album-length mash-up of The Beatles (aka The White Album) and Jay-Z's "The Black Album," was Entertainment Weekly's album of the year 2004, among its other honors.

March 10, 2005

Preserving Backward Compatibility.

Color Rules of Thumb. (Thanks Girlhacker!) Much needed by me.

Don Lancaster's TV Typewriter, a reprint of an amazingly prescient article in the September 1973 issue of Radio Electronics magazine. The site includes the complete booklet you could order from the inventor.

Lots more on vintage computers from the Southwest Technical Products Corporation.

March 9, 2005

Guide to Using XMLHttpRequest (with Baby Steps) from WebPasties, including the cross-browser wrapper function I expected I needed to look for but never got around to. Also: XMLHttpRequest Introduction has links to a bunch of resources. (Thanks Jason.)

And Google Maps works in Safari and Opera now.

Katamari Doh-macy: Katamari Damacy in Play-Doh.

The New Yorker on cell phone ringtones.

If a song can survive being transposed from live instruments to a cell-phone microchip, it must have musically hardy DNA. Many recent hip-hop songs make terrific ringtones because they already sound like ringtones. The polyphonic and master-tone versions of “Goodies,” by Ciara, for example, are nearly identical. Ringtones, it turns out, are inherently pop: musical expression distilled to one urgent, representative hook. As ringtones become part of our environment, they could push pop music toward new levels of concision, repetition, and catchiness.

(Thanks, robotwisdom. —??? Hey, robotwisdom is back!)

March 8, 2005

How Motherboards Are Made, a photo tour of a computer motherboard factory. So much automation, it's almost as if machines are giving birth to new machines. for sale. My own project BlogTracker was a precursor to, and I mostly abandoned my version because I didn't have the time to make it work well. Part of my justification for abandoning it was that seemed to be working nicely, and was filling the niche well enough for both of us. (BlogRolling also solved a similar problem in a slightly different way, and I'm told it works well enough for most people's purposes.)

RSS readers try to solve a completely different problem, and for many are a substitute for ping trackers in that they also surface new content in weblogs as it appears. It's a terrible solution for that particular problem, however, as it requires every reader's computer to hit the weblog directly every N minutes (however many the reader specifies, often a uselessly low number like 5 or 15).'s pinging solution was meant to prevent exactly this pattern of use, by allowing blogs to explicitly invite such programs to download new content. Nevertheless, RSS readers are popular, and ping aggregators thereby less so.

When's service and reliability got spotty,, which both used's feed and gathered pings directly, became a nice secondary destination for blog pings. For a long while, Movable Type has included in its default list of services to ping, so there's a large install base sending pings to the domain name that's for sale. The obvious possibility would be that SixApart could pick up and include the service in their suite of offerings, but these days I'm less inclined to assume small companies ought to be spending money to give me something for free.

There ought to be a competent, reliable, well-maintained, free weblog update ping aggregation and browsing service. If I could afford to host the service—or believed it could be sustained on donations—I would seriously consider making Jim an offer.

SciFi is rocking the casbah with its official Battlestar Galactica web site [Flash required]. First they put the first episode online in its entirety, commercial-free and with deleted scenes. And now: podcasts with Ron D. Moore commentary for each episode to be played in sync as you watch. Download the MP3s manually, or use the podcast feed with your favorite podcast application to fetch new audio automatically as it is published. Audio for new episodes will be available before the episode airs, so you can watch the ep then immediately rewind and watch with the commentary played by your MP3 player.

Wikipedia on podcasting.

March 4, 2005

Cocoa Game Programming Workshop by David Hill, a 152 page e-book for $10, including complete source and binary for the 2D game described in the workshop.

Geoff Broadwell continues his fun series, Building a 3D Engine in Perl.

March 3, 2005

It's about time: Red Dwarf, series 5 and series 6, on DVD in the US, March 15, 2005.

FedEx Kinko's DocStore lets you order prints of documents from your personal computer, to be printed, cut, folded, and bound at any FedEx Kinko's to your instructions. You upload the files yourself directly from your computer, and you select which Kinko's location to use. Pay online, pick it up later.

They've done their damnedest to keep their web site simple and easy to use, and I appreciate it. But in trying to simplify their site, they've taken out (or refused to surface) important information I'd want to know as a first time user. For instance, how much does it cost? It appears I'd have to set up an entire order to get a price sheet—which makes some sense, since the price will vary by document—but I can't seem to get an estimate ahead of time, or figure out if it's worth my time to print it myself and walk to Kinko's for the binding.

There's no mention of supported document formats, which is so obviously an attempt to simplify the design that I want to consider it a win. But I don't like assuming that MS Word XXXX and PDF are supported, and it'd be lame to prep my documents only to be told at the end of the order process (or perhaps just after uploading 20MB of files) that I'm in the wrong format. But perhaps I shouldn't exaggerate: it's difficult to imagine MS Word XXXX, PDF, and RTF aren't supported, and 20MB over a DSL line is not a real bother.

It also seems some major features aren't available yet. The (quite nice) help pages describe fancy features, like "broadcast printing" (making a single document available in many locations, perhaps with FedEx delivery), business accounts with spending limits, and a print-on-demand storefront. But these features do not appear to be available at the web site; I assume they would appear under "Options For Ordering" on the front page.

-2 points for bullying me for using Firefox (calling it a pre-"4.0" browser, even), but +1 for giving me an option to proceed anyway.

I've been downloading and printing free online technical books and taking the results to Kinko's for a spiral binding, so maybe I'll give this a try just to see how it works. With some minor complaints, DocStore seems like a very slick web offering.

Microsoft presents: A parent's primer to computer slang. (Thanks Dan.) MS tips their hand as to why they assembled the guide:

The following is a sample of key words that haven't changed fundamentally (although variations occur) since the invention of leetspeek. The first series is of particular concern, as their use could be an indicator that your teenager is involved in the theft of intellectual property, particularly licensed software....

March 2, 2005 is the official web site of the book, Refactoring, by Martin Fowler, et al. It's also an excellent general resource on refactoring, the art of incrementally rewriting software without changing its behavior. The refactoring catalog includes much of the material from the book. This table of "smells" shows when and where you might apply refactoring, and which refactoring patterns would be appropriate.

The Happy Hacking Keyboard series is popular with programmers for its key placement and its size. The Happy Hacking blank keyboards, with no letters on the keys, are now available in the U.S. If Qwerty isn't your style, or if you just don't like hints, get those letters off the keys!

Introducing web services, with JavaScript using Internet Explorer's WebService component. II, III, IV, V, VI, VII, VIII, IX, X, XI. Hmm, IE-only WS component...

Ah, here we go: Mozilla SOAP API. Let there be a public domain cross-browser wrapper library!

See also this weird but nice article on SOAP, AppleScript and Perl: AppleScript for the client, Perl for the service, on the same machine, which, apparently, you'd want to do as a way to pass structured data between AppleScript and Perl. There are probably other uses, too!

March 1, 2005

"How will this software get my users laid" should be on the minds of anyone writing social software (and these days, almost all software is social software).

jwz on designing for the end user

Katie Lucas on RUP. I'm pleased to see this little essay because it seems like too many people behave as if they didn't already know this. On multiple occasions, I've taken a class or read a book purporting to be about OO design (or data modelling or process modelling), only to spend weeks learning how to describe a design in a standardized diagram notation, and learning nothing about how to come up with the design in the first place. I even convinced myself I was supposed to be learning about good design from the notation itself, somehow, since that's all they were teaching. I expect good classes and books to address the notation, like a computer science program needs to teach a programming language, but I've been burned by misplaced emphasis (or at least bad course descriptions).

SpiderWorks: Danny Goodman's AppleScript Handbook, Mac OS X edition, available as an e-book (PDF) for $15.