Archive for October, 2004

Open Office, Mac-Style

Another short entry tonight, I’ll try to do something more substantial tommorow. For now, good news for OS X users who don’t want to shell out the big $$ for MS Office. Patch 3 for the 1.1 Alpha 2 version of NeoOffice/J, an OS X port of OpenOffice which does not use X11, has taken another step by moving the menus out of the individual windows and into the System Menu bar where they belong. (Via Tim Bray and TaoOfMac). Tim’s post includes a screenshot.

A note on the particulars: Currently, the main site doesn’t mention the patch except on the downloads pags, and that patch is the wrong version if you want integrated menus. So, first download NeoOffice/J 1.1 Alpha 2] from the NeoOffice/J download page, and then get the Aqua-menus version of patch three from this post.

Neat Trick

Just a quick link tonight: Making a WiFi antenna from a $5.00 chinese strainer. So cool. (via Hackaday).

Grand Opening

Yesterday afternoon, I stumbled upon an article (not sure where) about Apple opening new ‘mini’ stores in smaller retail locations. This reminded me that my local mall has an Apple store going in! My location wasn’t listed in the article as a ‘mini’ location, so I searched around Apple’s site looking for some information. Serendipity struck, as it turned out that today was the grand opening. Not only that, but t-shirts were promised for the first thousand visitors. Excellent! I made a plan to be there when the store opened, at 10 am.

My wife warned me this morning that I should arrive early. I didn’t see a need, since I had not seen or heard any press about the opening. Whoops. When I arrived at 10 am, the line to get in the store was at least 100 yards long, maybe longer. It turned a corner and wrapped around a fountain. Visitors were being admitted in batches, as there was no way everyone present would fit in the store. I didn’t have the time to wait in line, so I bid my t-shirt goodbye and left. Kicked myself for not taking my camera for some pictures of the line.

Had to go to the mall this afternoon to take my daughter to a hair appointment. Once she was delivered, I cruised on down to the Apple Store. Very Cool. Been in one once or twice before. Very tempting to grab an iPod while I was there! I’m currently torn between requesting one for Christmas and waiting until MacWorld Expo in January to see what the latest and greatest iPod will be. Of course, my birthday is in early February :)

Didn’t leave empty handed… I picked up Jam Pack 3 for Garage Band. Didn’t even know this was out (or Jam Pack 2) until I poked around the Apple site today in anticipation of seeing the store. Jam Pack 2 is geared towards Dance/Urban/Hip Hop, with lots of “Remix tools”, bass lines, synths, and drum machines, including several classic Roland drum machines. Not my kind of music, especially when composing. I haven’t loaded up Jam Pack 3 yet, but it’s subtitled “Rythym Section”. I’ll post some more on that once I play with it.

Among the sights at the Apple Store… an employee dressed in fult Scottish Kilt and sporting a (presumably real) tatoo of the Finder icon in the right shades of blue. Kicked myself for not taking my camera twice.

Podcasting

I’m too tired tonight for a proper post, so I thought I’d just toss out some comments on what’s been catching my notice lately. In a word, Podcasting. To quote Les Orchard, “I’ve found myself falling for the Podcasting hype.”

If you haven’t heard of Podcasting, think newsfeed agregators meets audio blogging. Go read Les’s post, it’s an excellent look at why this is cool, and what’s new about it. Then go check out iPodder.org, the current epicenter of the podcasting universe. The site is run by Adam Curry, former MTV veejay, internet entrepenuer, and a driving force behind the podcasting craze.

If you want to give a listen, there’s already tons of content springing up, but try starting with Adam’s Daily Source Code. It’s big… the show runs 45 min. to an hour each day, and the bitrate is high, but it’s a good example of what’s possible. The production values are excellent, and he does it all from his Mac, eschewing professional audio equipment. The content tends to be very focused on podcasting itself (as with any new web tech, the initial level of navel-gazing is very high in podcasting so far)- but it’s a good way to get a feel for what’s going on.

Feed Autodiscovery Redux

