Appcasting - Software-Update via RSS

Appcasting ist ein Begriff, der nur den wenigsten Lesern meines Blog etwas sagen wird. Wer bereits in die Software-Entwicklung unter MacOS X eingestiegen ist, hat eine höhere Chance dem Begriff schonmal begegnet zu sein. In der Windows-Welt ist der Begriff weitestgehend unbekannt. Eine Google-Suche zu diesem Thema bestätigt das. Ich möchte nun diesen Begriff, für die Software-Entwickler unter euch, etwas näher beleuchten.

Appcasting

Der Begriff setzt sich, wie sollte es auch anders sein, aus Application und Podcasting zusammen.
Die Idee ist einfach: man nehme sich einen einfachen RSS-Feed und hänge ihm Daten, sogenannte Enclosures, an - ähnlich wie bei einem Podcast. Nun versende ich nur keine Video- oder Ton-Botschaften über das Internet, sondern Updates für Software. Dieses Prinzip wurde wohl zum ersten Mal von Fraser Speirs verwendet.
Der Software-Entwickler hat also nur zwei Aufgaben: Erstens muss er einen RSS-Feed ausliefern, der den Anforderungen von RSS genügt und die Dateien für das Update anhängen. Zweitens muss er seine Software mit einer Feed-Reader-Feature ausstatten, das erlaubt die angehängten Dateien automatisch herunterzuladen.
Diese Aufgaben sind für den Software-Entwickler einfach zu erledigen: RSS ist ein offener Standard und prinzipiell eine einfache XML-Datei und Feed-Reader-Systeme sind auch relativ einfach umgesetzt. Das Problem, das sich nur stellt, ist das einfache Prinzip auch in den Update-Prozess einzugliedern. Ein einfacher Feed-Reader alleine macht das Update-System natürlich noch nicht vollständig, schließlich soll das Update von alleine und möglichst ohne Benutzerinteraktion ablaufen.
Und hier bekommt der Entwickler Hilfe durch bereits vorhandene, offene Frameworks. Sparkle ist ein solches Framework. Der Nachteil ist jedoch, dass es nur für MacOS X (d.h. Cocoa) verfügbar ist. Denn, wie eingangs bereits gesagt, ist Appcasting eine Technologie, die vornehmlich unter MacOS X zur Anwendung kommt und in die Windows-Welt noch keinen Einzug erhalten hat.

Doch warum gerade RSS?

Das ist natürlich eine berechtigte Frage, schließlich kann der Entwickler auch jede beliebige XML-Datei mit den Daten ausliefern, doch hat RSS den Vorteil, dass der User in der Lage ist, den Feed in einem ganz normalen Feed-Reader zu abonnieren. Viele Feed-Reader sind sogar in der Lage die über Enclosures angehängten Dateien herunterzuladen. Das heißt, dass der User das Update sowohl automatisch, aber auch manuell über seinen Feed erhalten kann und auch so informiert bleibt.
Das macht Appcasting zu einem einfachen, aber dennoch sehr effizientem System.

Aber warum überhaupt Auto-Updates via Internet?

Ich hoffe, dass diese Frage sich nur wenige gestellt haben. Denn inzwischen halte ich, (es folgt meine persönliche Meinung), integrierte Update-System für vollkommen unerlässlich. Es nervt mich nichts mehr, als viel zu spät oder, schlimmer, gar nicht von einem Update zu erfahren. Und von dort den Bogen zu einem System zu schlagen, dass es dem User möglichst einfach macht, das Update zu beziehen, ist es dann auch nicht mehr weit.

Fazit

Appcasting ist eine sehr effiziente und benutzerfreundliche Möglichkeit, den User mit Updates zu versorgen. Mich erstaunt es, dass dieses Prinzip bisher fast nur in der Mac-Welt Anklang gefunden hat. Vielleicht wird sich das in naher Zukunft ändern. Ich habe dabei insbesondere ein eigenes Projekt im Auge: CXUpdate, ein Internet-Updater, der bisher auf einem eigenen XML-Format basiert. Diesen auf eine Zusammenarbeit mit Sparkle oder anderen Appcasting-Projekten zu bringen, ist ein Ziel, das für die erste oder zweite, finale, Version angedacht ist.


Artikel ist Copyright © by Christopher Harms, 2005-2007 und steht unter der CC-By-NC-ND 2.0.