Archive for February, 2004

Don’t Call It a Controller Layer!

Thursday, February 12th, 2004

As John Chang points out, Scott Anguish and his compatriots in Apple Tech Pubs have been doing a bang-up job getting Cocoa’s once, shall we say, minimalist documentation closer to the high standards of Scott’s previous magnum opus: the enormous purple book. Among the revelations in their latest round of revisions: Cocoa’s “controller layer” (a feature introduced in Panther to help developers minimize the amount of tedious “glue code” they churn out while still maintaining a healthy MVC design) has been re-christened as…wait for it…”Cocoa Bindings!”

Whatever you call it, now that Cocoa enthusiasts like me have access to such detailed documentation on Bindings, there is no excuse for us not to finally sit down and learn how to use the new-fangled contraption!

Mac Category RSS

Tuesday, February 10th, 2004

As much as I’d love to think that people read my weblog for my travel writing, music criticism, and other musings as much as my Mac posts, let’s face it: most people are here for the Apple stuff. The last thing I want to do is annoy my Mac-oriented readers with vacation photos and the like, so I thought I’d mention that, thanks to the wonderfully elegant design of the Blosxom weblogging software I use, it is easy to get an RSS feed that includes only posts in a specific category.

To get such a feed, simply click on a category link and then add “/index.rss” to the end of the URL. So, for example, the URL for the Mac-only RSS feed would be:

http://www.scifihifi.com/weblog/mac/index.rss

Voila—subscribe to that in your aggregator, and you’ll never have to hear about my non-Mac interests again!

Casa Bonita

Monday, February 9th, 2004

One of the things I’ve always loved about South Park is that its creators, two Colorado boys named Trey Parker and Matt Stone, seem to have had a remarkably similar childhood to mine. As a lifelong Denver resident (until I moved to California about six months ago), I eat it up every time the show references the cult of John Elway (not to mention Mrs. Cartman’s tryst with the entire 1989 Denver Broncos team), shopping in Cherry Creek, DIA, mountain summer camps, or the dreariness of Colorado’s eastern neighbor, Nebraska. The absolute nadir of South Park’s authentic Colorado references, though, has to be the episode in which Cartman hatches an elaborate plot to incapacitate Butters so he can attend Kyle’s birthday party at the fabulous Casa Bonita.

The day after that episode aired, I spent much of lunch excitedly explaining to my coworkers that Casa Bonita (a Mexican restaurant-cum-theme park) is, in fact, a real place (cliff divers and all), and that I had actually been there as a child (as have many others who grew up attending children’s birthday parties in Denver). Everyone found the story so amusing that I’d been meaning to post about it my weblog for some time, but it looks like tonight Boing Boing beat me to the punch. Damn.

Can any other Coloradans out there think of other good Colorado references I’m missing? Maybe I’ll start compiling a page of them…

(Update: I emailed James Duncan Davidson about a totally unrelated issue, and in his response he related some additional info regarding Casa Bonita. It turns out that his hometown of Tulsa, OK also has a Casa Bonita, and that both restaurants were opened by Bill Waugh, who also founded the Taco Bueno fast food chain found throughout Texas and Oklahoma. Duncan and numerous others, including my Mom, also reminded me of something I really should have mentioned: just in case anybody’s thinking about paying a visit, don’t bother because the food is awful!)

Autoxfn 1.0

Sunday, February 8th, 2004

My recent interest in social software hasn’t been limited to hanging around on Orkut—in fact, it’s spilled over into my personal coding projects as well. Recent diversions from more pressing matters have included a number of experiments, some of which may or may not see the light of day. I did manage to finish one up today, however, and therefore I’m announcing the release of my first Blosxom plugin: a little something I call Autoxfn 1.0:

- autoxfn (Perl Source, 3k)

So what does it do, then? Well, first you need to know about XFN, a metadata profile devised by Tantek Çelik (and a few other people I’m not as familar with). It allows webloggers to represent relationships, Friendster-style, through hyperlinks (using simple “rel” attributes in anchor tags). For example, to identify someone as a friend I’ve met in person, I can use something like this:


