Feeder Templates Tips

June 9th, 2006 by Steve Harris

Templates in Feeder serve two purposes. Firstly, they control which fields you see when editing items and secondly, they can contain default values for fields.

The idea is borrowed from page layout applications and the like, which help you to know what content is needed for a particular purpose and where to place it.

While there is only so much you can do to control the appearance of your feed in the various online and desktop feed readers, RSS feeds have so many different uses they almost resemble a blank piece of paper. Templates help you to know exactly what is needed.

Feeder comes with a number of templates suited to various tasks such as a news feed, a podcast and so on. These standard templates can be easily customized and you can create your own.

Using Templates

Edit Template SheetYou normally choose a template when creating your feed, but you can change the template for a particular feed at any time by choosing Item > Template from the menu or by clicking the Template button in the editor windows.

Once there, you can choose an existing template from the pop-up menu, or click the Customize button.

Custom Templates

When editing a custom tempate, you can check fields to show them in the editor or enter default values in the fields themselves. The default values will be used even if the field isn’t displayed.

Note also the Show pop-up. This allows you to see fields from RSS extensions – at present only the iTunes extension, and mix and match these in your feed.

Global Templates

If you have a custom template you wish to use for other feeds, you can click the Save As… button, give the template a name and it will then appear in the pop-up menu of templates.

You can edit these global templates in Feeder’s Template preferences.

60,273 Lines And Counting

May 29th, 2006 by Steve Harris

Apparently, Feeder 1.3.3 has 1,843 more lines of code than RapidWeaver – 60,273 in total. That doesn’t include any third-party frameworks or my own Reinvented.framework, which is generic between my applications (mostly handles software registration and some other stuff, maybe not all used). That framework contains 3,043 lines of code.

Who’d have thunk? OK, maybe nobody but me!

In reality, that sort of difference is negligible. Actually, in reality it’s a completely meaningless figure and subject to many variables, but it is good, clean, pointless fun to find out about this stuff.

For example, such a count could depend on how you do your brackets. I do them on one line unless it’s a method definition, a condition that spans two lines or I simply don’t feel like it:

    if ([name length]) {
        return name;
    }
    else {
        return [[[self localFilename] lastPathComponent] 
                   stringByDeletingPathExtension];
    }

But many people do them like this:

    if ([name length]) 
    {
        return name;
    }
    else 
    {
        return [[[self localFilename] lastPathComponent] 
                   stringByDeletingPathExtension];
    }

So that could add a few thousand lines to my count. 😉

Perhaps more telling is this: Feeder 1.0 was 24,679 lines. How it’s grown!

Appcasting, Sparkle and Feeder

May 26th, 2006 by Steve Harris

A neat use of RSS that I completely forgot to mention in my CocoaRadio interview is appcasting (and I am absolutely kicking myself).

Appcasting is a term coined by Fraser Speirs to describe the delivery of software via RSS. It works the same as podcasting: the RSS enclosure tag is used to point to the downloadable file but instead of an audio file, this is an application.

I’ve been running an appcasting feed for Reinvented Software since releasing Feeder in February 2005. However, the coolest implementation of appcasting in the whole world is Sparkle.

Sparkle is a Cocoa framework by Andy Matuschak that can make applications self-updating, uses appcasting to discover new updates, displays release notes and plenty more. It is made available under a MIT license. Even better, Feeder is recommended in the documentation. 😀

I have been planning to switch my apps over to Sparkle for some time now and it’s next on my list, honest.

Creating an Appcasting Feed with Feeder

To create an appcasting feed you will need to tweak Feeder’s default template a little. Here’s how to create a new feed, whether or not you are using Sparkle:

  • Choose File > New Feed from the menu.
    • Enter the name of the feed (e.g. “Feeder Updates”).
    • Put the URL of your software’s product page in the Link field.
    • Put something appropriate in the Description.
  • Click Continue.
    • With the Default template selected, click the Customize button.
    • Check the checkbox next to the Enclosure fields.
    • Click Save.
  • Click Continue.
    • Check the filename and location of the feed is right for you and click Finish. A new item window will open.

Tip: if you keep a copy of your site on disk, and would prefer to save the feed in the structure of that site rather than in Feeder’s library, use Choose Another Location and select the folder where you want the feed kept. You should also enter a web-friendly filename in this case.

Editing a New Version

Each item in the feed refers to a new version of your software. You can create new items in your feed by clicking New Item in the toolbar.

  • Enter the name of update in the Title field (e.g. “Feeder 1.3.4 Released”).
  • Enter a link to your software’s product page or wherever in the Link field – you need to enter some sort of link or the feed won’t work in Firefox’s Live Bookmarks or OmniWeb.
  • Click the disclosure arrow next to Enclosure field to show the enclosure fields.
    • Enclosure editor in FeederDrag and drop your downloadable file (Sparkle supports zip, tar, tbz, tgz, or dmg) onto the enclosure area to have Feeder upload it when you publish your feed.
    • Alternatively you can enter the URL, click the action menu to the right of the URL field and choose Fetch Attributes from Web (or Fetch Attributes from File if it’s not yet online) to get the type and the length.
  • Enter the release notes in HTML in the Description field.
  • Close the item window to save the item.

You can then either click Publish in the toolbar to upload your feed or if you don’t want to publish your feed with Feeder, the XML file is always up to date on disk – you can just drag the feed from Feeder to your FTP client, command line or wherever to upload.

And if you’re a developer and using Feeder, or thinking of using it, I’d love to hear from you. Leave a comment or email steve at this domain. Thanks!

CocoaRadio Interview

May 24th, 2006 by Steve Harris

Cocoa RadioBlake Burris interviewed me for CocoaRadio and this is now available on the CocoaRadio site. CocoaRadio is a podcast that features interviews with Mac OS X developers from around the world.

During the interview I talk about how I got into Mac development, what I did before Reinvented Software, tell a little of the story behind my apps and all sorts of other things besides.

So, if you want to all hear that plus me laughing nervously, check it out at cocoaradio.com. If you need me, I’ll be hiding behind the sofa.

Join the Podcast Revolution

May 10th, 2006 by Steve Harris
Join the Podcast Revolution

I write podcasting software, listen to podcasts, go to podcasting meetups and all that, but for a while it has seemed like something was missing. I didn’t have the t-shirt!

Well now my life is complete, because I’ve got a “Join the Podcast Revolution” t-shirt from podcastersunite.com. Podcasters Unite is run by John Ong from Ongline Podcast and its mission is to spread the podcasting word.

To help that along, when you check out you can choose to donate $1 to your favourite podcast. In the future John is also hoping to offer t-shirts customised for each podcast.

Check it all out at the Podcasters Unite website.