Warum der SNEScast nicht auf Spotify zu finden ist

Für den SNEScast, unseren Podcast rund um das Super Nintendo Entertainment System, haben wir am Anfang überlegt, wo genau wir ihn anbieten wollen. Hauptsächlich ging es darum, ob wir ihn auch auf Spotify anbieten wollen. Nach einigen Überlegungen und etwas Recherche sind wir dann zu einem Schluss gekommen das wir dies nicht wollen. Doch was sind dafür die Gründe?

Der SNEScast Podcast ist nicht auf Spotify zu finden

Dafür vielleicht ein Blick darauf was einen Podcast in seinem Wesen ausmacht. Der Ersteller eines Podcasts stellt Audiodateien für die einzelnen Episoden und dazu einen RSS-Feed zusammen. Dieser Feed kann über einen Podcatcher abonniert werden. Er enthält alle notwendigen Informationen über den Podcast und die Links zu den Audiodateien. Damit hat der Ersteller des Podcasts die Kontrolle darüber welche Inhalte ausgeliefert werden. Podcast-Verzeichnisse wie iTunes bzw. mittlerweile Apple Podcasts respektieren diesen Gedanken. Die Inhalte werden auch dort durch die Server des Erstellers ausgeliefert; das Verzeichnis nutzt den Feed nur zur Anzeige des Podcasts im Verzeichnis. Damit erhält der Ersteller des Podcasts, anhand seiner Zugriffsstatistiken ein Bild darüber wie sein Podcast oder gar einzelne Episoden ankommen.

Wie funktioniert ein Podcast?

Spotify hingegen ist eine mehr oder weniger geschlossene Plattform, welche versucht Podcasts für sich zu vereinnahmen. Für diese Plattform darf der Ersteller des Podcasts seine Inhalte liefern und sich dafür den Beschränkungen der Plattform unterwerfen. Am Anfang konnten nur ausgewählte Individuen einen Podcast auf Spotify bringen, mittlerweile gibt es ein entsprechendes Portal um dies zu tun. Wenn der Podcasts nicht bei einem sogenannten zertifizierten Hostingpartner gehostet wird, erhält über den RSS-Feed und die Zugriffe auf die einzelnen Episoden keine Informationen darüber wie oft sie gehört wurden. Der Hintergrund ist das Spotify die Dateien selbst vorhält um eine entsprechende Servicequalität für sich in Anspruch nehmen zu können.

Daneben hat Spotify noch einige andere Probleme, es ist schlicht und ergreifend kein Podcast-Client. Die gesamte App ist darauf optimiert Musik zu streamen. Kaptitelmarken in Podcasts? Fehlanzeige. Das Offline-Hören von Podcasts bei Spotify ist zwar möglich, aber etwas umständlich und nur für Premium-Nutzer verfügbar. Und dann sind da noch die Nutzungsbedingungen für die Spotify for Podcaster-Plattform, die eine Lizenz vorgeben, die nicht jeder Podcast bereit ist einzugehen.

Aus der dezentralen Podcast-Welt wird mit Spotify eine Plattform zentraler Podcasts und das ist etwas, was wir mit dem SNEScast nicht unterstützen wollen. Natürlich kann es dadurch sein, dass der eine oder andere Hörer auf der Strecke bleibt, aber so hat er die Freiheit den SNEScast mit einem Podcatcher seiner Wahl zu hören und die Podcast-Welt bleibt etwas dezentraler. Es sollte nicht passieren das Spotify und Podcasts synonym werden, den das sind sie nicht. Natürlich, wenn ich Spotify habe, warum sollte ich mir zusätzlich noch einen Podcatcher installieren?

Und so begeben wir uns in einen Vendor-Lockin den wir für Podcasts nicht sehen wollen. Wenn Spotify beschließt, dass der eigene Podcast nicht mehr genehm ist und ihn von der Plattform entfernt, verliert der Podcasts so im schlimmsten Fall einen Großteil seiner Hörer. Auch dies ist ein Problem von zentralen Plattformen im Gegensatz zu einem dezentralen offenen System. Ansonsten ist der Podcast der Plattform völlig ausgeliefert. Daneben gehört Spotify mit dem Anchor bereits ein Dienst, der Podcasts-Hosting anbietet und bei denen knapp die Hälfte aller Podcastsfeeds hostet.

So bleibt nur der Appell: installiert euch einen Podcatcher und abonniert eure Lieblingspodcasts direkt beim Ersteller. Sie werden es euch danken.

RSS-Feed von Webseiten erzeugen

Dank RSS ist es möglich die Inhalte vieler Webseite in einem RSS-Reader zu sammeln. So können Nachrichten bequem an zentraler Stelle gelesen werden. Allerdings bieten längst nicht alle Webseiten einen solchen RSS-Feed an. Damit diese nicht immer wieder von Hand besucht werden müssen, bietet sich FetchRSS an. Mithilfe dieses Dienstes können RSS-Feeds aus Webseiten erstellt werden.

Mit FetchRSS können RSS-Feeds für Webseiten erzeugt werden

