The Threshold

Galen's Personal Wiki

User Tools

Site Tools



Spengler – Crossing the Streams

Spengler is a software project that is being designed to be a multiplexing, platform-agnostic, backend-agnostic, threaded, de-duplicating, social network reader.

What does that mean?

  • Multiplexing - Spengler will be designed to communicate with an arbitrary number of data sources (i.e. Social Networking sites, email sources, short messaging services, etc.) at the same time. THe number of sources will be limited only by available RAM and CPU. Communication will be bidirectional, allowing both consumption and generation of content.
  • platform-agnostic - The targetted result will be a set of cross-platform libraries and will isolate any platform specific code within thin clients. There will be a web-browser client and a command line client, in addition to whatever platform-base GUIs are created.
  • backend-agnostic - The ability to speak with a new data source will be simple to add, with only a minimal plugin required. The system will ship with the ability to use a filesystem, a SQL database, or an NoSQL database as its backing store for local data, and not use any engine-specifics to do so. Remote backing stores will be accessed via a thin plugin, and will be as inclusive as possible for data sources. The package will include the pluugins to contact remote data sources via a number of protocols. These will include email via IMAP and POP3 (via SSL or not) and mbox files, the ability to communicate with Facebook, G+, LinkedIn networks, access RSS and ATOM feeds, and communicate with WordPress, LiveJournal, Tumblr, Twitter, and Typepad.
  • Threaded - conversations will not only be threaded in a traditional manner, but will be threaded across sites – Spengler will attempt to recognize when a conversation on Facebook spans a Tweet, which spawns a Tumblr post, and present all of them as a single thread.
  • De-duplicating - Conversations that are cross-posted will collated into a single message. Links or references will be remembered and the user will be prompted when they see the same reference a second time

How are you going to do all of this?

That's a great question. And to be honest, I may be aiming too high. Which is why Spengler is not a stand-alone project, but based upon a set of related, smaller projects. The first of these is Clortho – Recognizing Gozer No Matter His Form.

projects/software/spengler.txt · Last modified: 2014-10-06 20:20 (external edit)