I [recently added][1] the needed markup to enable Feed Autodiscovery on my site. This is the mechanism that powers Firefox’s [Live Bookmarks][2] feature, and allows sofware such as an aggregator to automatically find your feed. At the time, I made the following observation:

For now, every page contains an autodiscovery link for the main RSS feed. However, Blosxom provides RSS feeds for all categories as well (RSS is just another flavour to Blosxom). I could have category indexes provide autodiscovery links to category RSS feeds, but I doubt this is what most users would want.

I’ve never made any attempt to directly publish per-category feeds, although a user in the know could get them due to the nature of Blosxom. RSS is just another flavour as far as Blosxom is concerned. To get a feed for the category X/Y/Z, just pull example.com/weblog/X/Y/X/index.rss and you’re done. By default, your category feed’s title, link, and category will be the same as your main feed. There are many ways to address this with Blosxom; but I was always more concerned with how to offer them. I didn’t really want an orange XML icon next to each category, and a feeds page seems excessive. Autodiscovery makes it easy to only offer the feed that applies to the category being viewed, but it doesn’t make sense to replace your standard feed.

A few days later, I was reading Ben Goodger’s [Inside Firefox][3]. I read [a post about Live Bookmarks][6] in which Ben wrote (emphasis added):

…hope more sites will start using the <link> tag - sites that do, please give your feeds meaningful title attributes! I hate seeing “Subscribe to ‘RSS’” in the popup menu!

This got me thinking, and a couple of days later, I went back and re-read Mark Pilgrim’s [Important change to the link tag][4] article from a couple of years ago, which solidified the autodiscovery mechanism. In it was this bit:

Tips for site authors:

  1. The title does not have to be “RSS”, but keep in mind that some browsers (iCab, Mozilla, Lynx) will expose the title to the end user, so it should be descriptive.
  2. If you have multiple RSS feeds, define one LINK tag for each of them. (I’m doing this now for my category-specific feeds; view-source on diveintomark.org for an example.) Presumably next-generation news aggregators (and the way things have been going, we’re talking maybe by Friday here) will display a list of all available feeds and let the user choose one or more. Give each LINK tag a different title, so users know what they’re selecting.

Mark doesn’t seem to be doing this anymore, but I’ve since seen sites using multiple links to offer multiple formats. I’m using it now to offer category-specific feeds from the category indexes (and from permalinks), alongside the regular feeds. If you’re using Firefox, click a category link on the right and then click the XML statusbar icon to see it in action. The relevant part of the <head> looks like this if you view source:

<link rel="alternate" type="application/rss+xml" 
      title="jclark.org - All Posts (RSS)" 
      href="http://jclark.org/weblog/index.rss" />

<link rel="alternate" type="application/rss+xml" 
      title="jclark.org - All Posts in WebDev/Blogging (RSS) "
      href="http://jclark.org/weblog/WebDev/Blogging/index.rss" />

I accomplished this in my head.html flavour file using my [updated storystate plugin][5] along with interpolate_fancy. The relevant bit:

<link rel="alternate" type="application/rss+xml" 
      title="jclark.org - All Posts (RSS)" 
      href="http://jclark.org/weblog/index.rss" />

<?$storystate::category>
    <link rel="alternate" type="application/rss+xml" 
          title="jclark.org - All Posts in WebDev/Blogging (RSS) " 
          href="http://jclark.org/weblog/WebDev/Blogging/index.rss" />
</?>

<?$storystate::permalink>
    <link rel="alternate" type="application/rss+xml" 
          title="jclark.org - All Posts in WebDev/Blogging (RSS) " 
          href="http://jclark.org/weblog/WebDev/Blogging/index.rss" />
</?>

The only thing left was to fix my head.rss to accomodate category feeds intellegently:

<?$storystate::blogroot>
    <title>jclark.org</title>
    <link>http://jclark.org/weblog</link>
    <description>the weblog at jclark.org - All Posts

Storystate 0+2i