Dazu wird die Webseite in einem Editor des Dienstes geöffnet. In diesem kann der Nutzer die Bestandteile des neuen RSS-Feeds auswählen. Anhand der Auswahl wird der neue Feed erzeugt. Bis zu fünf Feeds können auf diese Art und Weise in der freien Version erstellt werden. Die freie Version wird durch Werbung in den RSS-Feeds finanziert. Daneben existieren weitere Subskriptionsmodelle, mit denen mehr Feeds bezogen werden können. Zu finden ist der Dienst unter fetchrss.com.

Tiny Tiny RSS installieren und als Google Reader Alternative benutzen

Da der Google Reader ja bald eingestellt wird, sollte man sich langsam darüber Gedanken machen, wie es weitergeht. Natürlich kann man auf fremde Dienste wie Feedly wechseln. Allerdings behagt dieser Gedanke nicht jedem, da man wieder an einen bestimmten Anbieter gebunden ist. Eine Abhilfe schafft hier die Software „Tiny Tiny RSS“ welcher auf PHP und MySQL (wahlweise auch PostgreSQL aufsetzt). Die Software selbst steht dabei unter der GPLv2.

Probleme bei der Installation

Probleme bei der Installation

Nachdem man die Software heruntergeladen hat und auf seinen Webspace kopiert hat, kann es auf einigen Systemen beim Test der Konfiguration zu Problemen mit der Einstellung „open_basedir“ kommen. Hat man hier keine Möglichkeit dies umzustellen oder möchte dies nicht, so muss man einige kleinere Anpassungen am Quelltext von „Tiny Tiny RSS“ vornehmen. Dazu wird in den Dateien „include/sanity_check.php“ und „install/index.php“ der Absatz:

if (ini_get("open_basedir")) {
  array_push($errors, "PHP configuration option open_basedir is not supported. Please disable this in PHP settings file (php.ini).");
}

auskommentiert. Danach sollte die Installation gelingen. Nach der Installation kann man sich mit den Standardnutzerdaten „admin“ und „password“ anmelden. Das Passwort sollte man anschließend sofort ändern. In den Einstellungen wird unter Benutzer ein neuer Nutzer angelegt, damit man nicht mit einem administrativen Account arbeiten muss.

Wenn man seine Daten mittels Google Takeout exportiert hat, kann man die „subscriptions.xml“ aus dem Export in „Tiny Tiny RSS“ importieren. Dazu geht man in den Einstellungen auf den Tab „Feed“ und dort auf „OPML“. Dann kann man die entsprechende Datei importieren.

Tiny Tiny RSS in Aktion

Tiny Tiny RSS in Aktion

Danach kann man seine Feeds in der Oberfläche bewundern. Die erste (manuelle) Aktualisierung kann dabei durchaus einige Zeit in Anspruch nehmen. Nun gilt es die automatische Aktualisierung der Feeds mittels eines Cronjobs in Angriff zu nehmen. Dazu wird ein Cronjob erstellt welcher alle 15 Minuten die URL:

http://example.org/ttrss/backend.php?op=globalUpdateFeeds&daemon=1

aufruft, wobei der Teil „http://example.org/tsrss/“ natürlich durch die eigene URL ersetzt werden muss. Die Webapplikation stellt auf Wunsch (in den Einstellungen konfigurierbar), eine API zur Verfügung, so das man auch Apps mit ihr betreiben kann. So gibt es für Android einen Client mit dem selben Namen.

Tiny Tiny RSS (TRIAL)
Tiny Tiny RSS (TRIAL)
Developer: Andrew Dolgov
Price: Free

Für iOS scheint es da noch keine adäquate Lösung zu geben wobei ich mir wünschen würde, das Mr.Reader das ganze in eine neue Version integrieren würde.

Die Mobilansicht von Tiny Tiny RSS

Die Mobilansicht von Tiny Tiny RSS

Die Mobilansicht auf entsprechenden Geräten ist leider etwas fummelig, wobei es sich nicht um die richtige Mobilansicht handelt, sondern um die normale Ansicht. Die mobile Ansicht kann über das System Plugin „mobile“ aktiviert werden. Allerdings wird sie nicht mehr gewartet und ist wohl auch nicht der Weisheit letzter Schluss.

Abhilfe schafft hier ttrss-mobile welches über die API mit dem Hauptsystem kommuniziert. Nachdem man die Software auf seinen Webspace hochgeladen hat, muss man noch die Pfade in der „conf.js“ anpassen. Anschließend kann man sich mit seinen Zugangsdaten einloggen.

In den Einstellungen gibt es auch einige interessante Nutzerplugins wie z.B. „mail“ mit welchem man Artikel per Mail versenden kann. Alles in allem ist „Tiny Tiny RSS“ ein robustes Stück Software, welches nach der Installation genau das macht was es soll. Die offizielle Seite der Software ist dabei unter http://tt-rss.org zu finden.

