Feed für Jekyll-basierten Blog erstellen

Ein Blog mit redaktionellen Inhalten benötigt einen Feed. Leser können so bequem die Inhalte über einen Feed-/News-Reader abonnieren. Wie es mit Jekyll funktioniert, verrät dieser Beitrag.

Seit 2005 haben sich zwei Formate für News-Feeds etabliert: RSS 2.0 und Atom. Um alle Leser eines Blogs oder Nachrichtenportals abzuholen, bietet es sich an, beide Formate zum Abonnement auf der Webseite anzubieten. Beide Formate sind unterschiedlich und haben ihre Stärken und Schwächen.

Einen guten Überblick über die Unterschiede der beiden Formate bietet die Übersetzung eines Artikels von Sam Ruby auf der Webseite von Jens Oliver Meiert.

Von Haus aus bringt Jekyll zunächst keine Feedunterstützung mit. Auf der Webseite des Projekts finden sich zwar Plugins zum Generieren von RSS 2.0- und Atom-Feeds; allerdings lassen sich nicht alle Plugins mit GitHub Pages verwenden.

Die entsprechenden XML-Dateien für einen Feed basierend auf dem Atom- oder RSS 2.0-Format zu erstellen, ist in wenigen Minuten selbst erledigt und benötigt keine zusätzlichen Plugins. Die beiden zur Verfügung stehenden Feeds von kivio.org sollen für diesen Beitrag als Beispiel dienen.

Die Sourcen können direkt im Repository bei GitHub eingesehen werden:

Beide Format definieren einen festen Teil, der als Header bezeichnet werden könnte und einen variablen Teil, der ein Listing der Blog-Einträge darstellt. Ich möchte an dieser Stelle nicht so sehr auf das Format der beiden Feeds eingehen, sondern eher auf die Fallstricke, die sich bei der Erstellung ergeben haben.

Während Atom sich sehr stark an dem XML-Standard orientiert und auch die Möglichkeit besteht, das Textformat des Feeds vorzugeben, gibt es bei RSS 2.0 zwei Fallstricke zu beachten:

Damit auch RSS- und Atom-fähige Browser erkennen, dass die Webseite entsprechende Feeds anbieten, lassen sich diese über link-Referenzen im Header bekannt machen:

<html>
  <head>
    [...]
    <!-- Feeds -->
    <link rel="alternate" type="application/rss+xml" 
          title="RSS" href="/blog/feed/rss.xml" />
    <link rel="alternate" type="application/atom+xml" 
          title="Atom" href="/blog/feed/atom.xml" />
  </head>
  <body>
    [...]
  </body>	
</html>

Viel Spaß beim Nachbauen.

Hybride Softwareentwicklung

Agile Softwareentwicklung erlebt gegenwärtig einen großen Hype. Neuerdings ist aber auch ein Gegentrend zu diesem Hype zurück zu den klassischen Vorgehensmodellen zu bemerken. Hybride Softwareentwicklung beschreibt einen Ansatz, der die Vorteile beider Welten in einem Modell vereint und stellt seine Praxistauglichkeit anhand von Case Studies unter Beweis. Zusammen mit den Co-Autoren erläutere ich die Vorteile der hybriden Softwareentwicklung und diskutiere praxisorientierte Lösungsansätze für IT-Manager und Projektleiter.

Kaufen bei amazon