Version 0+2i of my Storystate plugin is available here. For full details on the uses for this plugin, see the original writeup. This version adds a single new variable, $storystate::rqst_category. This is similar in use to the standard $path variable, except that it’s built from the request URL and not the path of a given post, so it’s available in the header flavour file. This allows you to display the current category in directory style (i.e., WebDev/Blosxom/Plugins) in the header. Since it’s really only useful on category index pages, you can mix it with Rael’s interpolate_fancy plugin to do something like:

<?$storystate::category>
    <h2>Viewing Post Category: WebDev/Blosxom/plugins/storystate</h2>
</?>

For display purposes, the breadcrumbs plugin is probably a better choice. I added this primarily for use with per-category RSS feed autodiscovery (link to come).

Bugs

If you see any bugs around the site (especially for the next day or two), shoot me an email (link is on the right). I’m in the process of implementing per-category RSS feeds, as well as Autodiscovery for the new feeds. Of course, Blosxom provides per-category feeds naturally if you request the correct URL, but unless your RSS template is aware of the possibility, your category feeds will be titled just like your site feed.

Autodiscovery is sorta working; if you’re in Firefox, go to a category index page (click a category on the right, or the story category at the bottom of this post), and then click the RSS icon on the toolbar. You should see two options… one for the main site feed, and one for the category feed. If I ever add comment feeds, they could be handled the same way.

At any rate, it’s been a little harder than I expected, since I haven’t hacked on Blosxom in a while. I’ve forgotten some of the finer points. I’ve also had to update my storystate plugin to get this working. Anyway, it’s still in flux, so appologies if something is broken. Not sure I’ll get finished tonight. Once the kinks are ironed out, I’ll post a rundown on all the newness, along with some instructions for those who want to do the same. I’ll also post the updated storystate if I keep the changes.

Name that color

Sam Ruby has posted a version of one of my favorite brain twisters. If you have a large whiteboard in your office and a set of colored dry-erase markers, this can be great fun to perpetrate on your co-workers (I do, and I have). It’s amazing how strong the left brain compulsion is. I can successfully read the whole chart, but it takes an amazing amount of concentration… or unfocusing my eyes.

Two Hundred

Yesterday marked the official end of Dugh’s October Blogging Chalenge. I posted at least once per day from last Sunday through yesterday. I’ll let Dugh judge the other participants, but I hereby claim the offered “bragging rights”, since I actually did it. Dugh seems to be a day late with his Saturday entry, but he offered a lame excuse about his ISP being down so we’ll be nice ;) Kidding aside, this challenge was exactly the kick I needed to get more blogging done, so we’ve upped the ante to a month (30 days) of solid blogging, starting last Sunday as well. Thanks for the inspiration, Dugh. Keep an eye on the Calendar boxlet on the top right to see how I’m doing.

As exciting as post number 7 of the original Challenge was yesteray, this post is even better. This is the 200th post to my weblog. I made my 100th post on New Year’s Day, when I resolved to add 200 posts this year. October 10, and halfway there. Oops. Let’s not talk about the other resolutions.

Uptime

The Software Update icon has been waiting patiently on my Dock for a while now. This morning I decided to oblige. There are three updates waiting to be installed:

Software Update Screenshot

Wow, that Sept 16 Security Update has been waiting a while, huh? I have Security Update enabled to run automatically once a week, so why am I so late? Triangles. Those little triangle icons next to each update indicate that a restart will be required. So?

Uptime Screenschot

Almost 23 days of uptime since my last reboot, which was, of course, for a OS X software update. Again, you may wonder, why the big deal? For me it’s about the interuption. For example, when I decided to go ahead and install these this morning, I had about 2 dozen websites open in tabs spread across two Firefox windows, several pages open in Mozilla (I’m using it to learn XUL, the book is pre-Firefox), a half dozen terminal sessions, about 10 sticky notes, a dozen documents in SubEthaEdit, and a few other assorted bits. I tend to keep things open and available. Rebooting means closing everything. What a pain. Zero reboots is my #1 most wanted feature in an OS X.

Here’s the kind of uptime I really want.