Weitere Informationen gibt es unter:
http://michaelsonntag.net/tiny-tiny-rss-tutorial-1-installation-konfiguration/
http://michaelsonntag.net/tiny-tiny-rss-tutorial-2-optische-anpassungen-und-plugins/
http://michaelsonntag.net/tiny-tiny-rss-tutorial-3-artikel-feiner-strukturieren/
http://michaelsonntag.net/tiny-tiny-rss-tutorial-4-noch-ein-paar-kleinigkeiten/
http://www.linux.com/learn/tutorials/322446-weekend-project-replacing-google-reader-with-tiny-tiny-rss

Google Reader und wie es weitergeht

Google Reader wird zum ersten Juli 2013 eingestellt. Nun stellt sich für viele Leute die Frage, wie geht es weiter? Meist wird Google Reader nicht nur zum Lesen und Verwalten der Feeds benutzt, sondern auch zur Synchronisation der Feeds respektive der Artikel (gelesen, ungelesen et cetera) zwischen den Clients verwendet. So kann man seine Artikel auf mehreren Geräten lesen und hat keine Probleme mit doppelten Artikeln.

Zwar gibt es eine Petition welche sich gegen die Schließung ausspricht, aber ob daraus etwas wird steht in den Sternen. Wenden wir uns stattdessen lieber Plan B zu. Im ersten Schritt kann man seine Feeds mittels Google Takeout auf der lokalen Festplatte sichern. Sicher ist bekanntlich sicher.

Als Alternative zu Google Reader legen wir uns einen Account bei feedly an. Dazu laden wir uns eine der Feedly Apps für das entsprechende und gewünschte System herunter. Eine Weboberfläche (ohne installierte Erweiterung) gibt es im Moment leider noch nicht. Allerdings soll später ein Google Reader API Klon nachgereicht werden, so das auch Clients welche auf diesem aufsetzten, später wieder ohne größere Änderungen funktionieren sollten.

feedly erfordert eine Bestätigung

feedly erfordert eine Bestätigung

In der App wird dann der Login betätigt und anschließend die Verknüpfung mit dem Google Konto hergestellt. So lange Google Reader noch aktiv ist, geht das ganze problemlos. Im Hintergrund wird bei feedly im Moment an einer eigenen RSS Engine gearbeitet, so das dass ganze ab Juli auch ohne Google Reader funktioniert.

Weitere Informationen gibt es unter:
http://blog.feedly.com/2013/03/14/google-reader/
http://www.golem.de/news/feed-reader-google-reader-wird-komplett-eingestellt-1303-98176.html
http://www.heise.de/newsticker/meldung/Google-macht-den-RSS-Dienst-Reader-dicht-1822669.html

Podcast Feed selbstgemacht

Manchmal möchte man zu ein paar Audiodateien einen RSS Feed haben, z.B. für einen privaten Podcast. Natürlich kann man sich einen solchen Feed von Hand zusammenbauen, einfacher ist es mit diesem kleinen PHP Skript:

<?php
  //Podcast Feed Script
  //Copyright (c) 2012 by seeseekey <>
  //
  //This program is free software: you can redistribute it and/or modify
  //it under the terms of the GNU General Public License as published by
  //the Free Software Foundation, either version 3 of the License, or
  //(at your option) any later version.
  //
  //This program is distributed in the hope that it will be useful,
  //but WITHOUT ANY WARRANTY; without even the implied warranty of
  //MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  //GNU General Public License for more details.
  //
  //You should have received a copy of the GNU General Public License
  //along with this program.  If not, see <http://www.gnu.org/licenses/>.

  //Basis URL ermitteln
  $baseURL="http://" . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
  $baseURL=dirname($baseURL) . "/";

  //XML Header setzen
  header('Content-type: text/xml');

  //RSS Datei zusammenbauen
  $output = '<rss version="2.0">'."\n";
  $output .= '  <channel>'."\n";
  $output .= '    <title>seeseekey.net (privater Podcast)</title>'."\n";
  $output .= '    <description>Ein privater Podcast von seeseekey.net</description>'."\n";
  $output .= '    <link>https://seeseekey.net</link>'."\n";
  $output .= '    <copyright>(c) 2012 by seeseekey</copyright>'."\n";

  //Audio Dateien in RSS Feed einpflegen
  $files = scandir('.');
  foreach ($files as $file)
  {
    $pathparts = pathinfo($file);
    if($pathparts['extension']!="mp3") continue;

    $output .= '    <item>'."\n";
    $output .= '      <title>'.$file.'</title>'."\n";
    $output .= '      <enclosure url="'.$baseURL.$file.'" length="'.filesize($file).'" type="audio/mpeg"/>'."\n";
    $output .= '    </item> '."\n";
  };

  //RSS Feed wieder schließen
  $output .= '  </channel>'."\n";
  $output .= '</rss>'."\n";

  //RSS Feed ausgeben
  echo($output);
?>

Dieses Skript ließt alle MP3 Dateien aus einem Ordner aus und baut daraus einen RSS Feed. Dieser kann dann in der Podcasting App der Wahl eingefügt werden, indem man die URL angibt so z.B. „http://example.org/podcast.php“. Das Skript selbst steht dabei unter der GPLv3 und lässt sich auch unter https://github.com/seeseekey/archive/blob/master/Web/podcast.php herunterladen.