Linked List: May 2005

Hypertext Links as Native UI 

Michael McCracken on Apple’s goofy new practice of using hypertext links as UI elements. I think their use in the Spotlight results window is particularly atrocious.

Carbon and Cocoa Are Not Mutually Exclusive 

Apple engineer Eric Schlegel, in a post to the Carbon-Dev mailing list:

I think the important point to understand is that artificially dividing up the world of Mac OS X APIs into Carbon and Cocoa, and considering that these are mutually exclusive, is the wrong way to look at things. Mac OS X provides a huge variety of APIs at different levels for use by an application. Some have C interfaces, some have Objective-C interfaces. Someday we may even have C++ interfaces. A Mac OS X application is just that — a Mac OS X application, not really a Carbon application or a Cocoa application. A Mac OS X developer should be prepared to use any API from across the system that does the job, regardless of what framework it comes from. Our job at Apple is to make that possible, and to remove barriers that are in your way when trying to use CoreImage in a app that uses primarily HIView, or a Carbon event in an app that uses [NSApplication run], or using a POSIX API from an app that uses Swing, or whatever is blocking you from using the most appropriate API for the task.

Bookmark this and send it to anyone who claims that only “Cocoa apps” are “truly native” Mac OS X apps.

Apple’s Source Lists 

Sven-S. Porst compares and contrasts the various source lists in Apple’s application software. Yet another indictment of Apple’s lack of system-wide consistency.

Splitters Gone Wild 

More analysis of Apple’s UI designs from Brent Simmons. I love this sort of thing — I wish I’d written this.

Brent Simmons on Mail’s New Toolbar 

He thinks the reason is that Apple is moving toward toolbar buttons that look like, well, buttons — as opposed to the original Aqua style of toolbar buttons that just look like icons — but that the monochrome toolbar buttons like those in Safari and Dictionary wouldn’t work in Mail. I agree. But the unmentioned downside is that it’s further evidence that Apple’s UI design in the Mac OS X era is too trendy. That most people agree that even Mac OS X 10.2 now looks dated is proof.

BBEdit PHP Function Parameter Auto Complete 

Alan Storm has created a funtion-parameter auto-complete utility for PHP programmers who use BBEdit.

The Mac Startup Sound 