<a href="http://www.soandso.com/blog" rel="friend met">Link</a>

XFN appeals to me because:

  • It fits well with my belief that weblogs are a more effective, less evil, form of social software than friend-of-a-friend sites.
  • It meets one of my favorite criteria for great technology: it’s simple.

My only problem with XFN is that it offends my software engineering sensibilities by essentially mixing the model (the relationship data) with the view (the front-end web page). Imagine, for example, that I decide so-and-so is no longer my friend. I now have to go through all of my links and remove the “rel” attributes on so-and-so’s links.

Autoxfn solves this problem by storing the relationship data centrally (in a tab delimited text file) and automatically adding the appropriate “rel” attributes to all links matching given criteria. For example, if the XFN file contains a line like this…


So-and-So soandso.com/blog friend met

…Autoxfn will look for all all links with “soandso.com/blog” in the href and automatically add “rel=’friend met’” to them. Voila: separation of data and presentation acheived!

A few additional notes:

  • The URL match string can optionally be treated literally, or as a regular expression (there is a configuration variable to switch).
  • Pattern matching peformance is kept reasonable by precompiling all of the regular expressions at startup. The plugin is running right now on my weblog and doesn’t seem to be causing any noticable drag. Still, people with ridiculous numbers of friends (Marc Canter, I’m looking at you!) may experience some slowness (finally, what Friendster has needed all along: a penalty for friend-whoring!)
  • The anchor matching regular expression is one of the most obscure (and therefore, in the world of Perl, coolest) I have ever written (try maintaining that future generations of coders!). It should also be liberal enough to warm Mark Pilgrim’s heart. Pretty much any malformed markup that Safari will let you get away with will also be tolerated by Autoxfn.
  • Right now, Autoxfn is Blosxom specific, but I’m sure it could be adapted to work with Moveable Type as well (sort of like John Gruber’s SmartyPants). I might look into it, but I don’t have a working MT installation (and I don’t really feel like setting one up—that’s why I use Blosxom in the first place), so if anyone wants to help, let me know…

(Update: In addition to making an interesting link between XFN and Jon Udell’s experiments with “class” attributes, Bill Humphries has done a much better job than me of explaining what the heck Autoxfn actually does!)

VoodooPad 1.1.2

Wednesday, February 4th, 2004

Gus Mueller released an update to one of my all time favorite Mac applications, VoodooPad, today. Among the new goodies are: a beautiful new application icon, snazzy new toolbar icons, AppleScript support (meaning one of these days I can get around to implementing the VoodooPad/Bluetooth/Series 60 phone syncing feature I’ve been jonesing for), and best of all (being the megalomaniac that I am) my name in the About window! Thanks, Gus—I’m honored to be a part of the VoodooPad legend (although who you callin’ a hipster :-)?).

Catching up with the Mac

Wednesday, February 4th, 2004

