I’ve got a few ideas for RSS-based projects, and I think I just came up with a halfway decent framework for implementing them: treat it as an ETL pipeline. That is, have an Extract operation at one end of the pipeline that grabs data from somewhere, a bunch of Transform operations that beat the data into shape, and a Publish operation at the other end that spits out an RSS feed.

  • Plugin mechanism is going to be as dumb and language-agnostic as humanly possible, in order to make it very easy to knock together new plugins
  • Because we know we’re dealing with RSS feeds we can embed intelligence in the pipeline (eg make sure each item is only processed once)
  • I don’t think I even need to bundle an HTTP server. Just spit out text files at the far end, and let some other program deal with serving them.
  • Better to run as a service, or run on a cron?

Tonight I am mostly doing Sprint 0 stuff towards that. We’ll see how far I get. The more I think about it, the less the tool needs to do. That bodes well.

Tonight’s background music: https://www.youtube.com/watch?v=TA9LVzuC7z4

Taking inspiration from navidrome