Jim Reekes on the creation of the Mac startup chime. (Thanks to Anil Dash, guest-posting at

Learning Darwin From Its Sources 

InfoWorld’s Tom Yager hails the readability and relative simplicity of the Darwin source tree; he sees it as a big win for readability and simplicity that Darwin only targets two architectures: PowerPC and x86. (As opposed to Linux, which targets just about anything with a CPU.) Yager points out that you can now download bootable Darwin disk images, which I did not know. (Via Nat Irons via email.)

Store Wars 

Very funny spoof, with terrific voice casting.

‘Incredibles’ DVD Easter Egg 

Philip Greenspun’s cousin Doug Frankel is an animator at Pixar; he appears in an Easter egg on the Incredibles DVD disc 2.

Why AdSense for Feeds Is a Bad Idea 

Matt Haughey:

Who would you subject to advertising, if you had a say in the matter: random visitors or your biggest fans?

WireTap Pro 1.1 

Updated version of Ambrosia’s rival to Audio Hijack Pro.

Lightsabers Considered Harmful 

For over a thousand generations, moms across the galaxy have warned: be careful with your lightsabers.

Fetch 5.0 

Major update to the venerable FTP client. Now supports SFTP, sports a revamped user interface (including an update to Fetch’s trademark donut-ring progress indicator), and much more. Definitely worth a look.


House Industries’ brand-new text face family, designed by John Downer. Includes different faces for use at different sizes. Strikes me as very sturdy, but definitely not plain. The ‘r’ and ‘c’ seem quite distinctive.

How to Speed Up Publishing in Movable Type 

Performance tips from Six Apart.

Podcast Support Coming to iTunes 4.9 

At the Wall Street Journal “D” conference, Steve Jobs demoed a beta of iTunes 4.9 with built-in support for subscribing to podcasts.

‘iCon’ Rips Off Deutschman’s ‘The Second Coming of Steve Jobs’ 

Alan Deutschman reviews Jeffrey S. Young and William L. Simon’s iCon for The San Francisco Chronicle, and shows that much of its reporting is lifted directly from his own book, The Second Coming of Steve Jobs.

Modern Art With Safari Canvas Bug 

Jon Rentzsch has found a bug in Web Kit’s <canvas> tag implementation that results in random bitmaps:

If you specify a canvas width ≤ 54 and a height ≤ 71, Safari appears to use an uninitialized pointer to render the canvas, displaying raw memory as bitmaps.

Paul Ford on TimesSelect 

Paul Ford’s astute and optimistic take on The New York Times’s plan to start charging $50/year for web access to some of their content. My big question that I haven’t seen answered anywhere is whether this content will be ad-free, like when you pay extra for HBO, or whether you’re still stuck with web ads. I read The Times op-ed page every day, so I’m leaning toward paying, but if they’re still going to put large animated ads in my face, that might keep me from coughing up the dough.

PowerBook and iBook G4 Battery Exchange Program 

Apple has info on a battery recall for some PowerBook and iBook G4 models:

In cooperation with the U.S. Consumer Product Safety Commission (CPSC) and other international safety authorities, Apple is voluntarily recalling certain lithium ion rechargeable batteries that were sold worldwide from October 2004 through May 2005 for use with the following notebook computers: 12-inch iBook G4, 12-inch PowerBook G4 and 15-inch PowerBook G4.

Das Keyboard 

Black keyboard with unmarked key caps, marketed to “übergeeks” who might get off on the fact that most people couldn’t use this keyboard.

Netflix Takes Over Wal-Mart DVD Rentals 

Good news for NetFlix users, but Blockbuster is their main rival.

Disabling Spotlight for a Volume 

Steven Frank on how to disable Spotlight indexing on a specific volume (in his case, a FireWire drive he uses for backups).

Yahoo Screws Napster 

Napster’s entire schtick is that they claim to offer a cheaper deal than Apple. But it’s an apples-to-oranges comparison, because the iTunes Music Stores sells songs that you keep, and Napster sells subscriptions that you have to keep paying for. Yahoo has introduced their own subscription service, and their prices are less than half of Napster’s. Napster’s response to Yahoo: nothing.

Backpack Web Services API 

Sweet. The guys at the O’Reilly Radar weblog are already putting it to use.

Mac OS X 10.4.1 Disables Mail Plug-Ins 

Michael Tsai, developer of SpamSieve:

It’s not every Monday that Apple releases an OS update two hours after the close of business (on the East Coast) that breaks your software.

What happened is that some third-party plug-ins were causing Mail to crash on 10.4.0, so for 10.4.1, Apple disabled all Mail plug-ins — including SpamSieve, which according to Tsai caused no known conflicts. Sort of an “If it’s not our baby, why not throw it out with the bath water?” solution.

Mac OS X 10.4.1 

Lots of bug fixes in 10.4.1. In my experience, 10.4.0 has been the buggiest release of Mac OS X since the 10.1.x days (let’s not even mention the 10.0.x releases).

20 Cool Tiger Features You Might Not Have Heard About 

Great MacDevCenter article by Scott Knaster. He pointed out a bunch of things I didn’t know about. I’ll filch a couple of these for the Tiger Details list, but the whole article is definitely worth reading.

Columns and Grids 

Excellent essay by Dave Shea on grid/column-based web layout, with numerous links to well-designed sites.

Deconstructing Maui X-Stream 

DrunkenBlog has published a copiously-researched exposé of Maui X-Stream, the company that was previously exposed as having ripped off the open source Pear project for “Cherry OS”. It ends up their main products — streaming video and audio encoders and servers — are violating the licenses of several open source projects, too.

This is an enormous and impressive piece of investigative journalism from the pseudonymous Drunkenbatman, conducted and published in the face of legal threats from the dirtbags at Maui X-Stream.

Ian Betteridge has a report on this at Publish, with quotes from Maui X-Stream President Jim Kartes denying the charges. But Kartes acts as though the charges against Maui X-Stream are merely speculative; they’re not. The charges are based on hard evidence: strings contained in the own software binaries.

NetNewsWire 2.0 

Our long national beta is over: NetNewsWire 2.0 is out. It’s no wonder the beta period lasted so long: This might be the most-improved 2.0 version of any app I’ve ever used — and I like NetNewsWire 1.0 a lot. This is one of the handful of apps that I depend on every day.

DiskWarrior 3.0.3 

Alsoft’s essential disk utility has been updated for Tiger. If you have a brand-new Mac, you may need to order a replacement CD, but if your existing DiskWarrior CD can boot your Mac, you can upgrade by downloading a 2.9 MB updater.

BBEdit 8.2.1 

It doesn’t seem to be mentioned in the release notes, but among other improvements and fixes, BBEdit now supports the Mac OS X 10.4 Dictionary panel when you use the Command-Control-D system-wide keyboard shortcut.

Importing Audio Book CDs Into iTunes 

Good tips from Michael A. Alderete for saving disk space and making audio books easier to navigate on iPods.

What’s New in iTunes 4.8 

Christopher Breen investigates for Playlist. (If Apple had shipped actual release notes with iTunes 4.8, we’d all know what’s new already.)

Dive Into Greasemonkey 

Wow, what a fun surprise: Mark Pilgrim has written a free book about Greasemonkey, the clever scripting/extension system for modifying web pages you visit using Firefox. Fantastic.tunn

Serious Disk Image Bug in Mac OS X 10.4.0 

Dave Nanian at Shirt Pocket has found a serious bug in Tiger:

We’ve just reproduced a bug in Tiger’s image handling that any SuperDuper! users should be aware of.

Basically, if you create a sparse image in Tiger and back up to it, everything is fine. You can unmount it, and the file size is as you’d expect.

If, however, the image is larger than about 1GB and you try to mount it, Tiger will destroy it, and set its size to 1008MB.

I cannot recommend that you rely on any application, including SuperDuper!, that uses images until this Tiger bug is fixed.

Mac OS X 10.4: About the Reset Printing System feature 

There’s a new Reset Printing System feature in Mac OS X 10.4; if you can’t print anything after upgrading to Tiger, this seems to do the trick.

Technical Note TN2139: Debugging Dashboard Widgets 


This Technical Note covers common problems and errors encountered during the development of a Dashboard widget, along with techniques for discovering and preventing such problems. It is targeted at developers working with Dashboard on Mac OS X Tiger.

Build a Dashboard Widget 

Andrew Anderson’s introductory guide to developing your own Dashboard widgets.

Google Web Accelerator’s Obnoxious Pre-Fetching 

Google’s new “web accelerator” for Windows users, which seems mostly to be a shared cache that serves pages from Google’s fast data centers, can lead to serious problems with dynamic pages and web apps. The reason is that it attempts to pre-fetch the content of every link on a page. The idea being that by pre-fetching the content of every link, Google can then serve your “next page” as quickly as possible.

This might make browsing seems a tad faster to the user, but it can wreck havoc for the site publishing. For one thing, it’s going to totally screw with your web stats. Pages are going to get hit by Google’s “accelerator” that are never actually followed by users. This is obnoxious; it’s like ordering one of everything from a take-out menu, then deciding what to eat after all that food gets to your house.

Jason Fried from 37signals writes about how it screwed with Backpack:

Google is essentially clicking every link on the page — including links like “delete this” or “cancel that.” And to make matters worse, Google ignores the Javascript confirmations. So, if you have a “Are you sure you want to delete this?” Javascript confirmation behind that “delete” link, Google ignores it and performs the action anyway.

See also: Rael Dornfest at the new O’Reilly Radar weblog.

iPod Shuffles Made Out of Food 

Now you can eat iPod Shuffle.

Syndic8’s Search Engine Spam 

Andy Baio is reporting on another case of a legitimate site with high page rank hosting thousands of articles for a search engine spammer. This time it’s Syndic8, and within a day of Baio’s report, Google has blacklisted them. But how are these sites getting into the AdSense program in the first place? How widespread is this sort of fraud?

Type Cast 

Free font previewing Dashboard widget. This is the first third-party widget I’ve considered keeping. Very cool. (Thanks to Dan Benjamin.)

CSS Cheat Sheet 

Dave Child’s terrific one-page CSS cheat sheet. (Via Dave Shea.)

iPod Shuffle Grabs 58 Percent of Flash Player Market 

Brad Gibson reports on outstanding iPod Shuffle market-share numbers from a report by Merrill Lynch analyst Steven Milunovich. Even more impressive is that Apple CFO Peter Oppenheimer told Milunovich that Apple was supply-constrained in March, meaning they couldn’t make Shuffles fast enough to keep up with demand.

A Short History of DragThing 

To mark its 10-year anniversary, James Thompson has written a nice page documenting the history of DragThing, one of the most popular and successful interface utilities in the history of the Macintosh. Includes lists of 10 things you didn’t know about DragThing, 10 apps used to make DragThing, 10 killer Apple technologies DragThing has not used, and, at the bottom of the page, a $10 discount valid during the next 10 days. And if anyone knows the DragThing 4 Easter egg, let me know. (Via John Siracusa, via AIM.)

iChat’s Jabber Support 

Jabber developer Julian Missig’s critique of iChat 3.0’s Jabber support.

PGP Desktop 8 Not Compatible With Tiger 

And version 9.0, which is still in beta, hasn’t been certified for Tiger yet, either, but apparently it works. At least that’s how I interpreted the phrase “early compatibility testing has proven successful”. It’s not like Tiger’s release date was a surprise.

One Record Company Holding up ITMS in Australia 

This sucks, at least if you live in Australia:

An agreement with one major record company stands between Australian iPod users and their Holy Grail – the long-awaited Apple iTunes Music Store.

A source said yesterday Apple had planned to launch an Australian version of its popular online music store last Thursday, as widely touted, but the launch was thwarted by one unnamed major record company that refused to sign an agreement in time.

The hurdle reportedly forced Apple to cancel radio advertisements ordered for the date, and it is expected to delay iTunes’s launch by days, or possibly weeks, as song and album prices and payments are negotiated with the holdout label.


Steven Frank on Cake, a Rails-like web application framework for PHP.

Matt Neuburg: Write Your Own Automator Actions 

Terrific article from my favorite Mac writer, on how to create your own Automator actions written in AppleScript.

Mercury Text 

New typeface family from Hoefler & Frere-Jones, primarily intended for use in newsprint. Great-looking face, with a mind-boggling number of features, including a unique system of four “grades”. The grades allow you to account for differences in paper, ink, and printing method. (Via Kottke.)

Adium X 0.80 

Significant update to the open source multi-protocol chat client. Long list of changes, including a much-needed rewrite of the status message system. Too bad file transfers on AIM still don’t work, or I’d switch from iChat in a heartbeat.

Automator ‘Run Web Service’ Parameters 

Jon Rentzsch has an absolutely killer tip regarding Automator’s Run Web Service action. It’s neat, but you have to hard-code the parameters; there’s no obvious way to use the results of the previous workflow as input to be used as the parameter for your web services call. What Rentzsch discovered is that the parameter field for the Run Web Service action can be specified as a snippet of AppleScript, which you can use to access the results of previous workflow steps. Excellent.

Backpack Launches 

The guys at 37signals have launched their new Backpack web service. I got to test it, and it’s a very slick UI for a web app. The idea is that you use it to organize related information — lists, notes, reminders, images, files — together on a single web page. Definitely worth checking out. This is leading-edge web app UI design.

xScope 1.1 

Sweet update to The Iconfactory’s $15 screen measurement/inspection utility for designers. My favorite two changes pertain to rulers: they can now be nudged one pixel at a time using the keyboard arrow keys, and they now (optionally) display the current mouse cursor position.

iMac G5 Speed Bumps 

Best news: they all come with 512 MB of RAM.

DarwinPorts 1.0 

DarwinPorts is an easy way to install and update open source software for Mac OS X. Like Fink but better.

Eudora Is Being Converted to Cocoa 

They expect to ship later this year. Eudora is a quirky app — it’ll be interesting to see how they balance keeping it familiar to long-time Eudora users and adopting modern Mac OS X UI conventions. (Via Michael Tsai.)

Michael Tsai’s Tiger Notes 

Lots of astute observations here.

Lame ‘Tiger’ Headline Puns 

Kottke’s list of lame headlines about the release of Tiger. (I seriously considered calling my Tiger Details feature “Tiger Beat”, but focus-group testing indicated that it wasn’t funny.)

Longhorn Beta Screenshots 

I know it’s a beta, but yeesh — this is one ugly and convoluted user-interface.

Andy Ihnatko’s Tiger Report 

Sections on Spotlight, Automator, Dashboard, iChat, and Safari.

ADC: What’s New in Mac OS X 10.4 

Developer-level overview of what’s new in 10.4. This is much better than Apple’s marketing material in terms of getting a general idea of where their software engineering effort has been spent.

The Finder’s Lame Path Display in Search Results 

When you perform a Spotlight search in the Tiger Finder, at the bottom of the results is a small one-line display of the path to the selected item in the results list. This path display stinks — it’s utterly inadequate for displaying paths more than a few levels deep, because it never grows to more than one line. So you end up with a bunch of unlabeled folder icons next to each other. Nicholas Riley skewers this design on his weblog.