Lately I’ve kind of been lamenting how little Mac content there has been on this site, which was once rife with it. So, here, in one massive post that probably no one will read, is my backlog of Mac ruminations:

  • I completely missed posting any MacWorld commentary (even though I briefly attend the show), but I would just like to go on record as saying that I seriously dig the iPod mini. As with most of Apple’s stuff, you really have to see it “in the flesh” to appreciate it. The new scroll wheel design is typically brilliant Apple industrial design, and the anodized aluminum (which isn’t really done justice by the photos) should be a welcome change from the old “Most Scratch-Prone Substance Known to Man™” finish. Also, like Steven Frank, I really dig the new display font.

  • I had intended to have a GarageBand composition or two posted by now, but I’m afraid work, my weblog, my personal software projects, and the inevitable necessity of contact with “other people” leaves barely an hour a week in which to get funky with my trusty Telecaster.

    My little brother Bobby, on the other hand, has proven to be exactly the sort of bedroom Kevin Shields or Jason Pierce that Apple had in mind when it created GarageBand. Within a few days of getting his hands on the software, he was already turning out stuff like the song below:

    - I Know (MP3, 8 MB)

    In general I tend to agree with Alexander Payne’s assertion that most GarageBand songs will have an inevitable sameness (I’ve been known to call GarageBand’s “pro” sibling, Soundtrack, the PowerPoint of music software), but Bobby’s work-in-progress makes me optimistic about its possibilities.

    And heck, Jonas has already had his GarageBand work played on NPR! Can Clear Channel infiltration be far behind?

  • As someone who is involved with the software update process at Apple, I’ve been dying to call everyone’s attention to one of my all-time favorite As the Apple Turns episodes, in which Jack exposes the terrifying truth about how Apple software updates are spawned. I just hope linking to his harrowing exposé won’t draw the wrath of the powers that be! At least now you’ll know why I get so busy from time to time…

  • Even though it’s old news by now, I would be seriously remiss if I didn’t give massive props Andy Hertzfeld and Folklore. The weekend that site was launched, I lost serious time reading anecdote after amusing anecdote about the original Mac team, and I know a lot of other Apple employees would admit to sneaking a peak from time to time while waiting for something to compile.

    What I love about Folklore, as opposed to the Computer History Museum’s Apple History Weblog, is its tone. It’s not overly reverent, but it also isn’t populated by bitter people with a bone to pick or pet theory about “Why Apple Failed!” Rather, it simply leaves you with enormous appreciation and respect for the eccentric geniuses (such as the largely forgotten hardware designer Burrell Smith) whose vision made Apple and the Mac so special.

Phew—after all that, I shouldn’t have to update my weblog for a week!

Welcome Elke

Tuesday, February 3rd, 2004

Since I really appreciated it when people did it for me, I wanted to take a moment to welcome Elke Sisco to her new job: making Apple software safe for German-speakers everywhere. Congrats, Elke—I’m sure Dominik, Frank, and the rest of the German Mac community will appreciate your expertise!

Cliquester

Tuesday, February 3rd, 2004

Like a lot of other people, I’ve recently found myself simultaneously intrigued and repulsed by the brave new world of “social software.” On one hand, browsing my Orkut network holds an odd fascination: it’s like checking out the people at a party (except that at this party all of said people are frozen in museum display cases), and it’s certainly emotionally satisfying to receive an email saying that someone has designated me their friend. On the other hand, these friend-of-a-friend sites (and the invitation-only Orkut in particular) often seem less like forums for fluid networking than a way of modeling and reinforcing high school-style cliques, which I think everyone would agree are among the less desirable features of human social interaction (perhaps the social software entrepreneurs of the world should hire the author of Queen Bees and Wannabes as a consultant).

I think a lot of what makes me queasy about sites like Friendster, Tribe.net, and Orkut is that they’re fundamentally shallow in their notion of “friendship.” As Adam Kalsey points out, friends on social networking sites are not made, but collected. Beyond that, they don’t seem to have much of a purpose. This is especially true of Friendster, but it also applies to Tribe and Orkut, whose attempts at community seem a bit tacked on and underutilized to me.

This is not to say that I’ve written the idea of social software off entirely, though. I’ve recently become quite fond of del.icio.us, a bookmark site that allows you see what others have been bookmarking as well as which of your own bookmarks have been bookmared by others (I’m ldandersen). I’m a big Wiki fan. And I’m still of the opinion that weblogs, with their unique ability to let you in on slices of other peoples’ lives (see Tom Coates’ “Snow in Norfolk” post for one of my favorite recent examples of this), are the deepest, most effective form of social software yet devised.

To sum up, I believe social software has a future, but I’m definitely not convinced that Orkut and its ilk are anything more than a fad.

(Update: Jonas Luster’s del.icio.us bookmarks pointed me to auctions of Orkut invitations on eBay, a development that I find nearly as crushingly depressing as the advent of imaginary girlfriend auctions.)