Feedforward at IMS

Yesterday I was at the IMS summit in Birmingham, and we had a 15 minute slot to show off how SWORD works using FeedForward and Intralibrary. I’m glad to report it all went very smoothly. I demoed creating a new conduit using the SWORD wizard, and then dragging over a context with some posts in it, entering a comment and tags, and then off it went. Sarah Currier of Intrallect then showed how the posts had been published in Intralibrary as an IMS Content Package.

The nice thing about this demo is that concepts like “SWORD” and “IMS Content Packaging” are completely invisible to the user.

(Image by Mudeth, CC-BY)

Publishers create bad RSS feeds for journals

Well, that’s my experience anyway. So far out of the three publishers I tried:

InderScience was readable after creating my own PRISM module for the Rome parser to be able to get at some of the information. However this does mean I can now create complete referencing for these items for export into things like EndNote.

ScienceDirect was correct in its syntax but only included the names of the paper authors in the <description> rather than as <author>, so making it impossible to recreate any sort of citation.

The final one, IEEE Explore, did have author information, but used lots of invalid tags. Didn’t they even try to use feedvalidator.org? Look at the results!

Not impressive, is it? I guess this is the sort of nonsense Santy and co are having to cope with over at TicTocs. (API please?)


Team FeedForward finalists in the OR2008 Repository Challenge!

Kris and I were in Southampton this week taking part in the Repository Challenge at Open Repositories 2008. This was a developer competition of the “bar camp” variety, where we had to rapidly come up with a cool prototype showing the “future of repositories”.

Well, as we already have lots of stuff we can use in FeedForward, we wrote a prototype called “FileBlast”, which links together the services we use in FeedForward to make a single “share and promote your paper” droplet-style app.


We used a single droplet window as the target for dropping Word documents onto; we then extracted the title and abstract before uploading the document to Scribd. Once on Scribd, we then post an announcement on the user’s Twitter blog linking to the new doc, and a more detailed post on their WordPress blog with the paper abstract. We then bookmark it on Del.icio.us before finally archiving the paper in ePrints using SWORD.

Sadly the last part we couldn’t demo as, ironically, the Southampton wireless network blocked the port we needed to use to deposit items into the ePrints test server… at Southampton. Oh well! We nevertheless secured a place in the final five out of I think 19 entrants in the competition. I’d had no idea that our initial pitch to the judges would be filmed and broadcast at the conference dinner, which was a bit of a surprise. Kris had to bail out and head home earlier, and unlike me avoided the slightly embarassing prospect of having to sit looking at himself on the big screen.

Still, we were well happy with the result of our day (and night) of coding and so we’re thinking of turning it into a proper app for download off our site. But we have quite a few parts for M2 of FeedForward to finish up first!

The whole event was great fun, and a big thanks to Dave Flanders and the CRIG team for making it happen.

FeedForward at the IntraLibrary conference

Sarah Currier of Intrallect very bravely made a demo of FeedForward’s rather weakly tested Windows XP build to demonstrate interoperability using SWORD. You can find the details over on Neil’s blog.

Choice quote:

FeedForward and the SWORD desktop client were demoed at the recent MDR SIG meeting (see report here), and their benefits were/are obvious.

I’m glad it went well, although I wasn’t there in person, just crossing my fingers and helping Sarah deal with last minute issues. Turns out there were a few bugs and gotchas with Windows XP… and some different bugs and gotchas with Windows Vista. So much for cross-platform coding!


(image by Zana Stardust, CC-BY)

Suzi wants…

Suzi Wells writes:

I find that with RSS readers that tell me how many stories I have not read, it’s like a game where I want to keep the count to zero. So I was thinking this morning that what I would like is an RSS reader that doesn’t tell me how many stories I haven’t read, but will pick me out a coffee-break’s worth at random (probably about 3) from my unread stories. Something more like a Last.fm radio station.(Link)

Aha! A scenario we can do something about. We took a decision early on to make a “river” style aggregator rather than a “mail” style aggregator. So all the stories are mixed into one big feed with no unread counter. And the number that make it into the river are configured by sliding the “volume” control.

So maybe Suzi can use FeedForward one day…

Surprise! M1.1 interim release

surprised cat

I’ve just made an interim unscheduled “M1.1″ release. There were a number of reasons:

  • We had no build for Linux, and a few people asked for them
  • We had no build for Windows Vista, and for some reason XP builds have some things that don’t work in Vista, like err.. drag and drop. Thanks, Microsoft.
  • There was a quite bad memory leak in M1 that I’ve only just fixed.
  • People have gotten interested in the SWORD functionality and want to try it, and we recently added some handy SWORD config wizard pages

So we have made this “unscheduled” release available to meet these demands. You can find it over at our downloads page.

The next scheduled release will be M2 in April, which will have lots of cool stuff in it that Kris is working on.

(image from ♥ellie♥ on Flickr, CC-BY)

Demo at the Metadata and Digital Repositories SIG

Yesterday I went to the MDR SIG meeting at Birkbeck College, London, and gave a demo of FeedForward. In particular I was showing off how to make a quick reading list from resources that had been aggregated from journal RSS feeds, blog feeds, and so on, and then share this as both Del.icio.us bookmarks, a blog post on WordPress, and also as a learning object on IntraLibrary. In each case the FeedForward services component works behind the scenes to generate the relevant API requests, in the last instance by dynamically constructing an IMS Content Package with Learning Object Metadata that gets deposited using SWORD. Despite the best efforts of the bizarre Birkbeck Wi-Fi security the demo worked fine!

One interesting coincidence is a post by Stephen Downes today called Finely Tuned Antennae; this is the slide I lead with, and comes from a discussion with Paul Walk on the topic of information usage flows, one that is very closely aligned with FeedForward’s design, which (to complete the circle) was also inspired by RSSWritr, a prototype developed by Stephen Downes.

View the slides.

EDIT: Catherine Howell was there too, yesterday, and you can read her blog post about it here.


I think I mentioned in a previous post that one of the inspirations for the FF interaction model was Userland Radio. So it shouldn’t be that surprising that a new product from Dave Winer has a lot in common with FF. FlickrFan is an online photo tool that pulls in photofeeds from Flickr, backs them up on your own computer, and offers a simple drag-and-drop approach to publishing and sharing new photos.

If we (or anyone else) added a Flickr conduit you’d have a reasonable match for the features of FlickrFan in FeedForward. (The reason I haven’t coded one so far is that coding for Flickr authentication is a bit of a chore). However, just like Radio, FlickrFan runs as a local webserver you access on the local loop, rather than a standalone regular desktop application. That has some different pros and some cons.

Anyway, its an interesting product idea and has generated some press. And some relief that what we’ve been doing in FF isn’t totally mad. The link between FlickrFan and a Mac Mini HDTV controller also raises the interesting concept of the FF core logic as part of a particular internet device rather than purely a rich Internet application (RIA) for your laptop or desktop. Hmm.

FeedForward M1 Quickstart

M1 isn’t really a proper user release, but more for people interested in the development work. And it hasn’t got any help text or instructions!

Here’s a very brief quickstart for anyone downloading and playing with the application.

Getting started

  1. Unzip the download package
  2. Drag the FeedForward folder to where you usually run applications
  3. Double-click the application icon

Setting up inputs

  1. Click the “Inputs” button on the toolbar
  2. Click the “+” button in the left-hand panel and enter a name for your input group
  3. Select the new group you created
  4. Drag some RSS & Atom feed links onto the right-hand panel. You can also drag the site URLs and the program will have a go at finding RSS & Atom links in the page
  5. Close the Inputs window. FeedForward will now gradually poll the sources you’ve provided and build up the input.

Setting up services

    1. The “Services” panel is the rightmost panel. Click the “+” button at the bottom of the panel
    2. Step through the wizard that appears
    3. When you click “Finish” in the wizard, the new service setup will be visible in the panel. You can now drag items onto this service to publish them. It does this asynchronously – the little status icon in the bottom right of the application has a green exclamation mark when its completed – click on this to see the service status:



Setting up contexts

  1. The “Contexts” panel is the shaded center panel. Click the “+” button at the bottom of the panel
  2. Click the new “Untitled” context label and type a new name for it
  3. Drag items from the Radar (the panel on the left) onto your new context
  4. Double-click the context to open its contents in a new window.

Creating a SWORD service

This isn’t really completed in the UI, but can be setup manually. To create a SWORD service, you start by creating a service of any other kind (e.g. Simpy). Then double-click the new service to get the edit dialog. In there, you need to select SWORD as the service type. Enter the collection deposit URL (NOT the service deposit URL) into the URL field, and set your username and password. The icon will change to a SWORD icon when you click OK.


You can now drag things onto the SWORD service to start depositing them. Note that at the current stage of implementation there is no file-type matching, so you need to know what each service will accept. As an experiment, we allow you to drop a Context onto a SWORD service, and this will create an IMS Content Package and deposit it; though this will only work with IntraLibrary at present.