<<

Blockseminar

Software- und Service-Scout

FH-Schmalkalden

WS 2013/2014

22.01.2014

Dozent: Dipl.-Phys. Jo Tzschenscher Inhaltsverzeichnis

Open Data - GStreamer Jan Hellmann Gunnar Eggers

Theoretische Aufgabe Diese Initiative sieht vor, dass oeffentliche Daten in einer maschinenlesbaren Form zugaenglich gemacht werden, sodass sie frei verknuepft werden koennen. Dies scheint bereits bei Fahrplaenen des Oeffentlichen Nahverkehrs in manchen Verkehrsverbuenden nicht gerne gesehen zu sein, besonders wenn diese Daten mit ebenfalls frei verfuegbarem Kartenmaterial gepaart werden. Geben Sie einen Ueberblick, wie eine solche Verknuepfung - mit und ohne offizielle Unterstuetzung erfolgreich bewerkstelligt werden konnte, und beschreiben Sie auch Beispiele, wo dies gezielt verhindert werden sollte und konnte.

Praktische Aufgabe Multimedia - Gstreamer - http://gstreamer.com

Tox - Plone Kirsten Leitsch Thomas Lipfert

Theoretische Aufgabe Mit Tox soll ein neuer Open-Source Instant Messenger in Peer-to-Peer- Funktionsweise entstehen, der das mittlerweile durch einen kommerziellen Softwarehersteller uebernommene Produkt Skype abloesen koennte, nachdem unklar ist, wie "sicher" die Kommunikation via Skype vor Belauschungsversuchen durch Geheimdienste ist. Beschreiben Sie das neue Produkt, und wie es das Sicherheitsproblem loesen will.

Praktische Aufgabe CMS - Plone CMS - https://plone.org

C3S - Puddletag Adem Sen David Hahn

Theoretische Aufgabe Mit der Cultural-Commons-Collecting-Society (c3s.cc) soll eine alternative Rechteverwertungsgesellschaft fuer Kunstschaffende gegruendet werden, die sich als Alternative fuer die klassischen Rechteverwerter am Markt etablieren will. Beschreiben Sie die Geschaeftsidee, und wie sich diese von der Funktionsweise klassischer Verwerter unterscheidet.

Praktische Aufgabe Audio- - Puddletag - http://puddletag.sourceforge.net Replicant - LuxRender Ronny Gertler David Zimmermann

Theoretische Aufgabe Da das von einem grossen Suchmaschinenbetreiber bereitgestellte Betriebssystem Android auch proprietaere Software enthaelt, und dadurch nicht wirklich als freie Software anzusehen ist, hat sich eine Arbeitsgruppe aus der Free Software Foundation heraus gebildet, die sich zum Ziel gesetzt hat, eine zu 100% freie Alternative bereitzustellen. Zeigen Sie die grossen und kleinen Probleme dieses Ansatzes auf.

Praktische Aufgabe Photorealistic Rendering – LuxRender - http://www.luxrender.net

Open Books - Contao Sebastian Reinicke Karsten Scholz

Theoretische Aufgabe Die Bibliotheca Augusta in Wolfenbuettel stellt ihre gesamten digitalisierten Werke unter einer Creative-Commons-Lizenz zur Verfuegung, um eine groesstmoegliche Verfuegbarkeit fuer wissenschaftliche Auswertungen zu erreichen. Andere Bibliotheken beauftragen Google, um deren Buchbestaende einzuscannen und diese dann in Google-Books zur Verfuegung zu stellen. Vergleichen Sie die Lizenzmodelle, die beiden Vorgehensweisen zugrundeliegen. Hat dies Auswirkungen auf die Verfuegbarkeit und Verwendbarkeit der Werke, und welche? Da Google ein privatwirtschaftlich gefuehrtes Unternehmen ist, koennten Gewinnerzielungsabsichten vorhanden sein: Gilt dies auch fuer die in Google-Books verfuegbar gemachten Bibliotheksbestaende? Praktische Aufgabe CMS - Contao/Typolight - https://contao.org

Creative-Commons-Lizenz Christian Fischer

Theoretische Aufgabe Mit der Creative-Commons-Lizenz wurde ein nicht-kommerzielles Lizenzmodell geschaffen, das es erlaubt, die Weiterverwertung von Medienprodukten graduell festzulegen. Beschreiben Sie, wie dieses Lizenzmodell funktioniert, und geben Sie einen Überblick, wie sich dieses vom Standard-Copyright und weiteren in der Open-Source-Scene üblichen Lizenzmodellen unterscheidet. Praktische Aufgabe Media - Open Source Media Framework - http://www.opensourcemediaframework.com FH Schmalkalden WS 2013/2014

Studiengang: Master Angewandte Medieninformatik

Blockseminar: Software- und Servicescout

Dozent: Dipl.-Phys. Jo Tzschenscher

Theoretische Aufgabe - Diese Initiative sieht vor, dass oeffentliche Daten in einer maschinenlesbaren Form zugaenglich gemacht werden, sodass sie frei verknuepft werden koennen. Dies scheint bereits bei Fahrplaenen des Oeffentlichen Nahverkehrs in manchen Verkehrsverbuenden nicht gerne gesehen zu sein, besonders wenn diese Daten mit ebenfalls frei verfuegbarem Kartenmaterial gepaart werden. Geben Sie einen Ueberblick, wie eine solche Verknuepfung - mit und ohne offizielle Unterstuetzung erfolgreich bewerkstelligt werden konnte, und beschreiben Sie auch Beispiele, wo dies gezielt verhindert werden sollte und konnte.

Praktische Aufgabe GStreamer (http://gstreamer.com) is a library for constructing graphs of media-handling components. The applications it supports range from simple Ogg/ playback, audio/video streaming to complex audio (mixing) and video (non-linear editing) processing. Applications can take advantage of advances in codec and filter technology transparently. Developers can add new codecs and filters by writing a simple plugin with a clean, generic interface.

Jan Hellmann Gunnar Eggers

Inhaltsverzeichnis FH Schmalkalden - WS 2013/2014 Jan Hellmann, Gunnar Eggers

Inhaltsverzeichnis

Abbildungsverzeichnis ...... 3 I. Theoretischer Teil ...... 4 1. Einleitung ...... 4 2. Open Data ...... 5 3. Nutzung von Open Data zur Verknüpfung von Fahrplänen des Öffentlichen Nahverkehrs mit Kartenmaterial ...... 6 3.1 Realisierung mit offizieller Unterstützung ...... 6 3.2 Realisierung ohne offizielle Unterstützung ...... 8 3.3 Gezielte Verhinderung der Realisierung ...... 9 4. Fazit ...... 10 II. Praktischer Teil ...... 12 1. Historie und Weiterentwicklung des Tools ...... 12 2. Interoperabilität mit ähnlichen Produkten ...... 13 3. Interoperabilität mit kommerziellen Pendants, Import, Export ...... 13 4. Benutzerführung, Bedienbarkeit, Einfachheit - auch der Installation ...... 14 5. Robustheit ...... 21 6. Accessibility ...... 21 7. Verbreitung und Wahrnehmung im Markt ...... 21 8. Geschäftsideen und -modelle, die auf dem Tool aufbauen und Added Value gegen Aufpreis ...... 22 9. Abgrenzung gegen ähnliche Produkte oder Services ...... 22 10. Dokumentation ...... 23 11. Support im Fehlerfall, Bugfixing, Community oder Forum für Problemdiskussionen ...... 23 12. Professionalität ...... 24 13. Möglichkeiten der Individualisierung/Customisation, der ...... 24 Programmierbarkeit und der Erweiterung/Enhancement ...... 24 14. Unterstützte Hardware und Betriebssysteme ...... 24 15. Tutorials, Lernsoftware, instruktive und intuitive Beispiele ...... 25 16. Finanzierung des Projekts ...... 25 17. Lizenzbedingungen ...... 25 18. Ausführliche Darstellung eines Show-Case ...... 26 19. Fazit ...... 27 Quellenverzeichnis ...... 29

Blockseminar - Software- und Servicescout Dozent: Jo Tzschenscher Seite 2 /32

Abbildungsverzeichnis FH Schmalkalden - WS 2013/2014 Jan Hellmann, Gunnar Eggers

Abbildungsverzeichnis

Abbildung 1: einige nextr Funktionen (Links: Umgebungssuche, Rechts: Haltestellen) 8 Abbildung 2: Fehlermeldung ...... 15 Abbildung 3: abgespieltes Video ...... 27

Blockseminar - Software- und Servicescout Dozent: Jo Tzschenscher Seite 3 /32

Open Data FH Schmalkalden - WS 2013/2014 Jan Hellmann, Gunnar Eggers

I. Theoretischer Teil 1. Einleitung

In der heutigen Zeit spielt die Mobilität eine wichtige Rolle, allerdings kann und möchte sich nicht jeder mit dem Auto fortbewegen, da es zum einen kostenintensiv ist und zum anderen weitere Probleme, wie beispielsweise die zeitaufwändige Parkplatzsuche, vor allem in Großstädten mit sich bringt. 1Deshalb nutzen immer mehr Personen in den großen Metropolen Öffentliche Nahverkehrsmittel, wie U-Bahn und S-Bahn. Laut 2www.globometer.com nehmen in Tokio täglich 8,7 Millionen Menschen die U-Bahn und in Moskau sind es 6,6 Millionen. Darauf folgen 5,6 Millionen Fahrgäste in Seoul, 5,5 Millionen in Shanghai, 5 Millionen in New York und Peking, sowie 4 Millionen Menschen in Paris. Dabei planen die meisten Fahrgäste ihre Route bereits im Voraus und nutzen in der Regel Online-Routenplaner oder Apps auf dem Smartphone als Hilfe, um den besten Verkehrsmittelmix zu bestimmen. Die Entwickler haben hierbei Fahrpläne des Öffentlichen Nahverkehrs mit Kartendaten verknüpft. Dabei gibt es verschiede Möglichkeiten eine solche Anwendung zu realisieren. Zunächst werden die Fahrplandaten benötigt. Diese werden von den meisten Verkehrsgesellschaften nicht zur freien Verfügung beziehungsweise weiteren Nutzung durch Dritte bereitgestellt, da der Rechteinhaber, welcher auch die Lizenzen besitzt entscheiden kann wer die Fahrplandaten verwenden darf oder eben nicht. Aber es gibt auch vereinzelt Verkehrsgesellschaften, welche ihre Fahrplandaten öffentlich für jeden zum Download beziehungsweise zur weiteren Nutzung bereitstellen. Die Nutzung von diesen sogenannten Open Data soll in der folgenden Ausarbeitung anhand von Beispielen näher betrachtet werden. Dazu wird zunächst geklärt, was unter dem Begriff „Open Data“ zu verstehen ist. Dann folgen Beispiele, an denen gezeigt wird wie eine Verknüpfung von Fahrplandaten des öffentlichen Nahverkehrs mit Kartendaten, sowohl mit und ohne offizielle Unterstützung realisiert wurde. Dazu wird noch beschrieben, wo eine Realisierung verhindert wurde.

1 Vgl.: Newfleet, o. V., Meist genutztes Verkehrsmittel das Fahrrad, http://www.newfleet.de/news/artikel/lesen/2013/08/meist-genutztes-verkehrsmittel-das-fahrrad-52739/, veröffentlicht am 01.08.2013, Seitenabruf am 30.10.2013 2 Vgl.: http://de.globometer.com/flugzeug.php, Seitenabruf am 14.01.2014 Blockseminar - Software- und Servicescout Dozent: Jo Tzschenscher Seite 4 /32

Open Data FH Schmalkalden - WS 2013/2014 Jan Hellmann, Gunnar Eggers

2. Open Data

Zunächst soll der Begriff „Open Data“ näher erläutert beziehungsweise definiert werden. Übersetzt man den englischen Begriff „Open Data“ ins Deutsche, so erhält man den Ausdruck „offene Daten“, aber was ist das eigentlich? Und um welche Art von Daten handelt es sich bei „offenen Daten“? Diese Fragen werden unter anderem in dem folgenden Abschnitt näher erklärt, wobei zunächst die beiden Wörter „offen“ und „Daten“ einzeln definiert werden und im folgenden eine Gesamtdefinition des Begriffs „offene Daten“ beziehungsweise „Open Data“ abgeleitet wird.

Im Duden online wird der Ausdruck „Daten“ im Bereich der EDV folgendermaßen definiert: 3„elektronisch gespeicherte Zeichen, Angaben, Informationen“. Passend dazu liefert der Duden online auch eine Definition für das Adjektiv „offen“, was in diesem Zusammenhang für 4„frei zugänglich“ steht.

Also sind „offene Daten“ bereits vorhandene Informationen in digitaler Form, welche einfach über das verbreitet und von Dritten weiterverarbeitet werden können. 5Damit Dritte die Informationen weiter nutzen und eventuell mit anderen Daten kombinieren können, darf kein klassisches Copyright vorliegen, sondern eher ein Lizenzmodell mit expliziten Nutzungsrechten. Außerdem dürfen es keine personenbezogene Daten sein und es darf auch keine Person oder Firma den alleinigen Anspruch auf die Informationen erheben.

6Die Daten könnten beispielweise aus der öffentlichen Verwaltung (zum Beispiel: Geodaten, Lehrmaterial, Verkehrsinformationen, Statistiken) stammen, aber auch andere private Unternehmen oder Non-Profit-Einrichtungen könnten Datenbestände mit interessanten Informationen erzeugen und diese als Download bereitstellen.

3 Duden online, http://www.duden.de/rechtschreibung/Daten, Seitenabruf am 02.11.2013 4 Duden online, http://www.duden.de/rechtschreibung/offen, Seitenabruf am 02.11.2013 5 Vgl. Matzat, L., Definitionen: OpenData, OpenGovernment, Gov2.0 und Co., http://datenjournalist.de/definitionen-opendata-opengovernment-gov2-0-und-co/, veröffentlicht am 13.08.2010, Seitenabruf am 02.11.2013 6 Vgl. Lucke, J./Geiger, P., Open Government Data Frei verfügbare Daten des öffentlichen Sektors, http://www.zu.de/deutsch/lehrstuehle/ticc/TICC-101203-OpenGovernmentData-V1.pdf, veröffentlicht am 03.12.2010, Seitenabruf am 02.11.2013 Blockseminar - Software- und Servicescout Dozent: Jo Tzschenscher Seite 5 /32

Open Data FH Schmalkalden - WS 2013/2014 Jan Hellmann, Gunnar Eggers

7Dabei gibt es drei verschiedene Strukturen, in denen die Daten vorliegen können. Das sind einerseits strukturierte Daten oder semistrukturierte Daten und andererseits unstrukturierte Daten. Die strukturierten Daten weisen eine eindeutige Datenstruktur auf, das bedeutet, dass jede einzelne Spalte klar bezeichnet ist und somit einfach weiterbearbeitet werden kann. Semistrukturierte Daten hingegen sind zwar auch einfach lesbar, allerdings befinden sich die Informationen nicht in einer Tabelle, sondern sind meist im XML Format gespeichert. Die dritte Form sind unstrukturierte Daten, bei denen die Dokumente mit den Informationen einfach fotografiert oder eingescannt und dann als Bilder bereitgestellt wurden.

3. Nutzung von Open Data zur Verknüpfung von Fahrplänen des Öffentlichen Nahverkehrs mit Kartenmaterial

In diesem Gliederungspunkt soll anhand einiger Beispiele die Realisierung der Verknüpfung von frei zugänglichen Fahrplandaten des Öffentlichen Nahverkehrs mit ebenfalls frei zugänglichem Kartenmaterial dargestellt werden. Dabei soll ein Überblick zu den drei Beispielgruppen (Realisierung mit offizieller Unterstützung, Realisierung ohne offizielle Unterstützung, gezielter Verhinderung der Realisierung) gegeben werden.

3.1 Realisierung mit offizieller Unterstützung

8Ein erfolgreiches Projektbeispiel, bei dem die Fahrplandaten des Öffentlichen Nahverkehrs in eine bereits vorhandene Karte integriert wurde ist Google Maps Transit. Bereits im Jahr 2012 kooperierte Google mit der Deutschen Bahn und so konnte der Service Google Transit in Deutschland erweitert werden. Mit Google Transit wurden sämtliche Zugverbindungen der Deutschen Bahn in den Kartendienst Google Maps

7 Vgl.: Matzat, L., Definitionen: OpenData, OpenGovernment, Gov2.0 und Co., http://datenjournalist.de/definitionen-opendata-opengovernment-gov2-0-und-co/, veröffentlicht am 13.08.2010, Seitenabruf am 02.11.2013 8 Vgl.: Heise Online, o. V., Google und Deutsche Bahn kooperieren, http://www.heise.de/newsticker/meldung/Google-und-Deutsche-Bahn-kooperieren-1709505., veröffentlicht am 03.09.2012, Seitenabruf am 10.11.2013 Blockseminar - Software- und Servicescout Dozent: Jo Tzschenscher Seite 6 /32

Open Data FH Schmalkalden - WS 2013/2014 Jan Hellmann, Gunnar Eggers aufgenommen. Der Vorteil besteht darin, dass Reisende nun direkt von ihrem mobilen Endgerät aus zum einen über die Internetseite www.maps.google.com und zum anderen über die Google Maps App von ihrem Smartphone aus nach Verbindungen mit öffentlichen Nah- und Fernverkehrsmitteln suchen können. Die Deutsche Bahn lieferte bei diesem Projekt die Rohdaten und Google konnte seinen Service Google Transit mit diesen Daten erweitern.

9Ein weiterer Kooperationspartner von Google ist der Verkehrsverbund Berlin- Brandenburg, welcher als erster Verkehrsverbund seine Fahrplandaten öffentlich als Download bereitstellt. Auch diese Fahrplandaten wurden in Google Transit integriert und stehen somit den Nutzern von Google Maps bei ihrer Routenplanung zur Verfügung. Damit erweitert sich das Google Transit Streckennetz um mehr als 1000 Bus- und Bahnverkehrslinien mit über 13.000 Haltestellen und die Nutzer können ihre Routenplanung mit Bahn-Regionalverkehr, S-Bahn, U-Bahn, Tram, Bus und Fähren aller 40 Verkehrsunternehmen vornehmen.

10Weiterhin können Nutzer von Google Maps in Deutschland, neben den Zugverbindungen der Deutschen Bahn und den Daten des Verkehrsverbund Berlin- Brandenburg auch noch lokale Verbindungen der Münchner Verkehrsgesellschaft, sowie der Stadtwerke Münster, der Rheinbahn Düsseldorf, der Verkehrsgesellschaft Görlitz und der Sylter Verkehrsgesellschaft abrufen. Weltweit ist Google Maps Transit zu Zeit in 800 Regionen und Städten, wie New York, Tokio oder London verfügbar. Damit ist Google Maps das 11„"größte öffentliche Nah- und Fernverkehrsauskunftssystem der Welt" mit einer Milliarde Nutzer jeden Monat.“

9 Vgl.: Heise Online, o. V., Google Maps Transit enthält nun Fahrplandaten von Berlin und Brandenburg, http://www.heise.de/newsticker/meldung/Google-Maps-Transit-enthaelt-nun-Fahrplandaten-von-Berlin- und-Brandenburg-1947626.html, veröffentlicht am 03.09.2012, Seitenabruf am 10.11.2013 10 Vgl.: Ebd. 11 Heise Online, o. V., Google und Deutsche Bahn kooperieren, http://www.heise.de/newsticker/meldung/Google-und-Deutsche-Bahn-kooperieren-1709505.html, veröffentlicht am 03.09.2012, Seitenabruf am 10.11.2013 Blockseminar - Software- und Servicescout Dozent: Jo Tzschenscher Seite 7 /32

Open Data FH Schmalkalden - WS 2013/2014 Jan Hellmann, Gunnar Eggers

3.2 Realisierung ohne offizielle Unterstützung

Die Verknüpfung von Fahrplänen mit Kartendaten kann auch ohne offizielle Unterstützung erfolgreich umgesetzt werden. 12Ein Beispiel hierfür ist die App nextr, welche von Martin Oberhäuser entwickelt wurde und ähnlich wie die DB Navigator App der Deutschen Bahn funktioniert. Allerdings wird durch nextr die Reiseplanung vereinfacht, da direkt beim Starten der App die Umgebungssuche aktiviert wird. Diese zeigt direkt die nächstgelegen Haltestellen in der Umgebung an, welche durch Antippen direkt ausgewählt werden können. Nach der Auswahl öffnet sich eine Übersichtskarte, welche Abfahrtszeiten der nächsten Busse und Bahnen anzeigt. In der Abbildung 1 sind einige Funktionen visualisiert. Neben dieser vereinfachten Auswahlmöglichkeit kann der Nutzer aber auch noch den Start- und Zielort per Hand eintippen.

13Abbildung 1: einige nextr Funktionen (Links: Umgebungssuche, Rechts: Haltestellen)

12 Vgl.: Vielmeier, J., NEXTR: Reise-App darf auf Daten der Deutschen Bahn zugreifen, http://netzwertig.com/2013/04/30/nextr-reise-app-darf-auf-daten-der-deutschen-bahn-zugreifen/, veröffentlicht am 30.04.2013, Seitenabruf am 23.11.2013 13 Screenshot der nextr Startseite, http://www.nextr.info, Seitenabruf am 23.11.2013 Blockseminar - Software- und Servicescout Dozent: Jo Tzschenscher Seite 8 /32

Open Data FH Schmalkalden - WS 2013/2014 Jan Hellmann, Gunnar Eggers

Die App nextr greift wie auch der DB Navigator auf die Fahrplandatenbank der Deutschen Bahn zu, ist allerdings keine App der Deutschen Bahn, wie nextr auch auf seiner Startseite www.nextr.info darlegt: 14„nextr ist keine App der Deutschen Bahn. Die Daten werden von mobile.bahn.de abgefragt.“. 15Noch toleriert die Deutsche Bahn bei diesem Projekt die Nutzung ihrer Fahrplandatendank, allerdings kann sie in Zukunft entweder die Nutzung untersagen oder aber es kommt zu einer Kooperation. Bis jetzt hingegen werden Datenabfragen von der eigenen Bahnwebseite nicht unterbunden und somit könnten in Zukunft auch andere Entwickler auf den reichhaltigen Datenbestand für überregionalen Nahverkehr der Deutschen Bahn zugreifen und für ihre eigenen Projekte nutzen. Bei der Verknüpfung von Fahrplänen und Kartendaten ist vor allem der Datenbestand an Bus- und Bahnverbindungen und deren Aktualität wichtig. Diese Voraussetzung ist bei dem Datenbestand der Deutschen Bahn gegeben, da im Fahrplan sowohl die eigenen Verbindungen, als auch Verbindungen von Verkehrsverbünden sowie privaten Betreibern enthalten sind. Außerdem werden Echtzeitinformationen für die Pünktlichkeit der Züge in die Datenbank eingespeist. Dieser ganze Verkehrsmittelmix, bestehend aus Zügen, Bussen, Fähren, U-Bahnen und S-Bahnen macht den Datenbestand der Deutschen Bahn so attraktiv.

3.3 Gezielte Verhinderung der Realisierung

Damit überhaupt Fahrpläne des Öffentlichen Nahverkehrs mit Kartendaten verknüpft werden können, werden zunächst frei zugängliche und öffentlich nutzbare Fahrplandaten benötigt. Wie bereits im Gliederungspunkt „3.2 Verknüpfung ohne offizielle Unterstützung“ erwähnt, besitzt die Deutsche Bahn den größten Datenbestand an Fahrplänen, allerdings ist dieser Datenbestand nicht öffentlich zugänglich, da die 16Lizenzrechte bei der Deutschen Bahn und anderen beteiligten Verkehrsverbünden liegen. 17Deshalb extrahierte der Programmierer Michael Kreil sämtliche Fahrplandaten

14 nextr Startseite, http://www.nextr.info, Seitenabruf am 23.11.2013 15 Vgl.: Vielmeier, J., NEXTR: Reise-App darf auf Daten der Deutschen Bahn zugreifen, http://netzwertig.com/2013/04/30/nextr-reise-app-darf-auf-daten-der-deutschen-bahn-zugreifen/, veröffentlicht am 30.04.2013, Seitenabruf am 23.11.2013 16 Vgl.: Bohle, B., Offener Brief an das Projekt „openPlanB“, http://www.db- vertrieb.com/db_vertrieb/view/service/open_plan_b.shtml, veröffentlicht am 28.09.2012, Seitenabruf am 27.11.2013 17 Vgl.: Ebd. Blockseminar - Software- und Servicescout Dozent: Jo Tzschenscher Seite 9 /32

Open Data FH Schmalkalden - WS 2013/2014 Jan Hellmann, Gunnar Eggers der Deutschen Bahn von einer CD und konvertierte sie in das Format JSON. Danach stellte er die Fahrplandaten unter einer Open License für Dritte als Download öffentlich auf seiner Internetseite www.openplanb.tumblr.com zur Verfügung. Mit diesem Projekt „openPlanB“ machte sich Michael Kreil strafbar, da er zum einen nicht der Rechteinhaber der Daten ist und zum anderen könnten Dritte diese Daten für ihre Anwendungen verwenden, da sie nicht wissen, dass die Lizenzrechte bei der Deutschen Bahn liegen. 18Dieses Projekt zeigt, dass die Deutsche Bahn den Zugang zu ihrer Fahrplandatenbank nicht öffentlich für Dritte zugänglich machen möchte, sondern lieber wie in Gliederungspunkt „3.1 Realisierung mit offizieller Unterstützung“ erläutert mit anderen Unternehmen kooperieren möchte. Dies hat verschiedene Gründe, denn zum einen werden die Fahrpläne der Deutschen Bahn in unregelmäßigen Abständen aktualisiert und somit müssten nach jeder Fahrplanaktualisierung auch wieder neue Fahrplandaten bereitgestellt und in die bereits entwickelten Anwendungen integriert werden. Zum anderen möchte die Deutsche Bahn natürlich auch Geld verdienen und ihre Monopolstellung ausbauen, in dem möglichst viele Personen die bahneigenen Technologien, wie die Reiseauskunft im Internet oder die DB-Navigator App nutzen. Weiterhin wird die Verknüpfung von Fahrplänen des Öffentlichen Nahverkehrs mit Kartendaten auch noch durch die unterschiedlichen Datenformate erschwert, denn bisher nutzt jeder Verkehrsverbund ein anderes Datenformat in seiner eigenen Fahrplan App.

4. Fazit

Damit auch in der Zukunft solche Routenplanungs-Apps wie nextr mit neuen und cleveren Funktionen, sowohl von unabhängigen Programmieren, sowie Unternehmen für die Nutzer bereitgestellt werden können, müssen zunächst die Fahrplandaten von allen Verkehrsbetrieben möglichst in einem einheitlichen Datenformat frei zugänglich und durch Dritte nutzbar zur Verfügung gestellt werden. 19Zwar gibt es bis jetzt noch

18 Vgl.: Kleinz, T., Open Data Fahrpläne für jeden: Open Data vs. Deutsche Bahn, http://blog.zdf.de/hyperland/2012/09/fahrplaene-fuer-jeden-open-data-vs-deutsche-bahn/, veröffentlicht am 29.09.2012, Seitenabruf am 27.11.2013 19 Vgl.: Heise Online, Schulzki-Haddouti, Grosse Koalition bekennt sich zu Open Data, http://www.heise.de/newsticker/meldung/Grosse-Koalition-bekennt-sich-zu-Open-Data-2056057.html, veröffentlicht am 28.11.2013, Seitenabruf am 15.01.2014 Blockseminar - Software- und Servicescout Dozent: Jo Tzschenscher Seite 10 /32

Open Data FH Schmalkalden - WS 2013/2014 Jan Hellmann, Gunnar Eggers kein Gesetz, welches Anbieter wie die Deutsche Bahn zur öffentlichen Bereitstellung ihrer Fahrplandaten verpflichtet, aber die Große Koalition möchte verkehrsübergreifende Datenplattformen auf Open-Data-Basis fördern. Diese sollen den Nutzer über Mobilitätsangebote, Staus, Verspätungen und Fahrplandaten informieren. Somit bestünde für jeden die Möglichkeit eine neue und innovative Anwendung oder App zur Routenplanung mit Hilfe eines guten Verkehrsmittelmix bestehend aus öffentlichen Verkehrsmitten wie Bus und Bahn zu entwickeln. Weiterhin könnten auch noch weitere Verkehrsmittel, wie Fahrrad, Taxi, Flugzeug oder innovative Mobilitätskonzepte wie beispielsweise Carsharing oder Mitfahrgelegenheiten in eine solche Routenplanungs-App integriert werden. 20Bereits Heute wurden auf über einer Million Smartphones in Deutschland Fahrplan-Apps installiert, welche nicht von Verkehrsunternehmen herausgegeben wurden und die Daten umständlich im Hintergrund von den Anbieterwebseiten abrufen. Die Entwicklung von Open Data vor allem im Bereich der Verkehrsdaten bleibt also weiterhin spannend.

20 Vgl.: Bayer, O., Eben nicht nur für Google Maps: freie Daten und Schnittstellen für Fahrplanauskünfte, http://www.oliver-bayer.de/eben-nicht-nur-fur-google-maps-freie-daten-und-schnittstellen-fur- fahrplanauskunfte/, veröffentlicht am 01.10.2013, Seitenabruf am 15.01.2014 Blockseminar - Software- und Servicescout Dozent: Jo Tzschenscher Seite 11 /32

GStreamer FH Schmalkalden - WS 2013/2014 Jan Hellmann, Gunnar Eggers

II. Praktischer Teil 1. Historie und Weiterentwicklung des Tools

21GStreamer wurde von Erik Walthinsen entwickelt und bereits im Jahr 1999 stand die erste öffentliche Version 0.0.9 von GStreamer zum Download auf der Webseite http://www.cse.ogi.edu/~omega/gnome/gst/ bereit. 22Die Idee kam aus einem Forschungsprojekt an dem Oregon Graduate Institute. Kurz nach dem Start des GStreamer-Projekts schlossen sich weitere Entwickler, wie Wim Taymans an und es wurde bereits am 11.01.2001 die Version 0.1.0 angekündigt. Einige Zeit nach dieser Veröffentlichung bekam GStramer seinen ersten kommerziellen Geldgeber, in Form einer -Firma mit dem Namen RidgeRun. In dieser Firma arbeiteten neben Erik Walthinsen auch noch weitere Mitarbeiter an dem Projekt, unter anderem designte Brock Frazier das Logo von GStreamer. Leider ging die Firma RidgeRun pleite, aber zuvor konnte sie einige wichtige Veröffentlichungen, wie die Version 0.2.0 im Jahr 2001, die Version 0.4.0 im Jahr 2002, sowie die Version 0.8.0 im Jahr 2004 herausbringen. Außerdem änderte sich während dieser Zeit auch die Versionsstrategie, denn die Versionen 0.6.x und 0.8.x blieben innerhalb der Release-Serien binär kompatibel. Erik Walthinsen kümmerte sich zu dieser Zeit weniger um die Entwicklung von GStreamer, bis er das Entwicklerteam verlassen hat. Danach kam es zu einigen Problemen in der Versionsreihe 0.8.x, da Wim Taymans die Projektleitung übernommen hatte und es ihm an Führungsqualitäten mangelte. Einerseits traten Stabilitätsprobleme auf und andererseits fehlten fortschrittliche Funktionen, welche die konkurrierenden Projekte bereits implementiert hatten. Im Jahr 2004 wurde die neue Firma Fluendo gegründet, welche sowohl Wim Taymans als auch die meisten anderen Kernentwickler feuerte und versuchte GStreamer auf ein professionelles Niveau zu bringen. 2005 wurde die GStreamer-Entwicklung unter der Leitung von Wim Taymans mit der 0.10.x Serie fortgesetzt und bereits ein Jahr später war GStreamer sehr bekannt und erfolgreich, sodass Kooperationen mit einigen Unternehmen, wie Nokia, Motorola, Texas Instruments, Freescale, Talberg und Intel geschlossen wurden. Damit hatte das Multimedia-Framework GStreamer sowohl als Open-Source-Tool, aber auch als

21 Vgl.: Walthinsen, E., GScrea..., um, GStreamer 0.0.9 released, https://mail.gnome.org/archives/gnome- devel-list/1999-November/msg00000.html, veröffentlicht am 31.10.1999, Seitenabruf am 11.12.2013 22 Vgl.: Wikipedia, o. V., GStreamer, http://en.wikipedia.org/wiki/GStreamer, Seitenabruf am 11.12.2013 Blockseminar - Software- und Servicescout Dozent: Jo Tzschenscher Seite 12 /32

GStreamer FH Schmalkalden - WS 2013/2014 Jan Hellmann, Gunnar Eggers kommerzielles Tool Erfolg. Im Jahr 2007 verließen Wim Taymans und die meisten seiner Kernentwickler die Firma Fluendo und gründeten die Collaboration. Am 24.09.2012 wurde die GStreamer-Serie 1.0 veröffentlicht, welche viele Vorteile und folgende neue Versionierung mit sich brachte. Ø 1.0.0, 1.0.1, 1.0.2, 1.0.3 ... stabile Version und Follow-up Bug-Fix-Releases Ø 1.1.0, 1.1.1, 1.1.2, 1.1.3 ... Pre-Releases, Entwicklungsversion bis zum 1.2.0 Ø 1.2.0, 1.2.1, 1.2.2, 1.2.3 ... stabile Version und Follow-up Bug-Fix-Releases Ø 1.3.0 .. Ø 1.4.0 .. Ø ... Seit März 2013 wird die GStreamer Version 0.10 nicht mehr weiterentwickelt, aber es wird den Nutzern beim Update auf die aktuelle Version geholfen.

2. Interoperabilität mit ähnlichen Produkten

Ein in weiten Teilen bekanntes Pendant zu GStreamer ist das Multimedia-Framework FFmpeg.23Sowohl GStreamer als auch FFmpeg beinhalten jeweils große Sammlungen an Codecs, beziehungsweise Libraries. Als augenscheinlicher Unterschied ist das Alter der beiden Frameworks zu nennen. FFmpeg wurde erstmal im Jahr 2000 veröffentlicht24, GStreamer hingegen 2001.25Nach einer Installation beider Frameworks unter Linux dürfte es angesichts der abgedeckten Bandbreite kaum Formate geben, die Probleme bereiten.

3. Interoperabilität mit kommerziellen Pendants, Import, Export

Der praktische Teil dieser Arbeit bezieht sich auf den Feldtest mit der Linux- Distribution Ubuntu. Aufgrund der Tatsache, dass Ubuntu als auch die Frameworks GStreamer und FFmpeg Open-Source sind und ein weites Anwendungsfeld abdecken,

23 http://www.ffmpeg.org/, Seitenabruf am 11.01.2014 24 http://en.wikipedia.org/wiki/FFmpeg, Seitenabruf am 11.01.2014 25 http://en.wikipedia.org/wiki/GStreamer, Seitenabruf am 11.01.2014 Blockseminar - Software- und Servicescout Dozent: Jo Tzschenscher Seite 13 /32

GStreamer FH Schmalkalden - WS 2013/2014 Jan Hellmann, Gunnar Eggers besteht nicht die Notwendigkeit zum Vergleich mit kommerziellen Produkten. Kommerzielle Multimedia-Frameworks ließen sich aktuell für Linux nicht finden.

4. Benutzerführung, Bedienbarkeit, Einfachheit - auch der Installation

Das Framework GStreamer ist für eine Vielzahl unterschiedlicher Plattformen erhältlich.26Im folgenden sind dies : Linux, OpenBSD, Windows, Mac OS X, Android und Symbian.

Im Rahmen dieser Arbeit soll die Installation und Nutzung durch den Endanwender Gegenstand der Betrachtung sein. Für dieses Szenario wurde Mac OS X auf nativer Hardware gewählt, so wie eine virtualisierte Linux-Distribution auf Basis von VMware. Zum Einsatz kamen Mac OS X Mavericks 10.9.1 (13B42) mit dem Kernel Darwin 13.0.0 und Ubuntu 13.10 in VMware Fusion 5.0.2 (900 491).

27Für die Installation unter Mac OS X wird neben dem Betriebssystem ab Version 10.6 (Snow Leopard) auch Apples eigene IDE Xcode ab Version 3.2.6 benötigt, wie auch Python ab Version 2.7.

Für die Installation werden Mac OS X 10.7 (Lion) und Xcode 4 empfohlen. Nach Stand Januar 2014 sind jedoch Mac OS X 10.9.1 und Xcode 5.0.2 jeweils aktuelle Versionen. Apples IDE Xcode setzt für die Enwicklung von Apps, beziehungsweise Software im weiteren Sinne einen kostenpflichtigen Developer Account voraus um diese über Apples App Store zu distribuieren. Möchte man die IDE lediglich zum Entwickeln nutzen lässt sich sie sich mit einer gewöhnlichen Apple ID kostenlos über den App Store herunterladen. Zusätzlich wird das GStreamer SDK 2013.6 (Congo) als Runtime benötigt, wie auch die Development Files. Zum Start des Installationsvorgangs müssen lediglich die beiden PKG-Dateien für die Runtime und die Development Files gestartet werden. Im Anschluss daran wird Xcode gestartet, welches automatisch das GStreamer-

26 http://gstreamer.freedesktop.org/download/ , Seitenabruf am 11.01.2014 27 http://docs.gstreamer.com/display/GstSDK/Installing+on+Mac+OS+X, Seitenabruf am 11.01.2014 Blockseminar - Software- und Servicescout Dozent: Jo Tzschenscher Seite 14 /32

GStreamer FH Schmalkalden - WS 2013/2014 Jan Hellmann, Gunnar Eggers

Framework erkennt. Nachdem sich Xcode automatisch konfiguriert hat müssen für geöffnete Projekte, in welchen GStreamer zum Einsatz kommen soll, nun entsprechende Einstellungen im Projekt vorgenommen werden. Hierfür werden in den Preferences des gewählten Projektes als Framework GStreamer ausgewählt und ebenfalls die Header- Informationen ausgewählt. Nach diesem Schritt ist die IDE konfiguriert und GStreamer als Framework ausgewählt. Soll jetzt ein Projekt gestartet werden über Run erscheint der Hinweis Build failed mit der Information, dass das SDK nicht mit dieser Version Xcode kompatibel ist.

Abbildung 2: Fehlermeldung

Es existieren im Netz verschiedene Workarounds und Fixes für dieses Problem. Leider beziehen sich dieses Lösungsvorschläge mit anschließenden Erfolgsmeldungen lediglich auf ältere Versionen von Apples IDE. Für Mac OS X 10.9.1 ist über den App Store nur die aktuelle Version 5.0.2 zum Download erhältlich und so lassen sich unterschiedliche Varianten aus SDK und IDE nicht ausprobieren. Erschwerend hinzu kommt, dass nicht jede Version der IDE mit Apples aktuellem Betriebssystem funktionsfähig ist.

Ubuntu

Um die Installation ausführen zu können benötigt man Root-Rechte. Nach Eingabe ist man Benutzer mit Root und es ist nicht mehr nötig anschließend bei jedem Installationsschritt am Anfang einer Zeile sudo einzugeben. gunnar@ubuntu:~$ sudo su [sudo] password for gunnar:

Blockseminar - Software- und Servicescout Dozent: Jo Tzschenscher Seite 15 /32

GStreamer FH Schmalkalden - WS 2013/2014 Jan Hellmann, Gunnar Eggers

28Wechsel ins Root-Verzeichnis des Super-Users um auf sämtliche Verzeichnisse Zugriff zu bekommen und nicht mit relativen Pfadangaben arbeiten zu müssen. root@ubuntu:/home/gunnar# cd / root@ubuntu:/# ls -l total 96 drwxr-xr-x 2 root root 4096 Jan 11 05:29 bin drwxr-xr-x 3 root root 4096 Jan 11 05:30 boot drwxrwxr-x 2 root root 4096 Jan 11 05:21 cdrom drwxr-xr-x 15 root root 4160 Jan 11 05:30 dev drwxr-xr-x 131 root root 12288 Jan 11 04:32 etc drwxr-xr-x 3 root root 4096 Jan 11 05:24 home

Eine Aktualisierung mit dem Repository soll sicherstellen, dass immer auf den neusten Katalog zur Software-Aktualisierung zugegriffen werden kann. Damit sichergestellt ist, dass immer neuste Software von den Ubuntu-Servern geladen wird, lädt der lokale Katalog hinzugekommene Änderungen nach. root@ubuntu:/# apt-get update Ign http://security.ubuntu.com saucy-security InRelease Ign http://extras.ubuntu.com saucy InRelease Get:1 http://security.ubuntu.com saucy-security Release.gpg [933 B] Get:2 http://extras.ubuntu.com saucy Release.gpg [72 B] Get:3 http://security.ubuntu.com saucy-security Release [49.6 kB] Hit http://extras.ubuntu.com saucy Release Hit http://extras.ubuntu.com saucy/main Sources Hit http://extras.ubuntu.com saucy/main amd64 Packages Ign http://us.archive.ubuntu.com saucy InRelease ... Reading package lists... Done

Welche Plugins sind bereits in der Distribution vorhanden ? Um diese Frage zu beantworten lässt man sich am zielführendsten mit Aptitude das gesuchte Paket anzeigen. Um zu überprüfen ob Aptitude bereits vorhanden ist, lässt sich mittels Autovervollständigung danach suchen.

28 http://wiki.ubuntuusers.de/Verzeichnisstruktur , Seitenabruf am 11.01.2014 Blockseminar - Software- und Servicescout Dozent: Jo Tzschenscher Seite 16 /32

GStreamer FH Schmalkalden - WS 2013/2014 Jan Hellmann, Gunnar Eggers root@ubuntu:/# apt apt-add-repository aptd apt-get apturl apt-cache aptdcon apt-key apturl-gtk apt-cdrom apt-extracttemplates apt-mark apt-config apt-ftparchive apt-sortpkgs

Da Aptitude nicht vorhanden ist erfolgt die Installation über das Terminal. root@ubuntu:/# apt-get install aptitude Reading package lists... Done Building dependency tree Reading state information... Done The following extra packages will be installed: aptitude-common libboost-iostreams1.53.0 libcwidget3 libept1.4.12 Suggested packages: aptitude-doc-en aptitude-doc tasksel debtags libcwidget-dev The following NEW packages will be installed: aptitude aptitude-common libboost-iostreams1.53.0 libcwidget3 libept1.4.12 0 upgraded, 5 newly installed, 0 to remove and 230 not upgraded. Need to get 2,647 kB of archives. After this operation, 10.6 MB of additional disk space will be used.

Aptitude ermöglicht auf komfortable Weise einzusehen welchen Status die Bestandteile eines Pakets haben. Sucht man mit Aptitude nach einem Programmpaket werden die einzelnen Unterpakete mit den Buchstaben „i“, „p“ und „v“. Der Buchstabe „i“ bedeutet installiert, „p“ steht für nicht installiert und „v“ kennzeichnet ein virtuelles Paket, dessen Inhalt bereits durch ein bereits installiertes Paket zur Verfügung gestellt wird. Ein weiterer Vorteil ist in der inkludierten Beschreibung der Pakete zu sehen. root@ubuntu:/# aptitude search gstreamer i bluez-gstreamer - Bluetooth GStreamer support p bluez-gstreamer:i386 - Bluetooth GStreamer support p deejayd-gstreamer - Deejayd GStreamer backend p fso-deviced-player-gstreamer - Gstreamer player module for fso-deviced p fso-deviced-player-gstreamer:i386 - Gstreamer player module for fso-deviced p gir1.2-gstreamer-0.10 - Description: GObject introspection data for the v gstreamer0.10-plugins-farsight -

Blockseminar - Software- und Servicescout Dozent: Jo Tzschenscher Seite 17 /32

GStreamer FH Schmalkalden - WS 2013/2014 Jan Hellmann, Gunnar Eggers v gstreamer0.10-plugins-farsight:i386 - i gstreamer0.10-plugins-good - GStreamer plugins from the "good" set p gstreamer0.10-plugins-good:i386 - GStreamer plugins from the "good" set p gstreamer0.10-plugins-good-dbg - GStreamer plugins from the "good" set p gstreamer0.10-plugins-good-dbg:i3 - GStreamer plugins from the "good" set p gstreamer0.10-plugins-good-doc - GStreamer documentation for plugins from the "good"

Als alternative Suchmöglichkeit lässt sich apt-cache search verwenden um das Repository zu durchsuchen. Allerdings mit der Einschränkung nur die zugehörigen Pakete sehen zu können, jedoch ohne Hinweis ob diese bereits vorhanden sind. gunnar@ubuntu:~$ apt-cache search gstreamer bluez-gstreamer - Bluetooth GStreamer support brasero - CD/DVD burning application for GNOME gir1.2-clutter-gst-2.0 - Gobject introspection data for Clutter GStreamer elements gir1.2-gst-plugins-base-0.10 - Description: GObject introspection data for the GStreamer Plugins Base library gir1.2-gst-plugins-base-1.0 - Description: GObject introspection data for the GStreamer Plugins Base library gir1.2-gstreamer-0.10 - Description: GObject introspection data for the GStreamer library gir1.2-gstreamer-1.0 - Description: GObject introspection data for the GStreamer library gnome-video-effects - GNOME Video Effects gnome-video-effects-dev - Development files for gnome-video-effects gstreamer-tools - Tools for use with GStreamer

Um die Funktionalität von GStreamer nutzen zu können müssen verschiedene Plugin- Pakete installiert werden. Das Framework greift hierzu auf die Pakete „Good“, „Bad“ und „Ugly“ zu, die jeweils eigene Codec-Sammlungen beinhalten. Je nach Linux- Distribution können unterschiedliche Pakete vorinstalliert sein. In Ubuntu 13.10 ist das „Good“-Paket bereits enthalten. root@ubuntu:/# apt-get install gstreamer0.10-plugins-good Reading package lists... Done Building dependency tree Reading state information... Done gstreamer0.10-plugins-good is already the newest version. 0 upgraded, 0 newly installed, 0 to remove and 230 not upgraded.

Blockseminar - Software- und Servicescout Dozent: Jo Tzschenscher Seite 18 /32

GStreamer FH Schmalkalden - WS 2013/2014 Jan Hellmann, Gunnar Eggers

Die Pakete „Ugly“ und „Bad“ müssen zusätzlich installiert werden. Als veranschaulichendes Beispiel soll die Installation von „Ugly“ dienen. root@ubuntu:/# apt-get install gstreamer0.10-plugins-ugly Reading package lists... Done Building dependency tree Reading state information... Done The following extra packages will be installed: liba52-0.7.4 libdvdnav4 libdvdread4 libmad0 libmp3lame0 libmpeg2-4 libopencore-amrnb0 libopencore-amrwb0 libsidplay1 libtwolame0 libx264-123 Suggested packages: libdvdcss2 debhelper fakeroot build-essential sidplay-base xsidplay The following NEW packages will be installed: gstreamer0.10-plugins-ugly liba52-0.7.4 libdvdnav4 libdvdread4 libmad0 libmp3lame0 libmpeg2-4 libopencore-amrnb0 libopencore-amrwb0 libsidplay1 libtwolame0 libx264-123 0 upgraded, 12 newly installed, 0 to remove and 230 not upgraded. Need to get 1,508 kB of archives. After this operation, 4,363 kB of additional disk space will be used.

Nun sind die wichtigsten Plugins installiert und GStreamer lässt sich über das Terminal ansprechen. Damit das Framework jedoch starten kann müssen die „gstreamer-tools“ installiert werden. root@ubuntu:/# apt-get install gstreamer-tools Reading package lists... Done Building dependency tree Reading state information... Done The following NEW packages will be installed: gstreamer-tools 0 upgraded, 1 newly installed, 0 to remove and 230 not upgraded. Need to get 8,068 B of archives. After this operation, 742 kB of additional disk space will be used.

Blockseminar - Software- und Servicescout Dozent: Jo Tzschenscher Seite 19 /32

GStreamer FH Schmalkalden - WS 2013/2014 Jan Hellmann, Gunnar Eggers

Für die Wiedergabe von Filmmaterial wird zusätzlich das Plugin „ffmpeg“ mit den enthaltenen Codecs benötigt. root@ubuntu:/# apt-get install gstreamer0.10-ffmpeg Reading package lists... Done Building dependency tree Reading state information... Done The following extra packages will be installed: libavcodec53 libavformat53 libavutil51 libgsm1 libpostproc52 libschroedinger-1.0-0 libswscale2 libva1 The following NEW packages will be installed: gstreamer0.10-ffmpeg libavcodec53 libavformat53 libavutil51 libgsm1 libpostproc52 libschroedinger-1.0-0 libswscale2 libva1 0 upgraded, 9 newly installed, 0 to remove and 230 not upgraded. Need to get 3,451 kB of archives. After this operation, 10.1 MB of additional disk space will be used.

Eine Auflistung der installierten Codecs lässt sich mit „gst-inspect“ aufrufen. root@ubuntu:/# gst-inspect ... ogg: oggdemux: Ogg demuxer ogg: oggmux: Ogg muxer jpeg: jpegenc: JPEG image encoder jpeg: jpegdec: JPEG image decoder jpeg: smokeenc: Smoke video encoder jpeg: smokedec: Smoke video decoder : matroskademux: Matroska demuxer matroska: matroskaparse: Matroska parser matroska: matroskamux: Matroska muxer matroska: webmmux: WebM muxer mpeg2dec: mpeg2dec: mpeg1 and mpeg2 video decoder mpegaudioparse: xingmux: MP3 Xing muxer mpegaudioparse: mp3parse: MPEG1 Audio Parser jack: jackaudiosrc: Audio Source (Jack) jack: jackaudiosink: Audio Sink (Jack) ffmpeg: ffenc_asv1: FFmpeg ASUS V1 encoder ffmpeg: ffenc_asv2: FFmpeg ASUS V2 encoder ... Total count: 136 plugins, 944 features Blockseminar - Software- und Servicescout Dozent: Jo Tzschenscher Seite 20 /32

GStreamer FH Schmalkalden - WS 2013/2014 Jan Hellmann, Gunnar Eggers

5. Robustheit

29Die Frage nach Stabilität des Frameworks lässt sich nicht bis in die letzte Verästelung zufriedenstellend beantworten. GStreamer ist in der stable version 1.2.2 als Download erhältlich, dies dient lediglich als Indikator und ist eine Einschätzung der Entwickler. Repräsentative Stimmen im Netz ließen sich zu einer detaillierten Einschätzung nicht genügend finden. Allerdings ist auffällig, dass es wenige sehr kritische Stimmen im Netz zu geben scheint.

6. Accessibility

Die Einschätzung der Barrierefreiheit richtet sich nicht zuletzt nach dem angedachten Einsatzzweck. GStreamer ist ein Framework und stellt damit den Unterbau vieler Applikationen dar. Die eigentliche Bedienung über das Terminal ist allerdings alles andere als Endanwender-freundlich.

Bedenkt man allerdings, dass dieses Framework zum Beispiel in der Linux-Distribution Ubuntu bereits enthalten ist und unter anderem in der Musik-Abspiel-Software „Jukebox“ Anwendung findet, bekommt der Endanwender defacto vom Unterbau nichts mit.

7. Verbreitung und Wahrnehmung im Markt

Aufgrund der Offenheit, sowie der Vielzahl an Anwendungsmöglichkeiten wird das Multimedia-Framework GStreamer von einigen Nutzern vorrangig verwendet. Auch die Plattformunabhängigkeit spielt bei der Verbreitung von GStreamer eine entscheidende Rolle, denn GStreamer wurde zu Beginn zwar nur für Linux entwickelt, kann aber auch unter Windows und OSX, sowie neuerdings auch auf Andoid und iOS installiert werden. 30Weiterhin unterliegt GStreamer der LGPL Lizenz und somit kann der

29 http://www.plugins.de/4619/framework-gstreamer-bekommt-neue-plugins-und-features/, Seitenabruf am 11.01.2014 30Vgl.: Artigas, X., Legal information, http://docs.gstreamer.com/display/GstSDK/Legal+information, veröffentlicht am 11.06.2012, Seitenabruf am 29.12.2013 Blockseminar - Software- und Servicescout Dozent: Jo Tzschenscher Seite 21 /32

GStreamer FH Schmalkalden - WS 2013/2014 Jan Hellmann, Gunnar Eggers

Programmcode durch den Nutzer beliebig verändert, sowie weiterverbreitet werden. Dadurch sind schon etliche Anwendungen entstanden, welche im Internet zum Download bereitstehen. Außerdem können die unterschiedlichsten Anwendungen durch den Nutzer selbst programmiert und weiterverteilt werden, was die Verbreitung und Bekanntheit von GStreamer noch weiter steigern kann.

8. Geschäftsideen und -modelle, die auf dem Tool aufbauen und Added Value gegen Aufpreis

Einige der wichtigsten Anwendungen, welche auf GStreamer laufen sind folgende: Ø 31Banshee; Songbird; Empathy; Totem; Trans mageddon; Fumotion; Long match; Rygel; Juicer; Buzztard; Moovida; Fluendo DVD Player Weitere Anwendungen finden sich auf der Webseite www.gstreamer.freedesktop.org/apps/. 32Der Fluendo DVD Player wurde von der Firma Fluendo entwickelt und kann vom Endverbraucher gegen einen Aufpreis von 15€ käuflich erworben werden und stellt somit Added Value gegen einen Aufpreis dar.

9. Abgrenzung gegen ähnliche Produkte oder Services

33Die Software GStreamer grenzt sich vor allem durch seine vielen Anwendungsmöglichkeiten von anderen Produkten ab, denn mit GStreamer können Multimedia-Inhalte sowohl von einem lokalen Gerät, als auch über das Internet abgerufen werden. Natürlich können auch die meisten Formate wie beispielsweise MP3, MPEG2, MPEG4AVC/H.264, VP8, AAC, ACC + und Dolby Digital decodiert werden. Diese beiden Beispiele zeigen nur einen Teil der Funktionalität von GStreamer, denn dank der LGLP Lizenzierung können die Nutzer ihre eigenen Anwendungen programmieren und sogar weiterverbreiten, was nicht bei allen Multimedia-Frameworks

31 Vgl.: Fluendo, http://eu.fluendo.com/gstreamer/, Seitenabruf am 29.12.2013 32 Vgl.: Fluendo Shop, http://eu.fluendo.com/shop/category/end-user-products/, Seitenabruf am 29.12.2013 33 Vgl.: http://gstreamer.com, Seitenabruf am 03.01.2014 Blockseminar - Software- und Servicescout Dozent: Jo Tzschenscher Seite 22 /32

GStreamer FH Schmalkalden - WS 2013/2014 Jan Hellmann, Gunnar Eggers möglich ist. Für normale Nutzer stehen im Internet bereits zahlreiche fertig programmierte Anwendungen zum Download bereit.

10. Dokumentation

Die Dokumentation für das Programm Gstreamer in englischer Sprache ist sehr gut, denn man findet sowohl auf den Seiten von 34Gstreamer aber auch auf der Seite von 35Fluendo mehrere ausführlich beschriebene Dokumentationen. Eine grundlegende Dokumentation auf Deutsch gibt es im 36Wiki bei ubuntuusers.

11. Support im Fehlerfall, Bugfixing, Community oder Forum für Problemdiskussionen

Bei Problemen mit dem Programm GStreamer gibt es verschiedene Möglichkeiten, diese zu melden beziehungsweise eine Lösung für das Problem zu finden. Einerseits können die Benutzer direkt über das 37Kontaktformular eine Nachricht verfassen und diese an GStreamer versenden. Andererseits besteht die Möglichkeit sich auf der Webseite von GStreamer zu registrieren und seinen 38Bug zu melden. Außerdem wurden auf der GStreamer Webseite 39Listen mit bereits bekannten Bugs veröffentlicht, welche eingesehen werden können. Manchmal kann auch ein Update auf die nächste Version helfen, bestehende Probleme zu lösen. Deshalb werden auf der 40Newsseite von GStreamer Beiträge zu Verbesserungen und gefixten Bugs, sowie neu erschienen Versionen von Gstreamer gepostet. Auch im 41Wiki von ubuntuusers können die Nutzer von GStreamer nach Problemlösungen suchen.

34 Vgl.: http://gstreamer.freedesktop.org/documentation/ und www.docs.gstreamer.com/display/GstSDK/Home, Seitenabruf am 03.01.2014 35 Vgl.: http://eu.fluendo.com/doc/, Seitenabruf am 03.01.2014 36 Vgl.: http://wiki.ubuntuusers.de/GStreamer, Seitenabruf am 03.01.2014 37 Vgl.: http://www.gstreamer.com/contact.html, Seitenabruf am 04.01.2014 38 Vgl.: https://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer, Seitenabruf am 04.01.2014 39 Vgl.: http://gstreamer.freedesktop.org/bugs/, Seitenabruf am 04.01.2014 40 Vgl.: http://gstreamer.freedesktop.org/news/, Seitenabruf am 04.01.2014 41 Vgl.: http://ubuntuusers.de/search/?query=gstreamer&area=wiki, Seitenabruf am 04.01.2014 Blockseminar - Software- und Servicescout Dozent: Jo Tzschenscher Seite 23 /32

GStreamer FH Schmalkalden - WS 2013/2014 Jan Hellmann, Gunnar Eggers

12. Professionalität

Prominente Beispiele für den Einsatz von GStreamer als Framework ließen sich nicht finden. Aber die Tatsache, dass es während des Testzeitraums stabil lief, in einer stable version zu downloaden und bereits teilweise Bestandteil der Linux-Distribution Ubuntu ist, lässt darauf schließen, dass ein Einsatz in professionellem Umfeld vorstellbar ist. Auch aufgrund der vielen enthaltenen Codecs dürfte das Framework für viele Einsatzzwecke interessant sein.

13. Möglichkeiten der Individualisierung/Customisation, der Programmierbarkeit und der Erweiterung/Enhancement

Aufgrund der modularen Konzeption des Frameworks lassen sich benötigte Codecs nachinstallieren. Ein Zwang alle Codecs vollständig zu installieren besteht nicht, sollte zum Beispiel mangelnder Festplattenspeicher ein Problem sein, müssten nur die notwendigen Plugins installiert werden. Falls später eine Datei ein spezielles Codec benötigt wird es einfach nachinstalliert.

14. Unterstützte Hardware und Betriebssysteme

42GStreamer kann auf folgenden Plattformen installiert und verwendet werden: Ø Linux: Ubuntu 12.04 (Precise Pangolin); Ubuntu 12.10 (Quantal Quetzal); Debian 6.0 (Squeeze); Debian 7.0 (Wheezy); Fedora 16; Fedora 17 Ø Mac OSX: 10.6 (Snow Leopard); 10.7 (Lion); 10.8 (Mountain Lion) Ø Windows: Windows XP; ; Windows 7; Windows 8 Ø Android: 2.3.1 Gingerbread oder höher Ø iOS: iOS 6 oder höher

42 Vgl.: http://docs.gstreamer.com/display/GstSDK/Installing+the+SDK, Seitenabruf am 04.01.2014 Blockseminar - Software- und Servicescout Dozent: Jo Tzschenscher Seite 24 /32

GStreamer FH Schmalkalden - WS 2013/2014 Jan Hellmann, Gunnar Eggers

15. Tutorials, Lernsoftware, instruktive und intuitive Beispiele

Es werden von Gstreamer direkt mehrere Tutorials mit Programmiercode auf der Webseite www.docs.gstreamer.com/display/GstSDK/Tutorials für die Benutzer der Software angeboten. Diese Tutorials sind in vier Unterkategorien mit den Bezeichnungen Basic tutorials, Playback tutorials, Android tutorials und iOS tutorials eingeteilt. Alle diese Tutorials sind in Englisch verfasst, aber auf der Webseite von unbuntuusers gibt es eine 43Installationsanweisung mit kleinen Beispielen zur Nutzung und Konfiguration von Gstreamer. Weiterhin findet man im 44Wiki von unbuntuusers zahlreiche Beiträge von Nutzern, welche auch weiterhelfen können. Auch auf Internet- Videoportalen, wie Youtube findet man Tutorials, welche die Funktionsweise von Gstreamer näher erläutern.

16. Finanzierung des Projekts

45Das Projekt GStreamer wurde von zwei Open-Source-Softwareanbietern ins Leben gerufen, welche auf der Webseite www.gstreamer.com die Software anbieten. Die beiden Unternehmen Fluendo und Collabora gründeten die Initiative zur Förderung der kommerziellen Adaption vom GStreamer-Framework. An dem Multimedia-Framework Projekt können sich auch andere Unternehmen beteiligen.

17. Lizenzbedingungen

Bei den Lizenzbedingungen von Software spielt vor allem das Land in dem die Software genutzt wird und die dort vorherrschenden Gesetze eine entscheidende Rolle.

43 Vgl.: http://wiki.ubuntuusers.de/GStreamer, Seitenabruf am 05.01.2014 44 Vgl.: http://ubuntuusers.de/search/?query=gstreamer&area=wiki, Seitenabruf am 05.01.2014 45 Vgl.: Heise Online, o. V., Collabora und Fluendo gründen GStreamer-Multimedia-Initiative, http://www.heise.de/developer/meldung/Collabora-und-Fluendo-gruenden-GStreamer-Multimedia- Initiative-1617271.html, veröffentlicht am 13.06.2012, Seitenabruf am 05.01.2014 Blockseminar - Software- und Servicescout Dozent: Jo Tzschenscher Seite 25 /32

GStreamer FH Schmalkalden - WS 2013/2014 Jan Hellmann, Gunnar Eggers

46Im Grunde ist die Software GStreamer ein freies Multimedia-Framework, welches unter der LGPL lizenziert ist. Es kann also wie auch bei anderen Open-Source- Programmen der Quellcode durch die Nutzer verändert und an ihre Bedürfnisse angepasst werden. Weiterhin können die Benutzer das Programm auch an andere Interessierte weiterverteilen. Es handelt sich dabei um eine schwache Copyleft-Lizenz.

18. Ausführliche Darstellung eines Show-Case

So lässt sich ein lokal gespeichertes Video-File über das Terminal abspielen. root@ubuntu:/# gst-launch-0.10 playbin uri=file:///usr/share/example- content/Ubuntu_Free_Culture_Showcase/How\ fast.ogg Setting pipeline to PAUSED ... Pipeline is PREROLLING ... Pipeline is PREROLLED ... Setting pipeline to PLAYING ... New clock: GstPulseSinkClock ERROR: from element /GstPlayBin:playbin0/GstBin:vbin/GstAutoVideoSink:videosink/GstXvImageSink:videosink-actual-sink- xvimage: Output window was closed Additional debug info: xvimagesink.c(1326): gst_xvimagesink_handle_xevents (): /GstPlayBin:playbin0/GstBin:vbin/GstAutoVideoSink:videosink/GstXvImageSink:videosink-actual-sink- xvimage Execution ended after 7937043664 ns. Setting pipeline to PAUSED ... Setting pipeline to READY ... Setting pipeline to NULL ... Freeing pipeline ...

46Vgl.: Artigas, X., Legal information, http://docs.gstreamer.com/display/GstSDK/Legal+information, veröffentlicht am 11.06.2012, Seitenabruf am 05.01.2014 Blockseminar - Software- und Servicescout Dozent: Jo Tzschenscher Seite 26 /32

GStreamer FH Schmalkalden - WS 2013/2014 Jan Hellmann, Gunnar Eggers

Abbildung 3: abgespieltes Video

Musikfile rippen gst-launch -v filesrc location=.ogg ! decodebin2 location=music.ogg ! audioconvert ! lame name=enc mode=1 quality=2 vbr=0 bitrate=192 ! xingmux ! id3v2mux ! filesink location=test2.

19. Fazit

Wie lässt sich der Nutzen und der tatsächliche Mehrwert eines Tools bestimmen, das nicht vordergründig eine für den Nutzer sichtbare Funktion ausübt ? Die wohl kürzeste, als auch trivialste, Antwort könnte lauten: egal, Hauptsache es läuft.

Im Kern mag diese Aussage zwar einen gewissen Wahrheitsgehalt aufweisen, dennoch ist diese Proklamation zu kurz gefasst und simplifiziert die Zusammenhänge zu stark. In der Tat ist die Installation auf einem Mac mit wenigen Mausklicks erledigt, jedoch gerade dies zeigt wie stark sich die verschiedenen Plattformen unter Usability-Aspekten für den Endbenutzer unterscheiden.

Blockseminar - Software- und Servicescout Dozent: Jo Tzschenscher Seite 27 /32

GStreamer FH Schmalkalden - WS 2013/2014 Jan Hellmann, Gunnar Eggers

In Rahmen dieser Arbeit stellte sich heraus, dass GStreamer für Apples aktuelles Betriebssystem Maverick (10.9.1) nicht gerüstet, nicht funktionstüchtig als auch nicht dokumentiert ist. Allerdings bringt Apples OS bereits im Lieferumfang zahlreiche Codecs mit, so zum Beispiel diverse Quicktime-Codecs. Unter Linux hingegen hat der Endnutzer weitreichende Kontrolle, auch dokumentiert in weiten Teilen, darüber welche Komponenten des Frameworks er installieren möchte oder tatsächlich benötigt. Einerseits sehr löblich, wenn auch unverhältnismäßig kompliziert, aber bei der Komplexität der Installation dürften viele Interessenten abgeschreckt werden.

Es stellt sich auch die Frage nach dem Nutzen eines umfangreichen Codec-Frameworks unter Linux. Da Quasi-Standards wie Adobe-Produkte nicht unter Linux nativ lauffähig sind, ist der Einsatz des Frameworks für den professionellen oder auch kommerziellen Einsatzzweck begrenzt.

Es ist wie im Show Case beschrieben zwar möglich über das Terminal weitreichende Funktionen des Tools zu nutzen, jedoch geht der praktische Nutzen nahezu gegen Null. Um beispielsweise schnell eine MP3-Datei auszuprobieren könnte man das File lokal per Doppelklick öffnen oder per Remote darauf zugreifen, einen extrem langen String für das Terminal dürfte sich in der Praxis wohl kaum jemand merken. Erschwerend kommt hinzu, dass man als Benutzer den Codec des Files erraten muss. Selbst innerhalb der Quicktime-Familie existieren unterschiedliche Codecs, diese werden einzeln im Rahmen des Frameworks installiert und es muss explizit der richtige ausgewählt werden, ansonsten funktioniert es nicht. Eine unkomplizierte Lösung für den praktischen Einsatz könnte der VLC-Player sein, der schon viele gängige Codecs mitbringt und in der Praxis beinahe jedes Format abspielen dürfte.

Blockseminar - Software- und Servicescout Dozent: Jo Tzschenscher Seite 28 /32

Quellenverzeichnis FH Schmalkalden - WS 2013/2014 Jan Hellmann, Gunnar Eggers

Quellenverzeichnis

Artigas Artigas, X., Legal information, http://docs.gstreamer.com/display/GstSDK/Legal+information, veröffentlicht am 11.06.2012, Seitenabruf am 29.12.2013

Bayer, O., Eben nicht nur für Google Maps: freie Daten und Schnittstellen für Fahrplanauskünfte, http://www.oliver-bayer.de/eben-nicht-nur-fur-google-maps-freie- daten-und-schnittstellen-fur-fahrplanauskunfte/, veröffentlicht am 01.10.2013, Seitenabruf am 15.01.2014

Bohle, B., Offener Brief an das Projekt „openPlanB“, http://www.db- vertrieb.com/db_vertrieb/view/service/open_plan_b.shtml, veröffentlicht am 28.09.2012, Seitenabruf am 27.11.2013

Duden online, http://www.duden.de/rechtschreibung/Daten, Seitenabruf am 02.11.2013

Duden online, http://www.duden.de/rechtschreibung/offen, Seitenabruf am 02.11.2013

Fluendo Shop, http://eu.fluendo.com/shop/category/end-user-products/, Seitenabruf am 29.12.2013

Fluendo, http://eu.fluendo.com/gstreamer/, Seitenabruf am 29.12.2013

Heise Online, o. V., Google Maps Transit enthält nun Fahrplandaten von Berlin und Brandenburg, http://www.heise.de/newsticker/meldung/Google-Maps-Transit-enthaelt- nun-Fahrplandaten-von-Berlin-und-Brandenburg-1947626.html, veröffentlicht am 03.09.2012, Seitenabruf am 10.11.2013

Heise Online, o. V., Google und Deutsche Bahn kooperieren, http://www.heise.de/newsticker/meldung/Google-und-Deutsche-Bahn-kooperieren- 1709505.html, veröffentlicht am 03.09.2012, Seitenabruf am 10.11.2013

Blockseminar - Software- und Servicescout Dozent: Jo Tzschenscher Seite 29 /32

Quellenverzeichnis FH Schmalkalden - WS 2013/2014 Jan Hellmann, Gunnar Eggers

Heise Online, o. V., Collabora und Fluendo gründen GStreamer-Multimedia-Initiative, http://www.heise.de/developer/meldung/Collabora-und-Fluendo-gruenden-GStreamer- Multimedia-Initiative-1617271.html, veröffentlicht am 13.06.2012, Seitenabruf am 05.01.2014

Heise Online, Schulzki-Haddouti, Grosse Koalition bekennt sich zu Open Data, http://www.heise.de/newsticker/meldung/Grosse-Koalition-bekennt-sich-zu-Open-Data- 2056057.html, veröffentlicht am 28.11.2013, Seitenabruf am 15.01.2014 http://docs.gstreamer.com/display/GstSDK/Installing+on+Mac+OS+X, Seitenabruf am 11.01.2014 http://docs.gstreamer.com/display/GstSDK/Installing+the+SDK, Seitenabruf am 04.01.2014 http://en.wikipedia.org/wiki/FFmpeg, Seitenabruf am 11.01.2014 http://en.wikipedia.org/wiki/GStreamer, Seitenabruf am 11.01.2014 http://eu.fluendo.com/doc/, Seitenabruf am 03.01.2014 http://www.ffmpeg.org/, Seitenabruf am 11.01.2014 http://gstreamer.com, Seitenabruf am 03.01.2014 http://gstreamer.freedesktop.org/bugs/, Seitenabruf am 04.01.2014 http://gstreamer.freedesktop.org/documentation/ und www.docs.gstreamer.com/display/GstSDK/Home, Seitenabruf am 03.01.2014 http://gstreamer.freedesktop.org/download/ , Seitenabruf am 11.01.2014 http://gstreamer.freedesktop.org/news/, Seitenabruf am 04.01.2014

Blockseminar - Software- und Servicescout Dozent: Jo Tzschenscher Seite 30 /32

Quellenverzeichnis FH Schmalkalden - WS 2013/2014 Jan Hellmann, Gunnar Eggers http://de.globometer.com/flugzeug.php, Seitenabruf am 14.01.2014 http://ubuntuusers.de/search/?query=gstreamer&area=wiki, Seitenabruf am 04.01.2014 http://wiki.ubuntuusers.de/GStreamer, Seitenabruf am 03.01.2014 http://wiki.ubuntuusers.de/Verzeichnisstruktur , Seitenabruf am 11.01.2014 http://www.plugins.de/4619/framework-gstreamer-bekommt-neue-plugins-und- features/, Seitenabruf am 11.01.2014 http://www.gstreamer.com/contact.html, Seitenabruf am 04.01.2014 https://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer, Seitenabruf am 04.01.2014

Kleinz, T., Open Data Fahrpläne für jeden: Open Data vs. Deutsche Bahn, http://blog.zdf.de/hyperland/2012/09/fahrplaene-fuer-jeden-open-data-vs-deutsche- bahn/, veröffentlicht am 29.09.2012, Seitenabruf am 27.11.2013

Lucke, J./Geiger, P., Open Government Data Frei verfügbare Daten des öffentlichen Sektors, http://www.zu.de/deutsch/lehrstuehle/ticc/TICC-101203- OpenGovernmentData-V1.pdf, veröffentlicht am 03.12.2010, Seitenabruf am 02.11.2013

Matzat, L., Definitionen: OpenData, OpenGovernment, Gov2.0 und Co., http://datenjournalist.de/definitionen-opendata-opengovernment-gov2-0-und-co/, veröffentlicht am 13.08.2010, Seitenabruf am 02.11.2013

Newfleet, o. V., Meist genutztes Verkehrsmittel das Fahrrad, http://www.newfleet.de/news/artikel/lesen/2013/08/meist-genutztes-verkehrsmittel-das- fahrrad-52739/, veröffentlicht am 01.08.2013, Seitenabruf am 30.10.2013

Blockseminar - Software- und Servicescout Dozent: Jo Tzschenscher Seite 31 /32

Quellenverzeichnis FH Schmalkalden - WS 2013/2014 Jan Hellmann, Gunnar Eggers nextr Startseite, http://www.nextr.info, Seitenabruf am 23.11.2013 Screenshot der nextr Startseite, http://www.nextr.info, Seitenabruf am 23.11.2013

Vielmeier, J., NEXTR: Reise-App darf auf Daten der Deutschen Bahn zugreifen, http://netzwertig.com/2013/04/30/nextr-reise-app-darf-auf-daten-der-deutschen-bahn- zugreifen/, veröffentlicht am 30.04.2013, Seitenabruf am 23.11.2013

Walthinsen, E., GScrea..., um, GStreamer 0.0.9 released, https://mail.gnome.org/archives/gnome-devel-list/1999-November/msg00000.html, veröffentlicht am 31.10.1999, Seitenabruf am 11.12.2013

Wikipedia, o. V., GStreamer, http://en.wikipedia.org/wiki/GStreamer, Seitenabruf am 11.12.2013

Blockseminar - Software- und Servicescout Dozent: Jo Tzschenscher Seite 32 /32

FH Schmalkalden WS 2013/2014

Studiengang: Angewandte Medieninformatik

Blockseminar: Software- und Service-Scout

Dozent: Dipl.-Phys. Jo Tzschenscher

Tox

Mit Tox soll ein neuer Open-Source Instant Messenger in Peer-to-Peer-Funktionsweise entstehen, der das mittlerweile durch einen kommerziellen Softwarehersteller übernommene Produkt Skype ablösen könnte, nachdem unklar ist, wie "sicher" die Kommunikation via Skype vor Belauschungsversuchen durch Geheimdienste ist. Beschreiben Sie das neue Produkt, und wie es das Sicherheitsproblem lösen will.

Plone

Plone (https://plone.org) is among the top 2% of all open source projects worldwide, with 340 core developers and more than 300 solution providers in 57 countries. The project has been actively developed since 2001, is available in more than 40 languages, and hasthe best security track record of any major CMS.

Kirsten Leitsch ([email protected]) Thomas Lipfert ([email protected])

Tox FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert Inhaltsverzeichnis

Inhaltsverzeichnis ...... 2 Abbildungsverzeichnis ...... 3 Tabellenverzeichnis ...... 3 1. Tox ...... 4 1.1. Einleitung ...... 4 1.2. Tox - Instant Messenger ...... 5 1.3. Technische Basis ...... 6 1.3.1. Peer-to-Peer ...... 6 1.3.2. Kryptographie / NaCL ...... 7 1.4. Unterschied zu herkömmlichen Instant Messengern ...... 9 1.5. Einschätzung und Ausblick...... 10 2. Plone ...... 11 2.1. Einleitung (Marktlage CMS Systeme) ...... 11 2.2. Plone CMS ...... 12 2.3. Verbreitung und Wahrnehmung im Markt ...... 12 2.4. Voraussetzungen ...... 13 2.5. Kosten ...... 14 2.6. Barrierefreiheit ...... 15 2.7. Usability ...... 15 2.8. Interoperabilität ...... 16 2.9. Support ...... 16 2.10. Dokumentation ...... 17 2.11. Sicherheit ...... 17 2.12. Individualisierung und Erweiterungen ...... 18 2.13. Praxistest ...... 19 2.13.1. Serverhardware ...... 19 2.13.2. Serversoftware ...... 19 2.13.3. Erste Schritte im Webbrowser ...... 20 2.13.4. Konfiguration und Einstellungen ...... 20 2.13.5. Benutzer anlegen ...... 20 2.13.6. Design Einstellungen ...... 21

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 2 von 39 Tox FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert 2.13.7. Inhalte erstellen ...... 21 2.13.8. Darstellungsformen von Inhalten ...... 22 2.13.9. Weitere Inhaltstypen ...... 23 2.13.10. Portlets ...... 23 2.13.11. Installationen von Erweiterungen ...... 24 2.14. Abschlussbetrachtung...... 24 Anhang ...... 26 Quellenverzeichnis ...... 37

Abbildungsverzeichnis

Abbildung 1: Marktanteile verschiedener CMS Systeme ...... 26 Abbildung 2: Marktanteile und Verwendung verschiedener CMS Systeme; Stand 07.01.2014 ...... 26 Abbildung 3: Gemeldete Bugs bei Plone über das Ticketsystem ...... 27 Abbildung 4: Deutsches Online Handbuch zu Plone ...... 27 Abbildung 5: WYSIWYG-Editoren in Plone ...... 28 Abbildung 6: Erweiterungen für Plone auf plone.org ...... 29 Abbildung 7: Plone Startseite ...... 29 Abbildung 8: Admin- und Konfigurationsoberfläche von Plone ...... 30 Abbildung 9: Dialog zum Anlegen von Benutzern ...... 30 Abbildung 10: Design Einstellungen unter Plone ...... 31 Abbildung 11: Quellcode-Editor zur Bearbeitung von Designs ...... 31 Abbildung 12: Werkzeugleiste zur Contenterstellung...... 32 Abbildung 13: WYSIWYG-Editor und Formatierungsvorlagen ...... 32 Abbildung 14: Zeitlich gesteuerte Veröffentlichung einer Nachricht ...... 33 Abbildung 15: Statisches Portlet ...... 34 Abbildung 16: Eingebundes statisches Portlet ...... 35 Abbildung 17: Kommentarfunktion ...... 35 Abbildung 18: Darstellungsform "Album" für Inhalte ...... 36

Tabellenverzeichnis

Tabelle 1: Vergleich verschiedener Instant Messenger ...... 9

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 3 von 39 Tox FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert 1. Tox

1.1. Einleitung

Mit der Partei "Die Piraten" hat sich bereits im Jahr 2006 in Deutschland eine politische Strömung gebildet, die sich unter anderem für Datenschutz und Freiheitsrechte im Internet einsetzt. Wie sich bis heute herausstellt, ist dies nicht unbegründet geschehen, denn immer wieder stehen Unternehmen (meist aus den USA) weltweit genau wegen diesen Themen in der Kritik. Ihnen wird vorgeworfen, dass sie beispielsweise Datenkraken seien (Google) 1 2 3, Daten ihrer Nutzer in irgendeiner Form an Dritte weiterverkaufen (Facebook) 4 5 und viele Fragen bezüglich des Datenschutzes und der Datensicherheit offen lassen. Gerade der letzte Punkt betrifft sogar Unternehmen wie Sony 6 und Vodafone 7, wenn es um sensible Nutzerdaten wie Adressen und Bankverbindungen geht.

Erschwerend kommt zu diesen Entwicklungen die Rechtslage in den betroffenen Ländern und ebenfalls zwischen den betroffenen Ländern hinzu, da keine einheitliche Gesetzgebung zu Datenschutz und Datensicherheit existiert.

Aktuelle weltpolitische und wirtschaftliche Geschehnisse haben also zunehmend Einfluss auf den privaten Lebensbereich, wie es auch der momentane Datenschutz Skandal um die Abhörmaßnahmen der National Security Agency 8 und die Enthüllungen durch den Whistle Blower Edward Snowden 9 10 medienpräsent zeigen. Aus dieser Angst heraus, sensible Daten an Personen zu verlieren für die sie nicht bestimmt sind,

1 http://www.heise.de/ct/artikel/Des-Nutzers-neue-Kleider-1360303.html 2 http://www.heise.de/ct/artikel/Der-Datenkrake-290454.html 3 http://www.focus.de/finanzen/news/unternehmen/tid-30783/namen-profile-surf-verhalten-so-spioniert- die-daten-krake-google-ihre-nutzer-aus_aid_969099.html 4 http://www.welt.de/wall-street-journal/article109596525/Facebook-will-Zugang-zu-seinen-Daten- verkaufen.html 5 http://allfacebook.de/gastbeitrag/ueberraschung-facebook-verkauft-eure-daten-nicht-an-die- werbeindustrie 6 http://blog.de.playstation.com/2011/04/26/psnqriocity-service-update/ 7 http://www.vodafone.de/privat/hilfe-support/kundeninformation.html 8 http://de.wikinews.org/wiki/Abh%C3%B6rma%C3%9Fnahmen_der_NSA_sorgen_f%C3%BCr_ Irritationen_in_Deutschland_und_Europa 9 http://www.n24.de/n24/Nachrichten/Politik/d/4100786/eu-will-edward-snowden-anhoeren-und- kritisiert-usa.html 10 http://www.n24.de/n24/Nachrichten/Politik/d/4036600/ich-arbeite-noch-immer-fuer-die-nsa.html

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 4 von 39 Tox FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert und um für Staaten, Behörden und Institutionen nicht der sprichwörtliche "gläserne Bürger" zu werden, wird in der Netzwelt händeringend nach alternativer Kommunikationssoftware gesucht.

Mit dem Instant Messenger Tox wurde deshalb ein Projekt ins Leben gerufen um die Echtzeitkommunikation weiterhin schnell, aber vor allem sicherer und unabhängig von Unternehmen zu machen. Ob dieser Messenger eine alternative für gefestigte Produkte wie ICQ, MSN und Skype sein kann, soll nachfolgende Ausarbeitung zeigen. Es ergeben sich als Grundlage für die Bearbeitung zwei zentrale Fragen: Löst Tox das Sicherheitsproblem und wenn ja, wie soll dies geschehen?

1.2. Tox - Instant Messenger

Tox ist ein freier und kostenloser Instant Messenger, welcher sich derzeit noch in der Entwicklungsphase befindet. Das Tool soll unter den Betriebssystemen Linux, Mac OS X und Windows lauffähig sein. Das Ziel von Tox ist es, mit Hilfe modernster Verschlüsselungstechnik eine hohe Sicherheit zu garantieren, durch eine leicht bedienbare Oberfläche einen sehr guten Bedienkomfort bereitzustellen und ein hohes Maß an Freiheit in der Bedienung und Modifizierung zu ermöglichen.

Zu den Grundfunktionen von Tox zählen der Versand und Empfang von verschlüsselten Sofortnachrichten und Dateien, kostenlose und sichere Tox-zu-Tox Anrufe, sowie Videokonferenzen. Des Weiteren ermöglicht Tox Funktionen wie z.B. das Hinzufügen von Freunden, Freundesanfragen anzunehmen oder zu ignorieren, Statusänderungen von Freunden einzusehen oder auch selbst Statusmeldungen zu erstellen.

In den folgenden Abschnitten soll ein Überblick über die technische Basis von Tox, welche die Peer-to-Peer-Kommunikation und kryptographische Verfahren beinhaltet, sowie den Unterschied des Toxprotokolls zu herkömmlichen Instant Messengern geschaffen werden. 11

11 http://www.tox.im/

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 5 von 39 Tox FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert 1.3. Technische Basis

Im Umfeld von Tox müssen zunächst Begrifflichkeiten getrennt werden. Wenn von Tox die Rede ist, so ist im Allgemeinen nur der Teil gemeint, welcher die in den Punkten 1.3.1. und 1.3.2. beschriebenen Kernfunktionen beinhaltet. Wird Tox als Programm bezeichnet, so meint man einen lauffähigen Client, der die Tox-Kernkomponenten verwendet Bekannte Clients sind Toxic, Venom, und Qt-GUI, von denen letztere als Kandidaten für ein erstes offizielles Programm gehandelt werden. 12 Diese setzen nicht wie herkömmliche Instant Messenger auf eine zentrale Client-Server-Architektur, stattdessen kommunizieren die Nutzer in einem Peer-to-Peer Netzwerk miteinander. Diese Peer-to-Peer-Kommunikation, sowie das kryptographische Verfahren, welches das Sicherheitsproblem lösen soll, werden nachfolgend ausführlicher beschrieben. 13

1.3.1. Peer-to-Peer

Die Peer-to-Peer-Verbindung (P2P) wird auch als Rechner-Rechner-Verbindung oder als Kommunikation unter Gleichen bezeichnet und beschreibt ein Netzwerkmodell. In dieser Verbindung sind alle Computer gleichberechtigt. Sie können sowohl Dienste in Anspruch nehmen, als auch zur Verfügung stellen. Die Netzwerkteilnehmer werden in den P2P-Netzwerken jedoch häufig abhängig von ihrer Qualifikation in verschiedene Gruppen eingeteilt, die spezifische Aufgaben übernehmen.

Moderne Peer-to-Peer-Architekturen werden meist als Overlay-Netzwerk 14 im Internet realisiert und haben ein zweites internes Overlay-Netzwerk als Kernkomponente, welches normalerweise aus den besten Computern innerhalb des Netzwerkes besteht. Dieses Overlay-Netzwerk übernimmt die Organisation der anderen Computer und stellt eine Suchfunktion bereit. Hierbei wird zwischen strukturierten und unstrukturierten Overlays unterschieden. Im Falle eines strukturierten Overlays ist die Verantwortlichkeit für jedes einzelne Objekt mindestens einem Peer fest zugeteilt. Mit Hilfe der Lookup-Operation können im Netzwerk andere Peers identifiziert werden, die

12 http://wiki.tox.im/FAQ 13 http://www.golem.de/news/skype-alternative-freier-und-sicherer-videochat-mit-tox-1307- 100688.html 14 Rechnernetz, das auf bestehendes Netz aufsetzt; vgl. http://de.wikipedia.org/wiki/Overlay- Netzwerk

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 6 von 39 Tox FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert für eine bestimmte Objekterkennung zuständig sind. Unstrukturierte Overlays hingegen haben keine Zuordnungsstruktur. In diesem Fall können die Peers mittels einer Such- Operation nach Objekten suchen, die gewisse Kriterien erfüllen (z.B. Datei- oder Buddynamen-Übereinstimmung).

Sobald die Peers identifiziert wurden, die die gesuchten Objekte enthalten, wird diese Datei direkt von Peer zu Peer übertragen. 15

1.3.2. Kryptographie / NaCL

Unter dem Begriff der Kryptographie vereinen sich die Begriffe der Verschlüsselung, in der die Umwandlung einer lesbaren Information in einen Geheimtext stattfindet, sowie die Entschlüsselung, welche das Umwandeln eines Geheimtextes in einen klaren Text beinhaltet. Die Methode zum Ver- und Entschlüsseln von Informationen wird als Chiffre bezeichnet und enthält verschiedene Algorithmen und Schlüssel. Diese Schlüssel sind Parameter, die speziell zur Ver- oder Entschlüsselung gewählt werden und idealerweise nur den Kommunikationspartnern bekannt sind. 16

Die Entwickler von Tox möchten die Handhabung von kryptographischen Schlüsseln so in das Programm integrieren, dass sich die Anwender nicht mehr selbst um die Schlüsselverwaltung kümmern müssen. Aus diesem Grund setzen die Entwickler von Tox auf die von der EU geförderte, einfach benutzbare Hochgeschwindigkeitsbibliothek NaCl (ausgesprochen Salz). NaCl beinhaltet viele wichtige Operationen und Funktionen rund um das Erzeugen von Schlüsselpaaren und dem Signieren von Nachrichten in einer API (Application Programming Interface). Das Ziel von NaCl ist es, die Sicherheit, Bedienbarkeit und Schnelligkeit bereits bestehender kryptographischer Bibliotheken zu verbessern und alle Operationen bereit zu stellen, die gebraucht werden, um qualitativ hochwertige kryptographische Tools zu erstellen. 17 18 19

15 http://de.wikipedia.org/wiki/Peer-to-Peer 16 http://de.wikipedia.org/wiki/Kryptographie 17 http://www.heise.de/netze/meldung/Skype-Alternative-Tox-einfach-verschluesselt-dezentral- 1926996.html 18 http://www.pro-linux.de/news/1/20079/neuer-messenger-tox-will-skype-beerben.html 19 http://www.golem.de/news/skype-alternative-freier-und-sicherer-videochat-mit-tox-1307- 100688.html

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 7 von 39 Tox FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert Die derzeitige Version von NaCL unterstützt die Programmiersprachen C und C++. NaCl stellt bereits in vielen Fällen Rekordgeschwindigkeiten für kryptographische Operationen bereit. Um solche Geschwindigkeiten zu garantieren, kompiliert NaCl alle Implementierungen und benutzt Schnelligkeitsmessungen, um die schnellsten Implementierungen für den CPU (Hauptprozessor) des Nutzers auszuwählen. Durch diese automatische Anpassung wählen die neuen Central Processing Units ohne menschliches Eingreifen die beste verfügbare Option aus und neue Implementierungen können ohne großen Aufwand hinzugefügt werden.

Im Gegensatz zu typischen kryptographischen Bibliotheken, welche den Programmierer dazu zwingen die Wahl der kryptographischen Primitive zu spezifizieren, wird NaCl mit einer vorselektierten Auswahl eines hochmodernen Signatursystems bereitgestellt, welches sich für die Benutzung einer Vielfalt von Applikationen eignet. Anders gesagt wird dem Entwickler durch NaCl die Option zur Verfügung gestellt zu entscheiden, ob und mit welcher Signatur eine Nachricht versehen werden soll.

Normalerweise benötigt eine typische kryptographische Bibliothek mehrere Schritte um mit Hilfe der Verschlüsselungstechniken RSA und AES eine Nachricht zu authentifizieren und zu entschlüsseln. Für diese Aufgabe stellt NaCl jedoch eine sogenannte Krypto-Box-Funktion zur Verfügung, die alles in einem Schritt erledigt. Diese Funktion nimmt dazu den geheimen Schlüssel des Senders, den öffentlichen Schlüssel des Empfängers, eine Nachricht und erstellt eine authentifizierte Geheimnachricht.

NaCl vermeidet jeglichen Datenfluss von geheimen Informationen zu den Befehlszeigern (instruction pointer) und Verzweigungsindikatoren (branch predictor) der CPUs, sowie zu den Adressen, die in Ladebefehlen und Speicheranweisungen genutzt werden, da diese nicht darauf ausgelegt sind Informationen und Adressen geheim zu halten.

Die gesamte NaCl Software ist Open Source und besitzt keinerlei Copyright Einschränkungen. 20

20 http://nacl.cr.yp.to/

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 8 von 39 Tox FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert 1.4. Unterschied zu herkömmlichen Instant Messengern

Anhand der nachfolgenden Tabelle lässt sich erkennen, dass auch Tox im Vergleich zu den anderen Instant Messengern ICQ, MSN und Skype für gängige Betriebssysteme verfügbar ist. Des Weiteren kristallisiert sich heraus, dass Tox als einziges Tool auf eine Peer-to-Peer Netztechnologie aufbaut. Unter Betrachtung der Verschlüsselungs- techniken wird auf den ersten Blick deutlich, dass ICQ den anderen Instant Messengern in diesem Gebiet weit nachhängt. MSN und Skype weisen zwar ebenfalls mehrere bekannte Verschlüsselungstechnologien auf, durch die beschriebenen Probleme mit dem Datenschutz erweisen sie sich aber als unzureichend. Tox sticht durch den Einsatz der kryptographischen Bibliothek NaCl und dem Verzicht auf die Client-Server-Architektur positiv heraus.

Betriebssystem Netztechnologie Verschlüsselungstechniken Tox Linux, Mac OS X und Peer-to-Peer NaCL Windows ICQ Linux, Mac OS und Client-Server Bietet nur Scrambling, d.h. Windows Mittelsmann kann Inhalt der Kommunikation einsehen MSN Mac OS X, Windows Client-Server PGP (Pretty Good Privacy) XP/Vista/7/Mobile, SSL (Transport Layer Security) Windows Phone 7, Xbox SimpLite 360, Apple iOS, Android, OTR (Off-the-Record-Messaging) Skype Linux, Mac OS X, Client-Server (bei AES-256 (über RSA) Windows, Windows Authentifizierung und RC4 Phone, Pocket PC, Abrechnung) Symbian, PSP, Blackberry, Peer-to-Peer (z.B. Apple iOS, Android Telefonbuch) Tabelle 1: Vergleich verschiedener Instant Messenger 21 22 23

21 http://de.wikipedia.org/wiki/ICQ 22 http://de.wikipedia.org/wiki/Windows_Live_Messenger 23 http://de.wikipedia.org/wiki/Skype

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 9 von 39 Tox FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert 1.5. Einschätzung und Ausblick

Neben den geplanten Funktionalitäten des Tox Clienten wurden die Themen Peer-to- Peer und NaCL ausführlich beschrieben. Mit dem Vergleich zu Skype, MSN und ICQ wurden Vor- und Nachteile des Programms vor allem im Bezug auf dessen Sicherheit objektiv aufgezeigt. Es gilt nun, auf die zentrale Frage zurück zu kommen und diese zu beantworten.

Momentan stellt sich Tox tatsächlich als potentielle Ablöse von Skype und anderen Instant Messengern dar. Dies liegt darin begründet, dass der Nutzer zunächst keine Nachteile durch die Nutzung des Programms hat. Der Zugewinn an Sicherheit wiegt nach Meinung der Verfasser mögliche Schwächen in der Usability, Funktionalität oder anderen Bereichen auf, die sich momentan jedoch noch nicht abschätzen lassen. Die Fokussierung des Programms auf das Wichtigste, die Kommunikation zwischen den Kommunikationspartnern, sticht ebenfalls eher positiv als negativ hervor. Der Verzicht auf die herkömmliche Client-Server-Architektur zu Gunsten von modernster Verschlüsselungstechnik ist nach Ansicht der Verfasser ein Schritt in die richtige Richtung.

Als Open Source Programm kann es darüber hinaus kostenlos heruntergeladen und verwendet werden, sofern es denn fertig gestellt wird. Dies stellt nach Auffassung der Autoren einen Wermutstropfen dar, denn momentan ist nicht bekannt, wann die Software auf dem Markt erscheint. Es besteht die Gefahr, dass sich die mediale Aufmerksamkeit vom Thema Datensicherheit entfernt und Tox damit wirkungslos bleibt. Es kann nur dann ein erfolgreiches Projekt werden, wenn auch Menschen davon Gebrauch machen, die sich nicht sowieso mit dem Thema sichere Kommunikation im Internet beschäftigen.

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 10 von 39 Plone FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert 2. Plone

2.1. Einleitung (Marktlage CMS Systeme)

Als Content-Management-System wird im allgemeinen Sprachgebrauch eine Software bezeichnet, die die gemeinschaftliche Erstellung, Bearbeitung und Organisation von Inhalten auf Webseiten unterstützt. Dabei wird Wert darauf gelegt, dass möglichst wenig technische Vorkenntnisse durch den Nutzer vorhanden sein müssen. Da Webseiten und deren Funktionen immer komplexer und größer werden, eignet sich die Verwendung eines Content-Management-Systems, da diese es dem Anwender ermöglichen sich auf das Wesentliche, die Erstellung von Inhalten, zu konzentrieren. 24

Zu den momentan beliebtesten Systemen gehören Wordpress, Joomla und Drupal. Dies belegen neben zahlreichen Quellen auch nachfolgende Statistiken des bekannten Webblogs w3tech über Internettechnologien sowie eine Grafik aus dem Branchenmagazin t3n: 25 26 An diesen Zahlen wird deutlich, dass es sich bei Plone keineswegs um ein Massenprodukt für Einzelanwender handelt. Vielmehr ist es ein hoch spezialisiertes Produkt, dass sich an Unternehmen richtet. Daraus erklärt sich auch das Fehlen von Plone in den verwiesenen Grafiken. Joomla, Drupal und ähnliche CMS eignen sich in vielen Fällen eben nicht für die Einsatzgebiete, für welche Plone konzipiert wurde. 27 28 Nachfolgende Ausarbeitung soll hier Klarheit schaffen und Unterschiede deutlich herausarbeiten. Innerhalb des durchgeführten Praxistests erhält Plone die Möglichkeit sich als alternatives Produkt im CMS Markt zu präsentieren.

24 http://de.wikipedia.org/wiki/Content-Management-System 25 http://w3techs.com/technologies/overview/content_management/all 26 http://plone.org/foundation 27 http://plone.org/foundation/about/faq 28 http://de.wikipedia.org/wiki/Content-Management-System

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 11 von 39 Plone FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert 2.2. Plone CMS

Die in der Programmiersprache Python geschriebene Inhaltsverwaltungssoftware Plone erschien erstmals 2002 und wurde von den Entwicklern Alan Runyan, Alexander Limi und weiteren veröffentlicht. Heute wird das Open Source Projekt von der Plone Foundation geleitet, welche sich 2004 als non-profit Organisation gegründet und ihren Sitz in Fortville in den USA hat.

Mit weltweit 350 Kernentwicklern und 300 Dienstleistern in 70 Ländern kann bei Plone durchaus von einem professionellen Produkt gesprochen werden. Es überzeugt Anwender vor allem durch seine Flexibilität und verschiedene Sicherheitsaspekte. Zusammengefasst ist Plone dadurch ein gereiftes und ernst zunehmendes Produkt.

Momentan wird Plone in der Version 4.3.2 vom Dezember 2013 für alle gängigen Betriebssysteme ausgeliefert und fortlaufend weiterentwickelt.

Genau wie das Betriebssystem Linux wird auch Plone unter der GPL (GNU General Public License) distribuiert. Das bedeutet, dem Endnutzer wird die Freiheit garantiert, die Software frei verwenden und nach den eigenen Vorstellungen nutzen und verändern zu können. 29

2.3. Verbreitung und Wahrnehmung im Markt

Plone als Redaktions- und Content-Management-System kann aufgrund seiner Mehrsprachigkeit (übersetzt in 40 Sprachen) weltweit verwendet werden. Eine Anzahl an Installationen oder Webseiten, die Plone verwenden, kann jedoch nicht exakt angegeben werden. Die Zahl, im Verhältnis zu anderen CMS gesehen, muss als sehr gering eingeschätzt werden. Angesichts millionenfacher Installationen von Wordpress und anderen Content-Management-Lösungen erreicht Plone einen Marktanteil von ungefähr einem Prozent. Dies bestätigen Statistiken von w3tech 30 und der Webseite www.cmscrawler.com 31 , welche Internetseiten auf Installationen von Content- Management-Systemen untersuchen und diese Ergebnisse statistisch auswerten. Dabei

29 http://de.wikipedia.org/wiki/GPL 30 http://w3techs.com/technologies/details/cm-plone/all/all 31 http://www.cmscrawler.com/tool/Plone

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 12 von 39 Plone FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert werden lokale Installationen in Form eines Intranets nicht berücksichtigt. Weiterhin steht Plone aufgrund dessen, dass es für verschiedenste Anwendungsgebiete eingesetzt werden kann, im weiteren Wettbewerb mit Produkten wie Microsoft Sharepoint oder Alfresco, welche als Document Management Systeme mit weniger Webfunktionalität zu bezeichnen sind.

Dafür kann Plone in jeder Branche für die Erstellung von Webseiten für den internen und externen Gebrauch verwendet werden. Dabei spielt es keine Rolle ob der Nutzer eine Organisation, ein Unternehmen, eine Behörde oder ein privater Anwender ist.

2.4. Voraussetzungen

Neben Python als maßgebliche Programmiersprache handelt es sich bei der Softwarebasis für Plone um den Open Source Anwendungsserver „Zope“ mit dem dazu gehörigen Content-Management-Framework. Der Webanwendungs-Server trennt dabei Inhalt und Gestaltung bei der Erstellung von Webanwendungen. Zope bedeutet „Z- Object-Publishing-Environment“ und basiert ebenfalls auf Python. Es wurde objektorientiert konzipiert und ist seit 1998 Open Source. 32 33

Grundsätzlich kann Plone auf allen gängigen Betriebssystemen wie Linux, Windows, Mac OS und FreeBSD verwendet werden. Weiterhin arbeitet es mit verschiedenen Authentifizierungsverfahren zusammen, sodass es sich auch in bestehende IT- Umgebungen einbinden lässt. 34

Eine wichtige Frage ist weiterhin die Skalierbarkeit von Softwaresystemen. Komplexe Webseiten und Webseiten mit häufigen Zugriffen können unter der hohen Last zusammenbrechen. An dieser Stelle können Proxyserver wie Squid und Varnish, welche von Plone unterstützt werden, auch unter Last einen Geschwindigkeitsschub geben. Durch die Clustering-Funktionalität von Plone kann das CMS auf mehrere Server bzw. Instanzen verteilt werden, sodass auch in Hochlastzeiten ausreichend Ressourcen und Performance für die Nutzer zur Verfügung stehen. 35

32 http://plone.org/foundation 33 http://plone.org/foundation/about/faq 34 http://plone.org/products 35 http://www.evenios.com/plone-marketing/zwanzig-fragen-zu-plone

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 13 von 39 Plone FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert 2.5. Kosten

Auf die Frage welche Kosten dem Nutzer entstehen, sollte dieser sich für Plone entscheiden, lässt sich auf der offiziellen Webseite plone.org die Antwort finden, dass Plone aufgrund seines Open Source Charakters kostenlos zum Herunterladen angeboten wird. Dies stellt einen Vorteil gegenüber kommerziellen Lizenz-Lösungen wie Sharepoint dar, ist aber im Hinblick auf konkurrierende CMS als Standard zu bezeichnen. Hinzu kommen Kostenpositionen für die Serverhardware und deren Bereitstellung bzw. Wartung. An dieser Stelle sei kritisch erwähnt, dass sich das Finden eines bekannten Hosters in Deutschland, wie beispielsweise 1und1 oder Strato, für Plone und Zope, schwieriger gestaltet. Das liegt vermutlich unter anderem daran, dass Hoster technische Probleme damit haben, auf ein und dem selben Server gleichzeitig Instanzen von Zope und Apache betreiben zu können. Hier liegt eindeutig ein Nachteil gegenüber den meist verbreitetsten Content-Management-Systemen vor. Für eine Installation dieser Softwareprodukte ist in der Regel ein Server ausreichend, der die Programmiersprache PHP und MySQL Datenbanken unterstützt.

In einem konkreten Zahlenbeispiel bei 1und1 bedeutet das für den Anwender folgende finanzielle Entscheidung: Wird ein Standard Hosting Paket von 1und1 mit einer Domain bestellt, kostet dies 1,99 € pro Monat und der Anwender ist in der Lage alle gängigen CMS zu verwenden. Entscheidet sich dieser aber für Plone, so muss in der günstigsten Variante ein Virtueller Server mit Linux bestellt werden, welcher mit mindestens 9,99 € pro Monat berechnet wird. Für einen eigenen physischen Server im Rechenzentrum müssen dann insgesamt 39,99 € im Monat aufgebracht werden. Bei dieser Entscheidung ist nochmals anzumerken, dass dies für Anwendungen im Internet gilt. Bei Projekten für den internen Gebrauch (Intranet) oder solchen, bei denen mit sensiblen Daten gearbeitet wird, ist von der Verwendung von Wordpress, Joomla und Drupal abzuraten. Dies wird im Abschnitt Sicherheit nochmal thematisiert. 36 37

Abschließend sei aber auf die ungefähr 300 Consulting-Firmen verwiesen, die sich mit der professionellen Unterstützung von Plone-Projekten beschäftigen. Auf dem Plone

36 http://hosting.1und1.de/linux-hosting?linkOrigin=webhosting&linkId=ct-txt-navi-package 37 http://hosting.1und1.de/server?linkId=hd.mainnav.server

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 14 von 39 Plone FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert Portal lassen sich allein 50 Service-Provider für den Bereich Deutschland finden, von denen aber auch viele zu dessen Entwicklergemeinde gehören.38

2.6. Barrierefreiheit

Bei der Barrierefreiheit legt Plone großen Wert auf die Erfüllung internationaler Standards. So ist Barrierefreiheit nach dem Standard 508 in den USA sowie der W3C und WAI-AA-Standards gewährleistet. Weiterhin erfüllt es die Webstandards für XHTML und CSS. Darüber hinaus erfüllt Plone auch die Voraussetzungen für Barrierefreiheit in Europa und ist deshalb bei Organisationen gefragt, die gesetzlich zu diesen Standards verpflichtet sind. 39 40

2.7. Usability

Bei der Usability fällt positiv auf, dass Plone von jedem Endgerät aus, das über einen modernen Webbrowser verfügt, bedient werden kann. Dadurch kann jederzeit die Funktionalität genutzt und somit der Inhalt der Webanwendung verändert werden. Durch die Verwendung von vertrauten Elementen wie einem WYSIWYG („What you see is what you get“)-Editor, welcher bei der Erstellung von Texten verwendet wird und in seinem Layout einem Textverarbeitungswerkzeug ähnelt, ist nur wenig Einarbeitungs- und Orientierungszeit notwendig. 41

Die Bearbeitung von Seiten und Inhalten ist direkt auf den betreffenden Seiten möglich, sofern man sich vorher als Benutzer mit ausreichend ausgestatteten Rechten im System angemeldet hat. Dies ist dahingehend ein Vorteil, dass man beispielsweise Fehler im Ausdruck auf kürzestem Weg beseitigen kann.

38 http://plone.org/support/providers 39 http://www.plone.de/accessibility-info 40 http://www.hasecke.com/plone-white-paper/usability/barrierefreiheit 41 http://www.evenios.com/plone-marketing/zwanzig-fragen-zu-plone

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 15 von 39 Plone FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert 2.8. Interoperabilität

Plone verfügt über eine eigene API, einer Schnittstelle zur Programmierung von Anwendungen, die mit einer Plone-Installation Informationen austauschen soll. Dazu bietet die offizielle Webseite von Plone eine umfangreiche und vollständige Dokumentation mit Codeschnipseln und Lernbeiträgen. Weiterhin kann Plone über Add-Ons mit beispielsweise SAP und Oracle-Produkten zusammenarbeiten und obwohl das CMS und Zope, sowie dessen Zope-Object-Database gemeinsam ausgeliefert werden, ist es sogar möglich Plone mit anderen Datenbanken zu betreiben. Dies vermeidet einen Medienbruch und bestehende Werkzeuge können weiterhin genutzt werden. 42

2.9. Support

Das Anbieten verschiedener Kommunikationskanäle ist für Entwickler eine gute Möglichkeit von Fehlern in ihrer Software zu erfahren. Wenn sie dazu, wie im Fall von Plone, noch ungefähr 100 aktive Entwickler haben, die diese Fehler dann auch beseitigen, kann man von einem lebhaften und auch sicherheitsorientierten Projekt sprechen. Plone bietet deshalb zu verschiedenen Themen ein Ticket System (vgl. Abbildung 3: Gemeldete Bugs bei Plone über das Ticketsystem), um Fehler melden zu können wie beispielsweise Lokalisierung, Sicherheit, Funktionalität und Drittanwendungen.

Support gibt es bei diesem CMS auf insgesamt vier Ebenen:

• Kommerzielle Hilfe über die Serviceprovider in den jeweiligen Ländern • Listen lokaler Benutzergruppen • Training, Tutorials und Handbücher • und das bereits angesprochene Ticketsystem 43

Für Deutsch und Englisch gibt es weiterhin einen Internet Relay Chat (IRC), Hilfe Foren und Communities, sowie zwei deutschsprachige Mailinglisten. Auf dem

42 http://developer.plone.org/reference_manuals/external/plone.api/ 43 http://plone.org/support

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 16 von 39 Plone FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert Videoportal YouTube finden sich zudem einige interessante Videos zu Plone, welche teilweise in deutscher Sprache verfügbar sind und über aktuelle Neuerungen und Techniken informieren. 44

2.10. Dokumentation

Das vorliegende, mit der Installation von Plone ausgelieferte und auf der offiziellen Webseite verfügbare, Benutzerhandbuch behandelt die wichtigsten Themen, die mit dem Betrieb einer Plone Webseite zusammen hängen (vgl. Abbildung 4: Deutsches Online Handbuch zu Plone). Diese sind vor allem die Installation von Plone und Add- Ons, Tipps zur Benutzung, zahlreiche Artikel zur Entwicklung von Themes und Add- Ons sowie ein FAQ, eine sehr umfangreiche Wissensbasis und ein Glossar. Insgesamt ist die Dokumentation damit sehr umfassend und weitreichend. Es muss aber kritisch angemerkt werden, dass die verschiedenen Artikel im Handbuch zum Teil noch nicht für die aktuelle Version 4.3.2 überprüft worden sind. Positiv sticht die Übersetzung des Benutzerhandbuches auch in deutsch hervor. 45

2.11. Sicherheit

Dieser Abschnitt widmet sich einem der wichtigsten Vertriebsargumente, die Plone zu bieten hat. Nachdem in den vorangegangenen Abschnitten häufiger kritische Anmerkungen zu Wettbewerbsnachteilen gemacht wurden, kann das CMS hier seine Stärke ausspielen. Grundsätzlich ist zu sagen, dass das Python-basierte System aus Anwendungsserver und CMS weniger anfällig gegen bösartige Angriffe ist, als vergleichbare Lösungen die auf PHP und MySQL basieren.

Dies bestätigt auch eine Untersuchung des Bundesamtes für Sicherheit in der Informationstechnik zur Sicherheit von Content-Management-Systemen aus dem Jahr 2013. Das Abschneiden von Plone ist hier überdurchschnittlich. Dadurch wird es zu

44 http://www.plone.de/nachrichten/support-gesucht-plone-zope-forum 45 http://www.plone.de/dokumentation

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 17 von 39 Plone FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert einem ernsthaften Kandidaten für Unternehmen, die mit sensiblen Daten arbeiten und diese auf einer geeigneten Plattform teilen müssen.46

Die meisten Sicherheitslücken, die Angreifer nutzen, begründen sich auf unvalidierte Formulardaten, Cross Site Scripting, vorsätzliches Ausnutzen von Benutzerrechten, SQL Injections und DenialofService, um nur einige zu nennen. Zu jedem dieser Punkte hat Plone eigene Lösungsansätze gefunden oder kann die Bedrohungen direkt umgehen. Beispielsweise entfallen SQL Injections, da Plone in der Standard Version nicht mit der Structured Query Language arbeitet. Im Falle des Vermeidens von DoS Attacken empfiehlt die Plone Foundation den Einsatz von Proxyservern, da diese es den Angreifern erschweren den Service lahm zu legen. 47

2.12. Individualisierung und Erweiterungen

Über die offizielle Webseite plone.org können jederzeit Erweiterungen und Designs zur Individualisierung heruntergeladen und selbst entwickelte Produkte anderen Nutzern angeboten werden. Die Add-Ons sorgen dafür, dass Plone weiter an Funktionalität gewinnt und dessen Einsatzgebiete vergrößert werden. Die Erweiterungen sind kategorisiert und in englischer Sprache erklärt. (vgl. Abbildung 6: Erweiterungen für Plone auf plone.org)48

Customization erreicht Plone weiterhin über die Erstellung bzw. Integration neuer Themes. Da diese Funktion auch in allen anderen üblichen CMS integriert ist, kann hier, abgesehen von der Komfortabilität, aber nicht von einem Wettbewerbsvorteil gesprochen werden. Themes können auf mehreren Wegen auf dem System installiert werden. Beispielsweise kann zunächst die Erweiterung „Diazo“ freigeschaltet werden, wodurch ein direkter Upload und die Aktivierung eines neuen Designs möglich wird. Das Hochladen der Daten ist auch über FTP möglich. Ein bereits installiertes Theme kann auch kopiert und dann angepasst werden. Designs bestehen bei Plone aus drei wesentlichen Teilen: einem HTML Markup für die Grundstruktur, dem Inhalt, welcher von Plone geliefert wird und einer Datei im XML Format, welche Regeln enthält. Mit

46 https://www.bsi.bund.de/SharedDocs/Downloads/DE/BSI/Publikationen/Studien/CMS/Studie_CMS.pdf 47 http://plone.org/products/plone/security/overview 48 http://plone.org/products

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 18 von 39 Plone FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert diesen Regeln können Standards und Ausnahmen bei der Darstellung der Seite definiert werden. Diazo liefert hierfür einen Editor mit, welcher die aktuellen Technologien Xpath und CSS3 unterstützt. 49 50

2.13. Praxistest

Dieses Kapitel der Ausarbeitung beschäftigt sich mit der Dokumentation einer konkret durchgeführten Installation von Plone 4.3.2 auf einem privaten Testserver.

2.13.1. Serverhardware

Hardwareseitig steht zum Zweck der Durchführung einer konkreten Anwendung ein PC mit einem Gigabyte Arbeitsspeicher, 20 Gigabyte Festplattenkapazität und einem Intel Prozessor älterer Generation mit 2x 2Ghz zur Verfügung. Der Rechner verfügt über eine Verbindung zum Internet, welche über Netzwerkkarte und -kabel realisiert wurde.

2.13.2. Serversoftware

Als Betriebssystem für den Server wurde die schlanke Linux Distribution "Archlinux" gewählt. 51 Für den Betrieb des Plone Content-Management-Systems mussten darüber hinaus die Komponenten base-devel, libxml2, libxslt, libjpeg-turbo sowie openssl installiert werden, da diese für die eigentliche Einrichtung notwendig sind. Über den von der Plone Foundation mitgelieferten "Unified Installer" werden danach Python, Zope und das Plone CMS auf dem Testserver installiert. Eine genaue Beschreibung der notwendigen Schritte wurde hierbei einem Wiki entnommen, welches von der Installation von Plone auf Archlinux handelt. Nach erfolgreicher Installation kann Plone gestartet und die praktische Arbeit am System begonnen werden. 52 53

49 http://en.wikipedia.org/wiki/Diazo_(software) 50 http://www.evenios.com/news/20-fragen-und-antworten-zu-plone-zum-world-plone-day-in-deutsch- verfuegbar 51 https://www.archlinux.de/ 52 https://wiki.archlinux.org/index.php/Plone 53 http://plone.org/documentation/manual/installing-plone/referencemanual-all-pages

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 19 von 39 Plone FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert 2.13.3. Erste Schritte im Webbrowser

Das Redaktionssystem Plone kann im Webbrowser des Testservers über die Adresse http://localhost:8080 erreicht werden. Für Endgeräte im Netzwerk ist die Zieladresse die IP-Adresse des Testrechners bzw. der Hostname des Computers in Kombination mit dem Port 8080 (plone-server 8080). Es erwartet den Nutzer eine Seite mit der Meldung, dass die Installation von Plone erfolgreich abgeschlossen wurde. Über einen weiteren Hyperlink wird die Startseite der Webseite aufgerufen (vgl. Abbildung 7: Plone Startseite), welche Hinweise darauf gibt, welche Schritte als nächstes gemacht werden können. Darunter zählt das Vornehmen von Einstellungen, das Lesen des Handbuches oder das Erstellen weiterer Benutzer.

2.13.4. Konfiguration und Einstellungen

Zunächst können verschiedene Grundeinstellungen für den Betrieb der Webseite vorgenommen werden, auf die an dieser Stelle nicht genauer eingegangen werden kann. Es handelt sich dabei um technische Hürden bzw. Anwendungen, die den Rahmen dieser Betrachtung überschreiten. Dazu zählen: die Einrichtung eines E-Mail-Servers, die Untersuchung der Zope-Management-Oberfläche und der Konfigurationsregistratur, sowie einige Funktionen, die in Abhängigkeit von Drittsoftware stehen.

2.13.5. Benutzer anlegen

Für den ersten Testfall, wie das Anlegen neuer Benutzer, wird sich zunächst auf der Plone Webseite als Administrator angemeldet, um Konfigurationen an Plone (vgl. Abbildung 8: Admin- und Konfigurationsoberfläche von Plone) vornehmen zu können. Dazu wird im Konfigurationsmenü der Navigationspunkt Benutzer und Gruppen gewählt und im nachfolgenden Dialog der Button "neuen Benutzer hinzufügen" geklickt. Benutzername, E-Mail und Passwort sind Pflichtfelder, Vor- und Nachname können optional hinterlegt werden (vgl. Abbildung 9: Dialog zum Anlegen von Benutzern). Im Konfigurationsmenü im Bereich Sicherheit kann die Einstellung vorgenommen werden, dass sich Besucher der Webseite selbst registrieren können. Außerdem kann eine Prüfung der E-Mail-Adresse zur Registrierung deaktiviert werden. Alternativ gibt es die Einstellung als Anmeldename die E-Mail-Adresse anstatt den

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 20 von 39 Plone FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert Benutzernamen zu verwenden. Des Weiteren sollten Benutzer einer oder mehreren Gruppen hinzugefügt werden, um diesen verschiedene Handlungs- und Interaktionsmöglichkeiten auf der Webseite zu geben. Neben den Standardgruppen(Administratoren, Betrachter, Webmaster) können auch eigene neue Gruppen hinzugefügt werden. Dieses Rollenmanagement zu verwenden, ist immer dann sinnvoll, wenn die Anwendergruppe aus vielen Personen mit verschiedenen Rollen besteht. Dadurch können verschiedenen Anwendern Bereiche der Webseite zu- oder unzugänglich gemacht werden.

2.13.6. Design Einstellungen

Im Navigationspunkt Aussehen im Konfigurationsmenü können Einstellungen an Designs vorgenommen werden (vgl. Abbildung 10: Design Einstellungen unter Plone). Dazu zählen das Erstellen neuer Designs, sowie das Hochladen von Designs von Drittanbietern. Nachdem ein neues Design erstellt wurde, kann dieses aktiviert, kopiert oder verändert werden. Die Veränderungen können direkt online in einem Quellcode- Editor vorgenommen werden (vgl. Abbildung 11: Quellcode-Editor zur Bearbeitung von Designs). Möglichkeiten zur Erstellung von Designs wurden bereits im Abschnitt 2.12 Individualisierung und Erweiterungen erläutert.

2.13.7. Inhalte erstellen

Verfügt der Benutzer über ausreichend Rechte zur Erstellung von Inhalten, so hat dieser die Möglichkeit auf jeder beliebigen Seite aus der Werkzeugleiste, die sich im Inhaltsbereich, am rechten Rand unter der Navigation befindet, entsprechende Aktionen zu wählen (vgl. Abbildung 12: Werkzeugleiste zur Contenterstellung).

Es können zunächst verschiedenste Inhaltstypen erstellt werden. Dazu zählen: Bilder, Dateien, Hyperlinks, Nachrichten, Ordner, Seiten und Termine, sowie Kollektionen. Auf diese Weise können Inhalte sinnvoll strukturiert und zusammengefasst werden. Plone ist in der Lage anhand der Aktion der Erstellung eines Ordners selbstständig einen neuen Navigationspunkt auf der Webseite hinzuzufügen. Zunächst wurde ein Ordner mit der Bezeichnung Praxisbeispiel erstellt. Ein Ordner muss eine Bezeichnung (ein Thema) haben, kann zur Kategorisierung mit Stichworten versehen werden, sowie

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 21 von 39 Plone FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert eine zeitliche Gültigkeit besitzen. Zu diesem Ordner wurde dann über die Werkzeugleiste die Funktion Seite hinzufügen gewählt. Seiten müssen einen Titel haben, können mit einer Kurzbeschreibung ausgestattet werden und bieten den in Kapitel 2.6 Barrierefreiheit angesprochenen visuellen Texteditor (vgl. Abbildung 13: WYSIWYG-Editor und Formatierungsvorlagen). Dieser gibt Möglichkeiten zur Strukturierung von Texten und dem Erstellen von Medieninhalten, wie Bildern und Hyperlinks. Das Einbinden von externen Videos über iFrames, wie es von YouTube angeboten wird, ist standardmäßig blockiert aber grundsätzlich möglich. Eigene Audio- und Videoprodukte können als Dateien hochgeladen werden und über das Object-Tag auf der Seite eingebettet werden. Sind alle Einstellungen vorgenommen, so kann die soeben erstellte Seite gespeichert werden. Sie wird daraufhin angezeigt und befindet sich im Status Privat . Dies bedeutet, dass sie dann veröffentlicht werden kann oder zur Veröffentlichung eingereicht werden soll, wenn Artikel zunächst redaktionell geprüft werden müssen. Dies impliziert, dass ab diesem Zeitpunkt neben dem eigentlichen Verfasser auch andere Personen Zugriff auf den erstellten Inhalt haben. Sollte sich der Inhalt einer Seite ein mal ändern, so kann dies über den Button Bearbeiten im Kopfbereich der betreffenden Seite direkt getan werden. Es lassen sich alle zuvor getätigten Angaben und Einstellungen verändern.

Jeder Inhaltstyp kann darüber hinaus mit einer Kommentarfunktion versehen werden. Diese Funktion muss zuvor im Konfigurationsmenü unter Kommentare global aktiviert werden (vgl. Abbildung 17: Kommentarfunktion).

2.13.8. Darstellungsformen von Inhalten

Wurden zu einem Thema mehrere Inhalte erstellt, kann es sich als notwendig herausstellen diese in geeigneter Form darzustellen. Dazu bietet Plone dem Berechtigten die Möglichkeit zwischen verschiedenen Darstellungsformen zu wählen:

• Kurzfassung: Darstellung der Überschriften und Verweise zu weiterführenden Informationen • Gesamter Inhalt: viele Artikel werden zu einem Gesamtdokument zusammengefasst • Tabelle: erscheint sinnvoll, wenn viele verschiedene Inhaltstypen verwendet wurden

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 22 von 39 Plone FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert • Album: bietet sich an, wenn viele Medieninhalte verwendet wurden (vgl. Abbildung 18: Darstellungsform "Album" für Inhalte) • Liste: gibt die Inhalte sortiert nach Inhaltstypen aus

2.13.9. Weitere Inhaltstypen

Wie bereits im letzten Abschnitt erwähnt, können verschiedenste Typen von Inhalten verwaltet werden. So können Bilder zunächst hochgeladen, in Artikel eingebunden oder in einem Album angezeigt werden. Abgesehen von Bildern können auch alle anderen Arten von Dateien online bereit gestellt werden. Anhand von Suchkriterien können Kollektionen erstellt werden. Die Kriterien setzen sich aus Texten, Metadaten und Daten, die sich auf der Webseite befinden, zusammen. Die Kollektion enthält Artikel zu den Suchbegriffen.

Nachrichten stellen die Möglichkeit dar Ankündigungen zu machen und über Neuigkeiten zu berichten. Sie werden in einer separaten Nachrichtenübersicht dargestellt. An dieser Stelle sei die Möglichkeit von Querverweisen erwähnt, wodurch auf andere Webseitenbereiche verwiesen werden kann. Hier ist weiterhin die Funktion sinnvoll, dass Artikel zeitlich gesteuert publiziert werden können. Dadurch wird die Möglichkeit geschaffen Artikel zu veröffentlichen, ohne dass es der Anwesenheit einer Person bedarf (vgl. Abbildung 14: Zeitlich gesteuerte Veröffentlichung einer Nachricht). Diese Funktion ist gerade bei redaktioneller Arbeit sinnvoll und ist bei anderen gängigen CMS ebenfalls integriert.

2.13.10. Portlets

Portlets dienen dazu Inhalte der Webseite zusammen zu fassen oder Zugriff auf Funktionen zu gewähren. Sie können links oder rechts neben dem Inhaltsbereich angeordnet sein. Zusätzlich zu einer Reihe von Standardportlets wie bspw. Suchfunktionen, Kalender, Revisionslisten oder Navigationselementen, können auch eigene statische Inhalte durch frei formatierbaren Text in einem Portlet angeboten werden (vgl. Abbildung 15: Statisches Portlet, vgl. Abbildung 16: Eingebundes statisches Portlet).

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 23 von 39 Plone FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert 2.13.11. Installationen von Erweiterungen

In Kapitel 2.12 Individualisierung und Erweiterungen wurde bereits erwähnt, dass Erweiterungen über die Plone Webseite zu beziehen sind und dort kategorisiert angeboten werden. Diese müssen manuell im Installationsverzeichnis von Plone abgelegt werden. Um die Erweiterungen im System bekannt zu machen, ist außerdem ein Neustart der Zope Anwendung notwendig. Im Konfigurationsmenü unter dem Punkt Erweiterungen können die neu hinzugefügten Erweiterungen aktiviert und entsprechend ihrer Funktion verwendet werden.

2.14. Abschlussbetrachtung

Nachdem sich die Verfasser in den zurückliegenden Kapiteln dem Thema Plone zunächst theoretisch und im Späteren auch praktisch angenähert haben, sollen die gewonnenen Erkenntnisse nun zusammengefasst dargestellt werden.

Die Installation des Content-Management-Systems unter Archlinux verläuft für erfahrene Linux Anwender im Wesentlichen nachvollziehbar und reibungslos ab. Dafür sorgt auch eine entsprechende Ressource im Internet. Nach der erfolgreichen Installation bietet Plone dem Nutzer weiterführende Informationen an. Diese sind insgesamt als umfassend und hilfreich zu bewerten. Die Erstellung von Inhalten gelingt nach kurzer Eingewöhnungsphase zügig, vor allem weil die Bedienung intuitiv erfolgt. Neben den verschiedenen Inhaltstypen fällt auch die Dialogführung mit dem Anwender positiv auf. Inhalte können durch diese Inhaltstypen gut strukturiert werden. Weiterhin erweist sich das gemeinsame Veröffentlichen von Informationen als nützlich und integrierte Funktionen vereinfachen die Arbeit im Team. Die Bedienungsoberfläche ist übersichtlich und Hinweistexte helfen dabei die richtigen Funktionen zu finden. Damit wird Plone dem Grundsatz gerecht, dass ein CMS kaum technisches Verständnis bei dessen Nutzer voraussetzen sollte. Um die Plone Installation auf die eigenen Anwendungsgebiete abzustimmen, bietet diese weitreichende Möglichkeiten zur Erweiterung und Anpassung. Eigene Designs können erstellt oder über die offizielle Webseite bezogen werden. Damit ist es für private und unternehmerische Zwecke gleichermaßen geeignet. Die beschriebenen Sicherheitsfunktionen sind aber vor allem für Unternehmen interessant. Es wurde herausgearbeitet, dass Plone im Gegensatz zu

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 24 von 39 Plone FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert anderen Content-Management-Systemen zu einem der Sichersten gehört. Weiterhin kann Plone als Internet- und Intranetlösung eingesetzt werden. Unterschiede zu anderen CMS bestehen auch in der Technologie und der Flexibilität. Plone setzt auf Python und Zope, während gängige Content-Management-Systeme auf andere Webtechnologien setzen. Plone ist dahingehend flexibel, dass es je nach Anwendungsgebiet ein Document-Management-System oder Web-CMS sein kann.

Es bietet weiterhin eine API und weitere Schnittstellen zur Integration in bestehende IT- Landschaften. Dass Plone auf allen gängigen Betriebssystemen lauffähig ist, stellt sich ebenfalls als vorteilhaft heraus. Im Praxistest hat sich gezeigt, dass auch Hardware älterer Generationen mit dem Bereitstellen einer Plone Webseite keine erkennbaren Probleme hat. Einzige Voraussetzung zur Verwendung der Oberfläche ist das Vorhandensein eines modernen Webbrowsers. Sollten trotzdem Probleme auftreten, so kann ein ausgereiftes Support System weiterhelfen.

Barrierefreiheit und Accessibility wird bei der Plone Foundation ernst genommen. Plone erfüllt auf diesem Gebiet viele internationale Standards sowie auch Webstandards. Die Auslieferung des CMS unter der GP-Lizenz macht es zu einem Open Source Produkt und auch abgeleitete Distributionen sind an diese Lizenz gebunden. Deshalb ist die Plone Foundation als non-profit Organisation auf Spenden zur Finanzierung angewiesen, um auch weiterhin regelmäßige Updates entwickeln und herausgeben zu können. Die Anzahl der Entwickler und Service Provider in Kombination mit lokalen Interessengruppen, sowie der Übersetzung des CMS in 40 Sprachen, lässt auf eine lebendige Community schließen.

Zusammengefasst können die Autoren das professionelle Content-Management-System empfehlen, da es trotz seiner schwierigen Marktposition einen durchweg positiven Eindruck hinterlassen konnte.

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 25 von 39 Plone FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert Anhang

Abbildungen

Abbildung 1: Marktanteile verschiedener CMS Systeme Quelle: t3n Magazin Beitrag

Abbildung 2: Marktanteile und Verwendung verschiedener CMS Systeme; Stand 07.01.2014 Quelle: w3tech Blog

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 26 von 39 Plone FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert

Abbildung 3: Gemeldete Bugs bei Plone über das Ticketsystem Quelle: Plone.org, eigenes Bildschirmfoto

Abbildung 4: Deutsches Online Handbuch zu Plone Quelle: plone.de, eigenes Bildschirmfoto

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 27 von 39 Plone FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert

Abbildung 5: WYSIWYG-Editoren in Plone Quelle: plone.org, eigenes Bildschirmfoto

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 28 von 39 Plone FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert

Abbildung 6: Erweiterungen für Plone auf plone.org Quelle: plone.org, eigenes Bildschirmfoto

Abbildung 7: Plone Startseite

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 29 von 39 Plone FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert Quelle: eigene Darstellung

Abbildung 8: Admin- und Konfigurationsoberfläche von Plone Quelle: eigene Darstellung

Abbildung 9: Dialog zum Anlegen von Benutzern Quelle: eigene Darstellung

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 30 von 39 Plone FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert

Abbildung 10: Design Einstellungen unter Plone Quelle: eigene Darstellung

Abbildung 11: Quellcode-Editor zur Bearbeitung von Designs Quelle: eigene Darstellung

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 31 von 39 Plone FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert

Abbildung 12: Werkzeugleiste zur Contenterstellung Quelle: eigene Darstellung

Abbildung 13: WYSIWYG-Editor und Formatierungsvorlagen Quelle: eigene Darstellung

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 32 von 39 Plone FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert

Abbildung 14: Zeitlich gesteuerte Veröffentlichung einer Nachricht Quelle: eigene Darstellung

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 33 von 39 Plone FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert

Abbildung 15: Statisches Portlet Quelle: eigene Darstellung

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 34 von 39 Plone FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert

Abbildung 16: Eingebundes statisches Portlet Quelle: eigene Darstellung

Abbildung 17: Kommentarfunktion Quelle: eigene Darstellung

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 35 von 39 Plone FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert

Abbildung 18: Darstellungsform "Album" für Inhalte Quelle: eigene Darstellung

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 36 von 39 Plone FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert Quellenverzeichnis

Literatur

Clark, Alex: Plone 3.3 Site Administration. Birmingham: Packt Publishing Ltd, 2010

Delmonte, Maurizio ; Moro, Davide ; Narduzzo, Alice ; Reale, Fabrizio ; McKay, Andy: The Definitive Guide to Plone. 2nd ed. 2009. New York: Apress, 2009.

Internetquellen http://allfacebook.de/gastbeitrag/ueberraschung-facebook-verkauft-eure-daten-nicht-an- die-werbeindustrie, Seitenabruf 07.01.2014 http://blog.de.playstation.com/2011/04/26/psnqriocity-service-update/, Seitenabruf 07.01.2014 http://de.wikinews.org/wiki/Abh%C3%B6rma%C3%9Fnahmen_der_NSA_sorgen_f% C3%BCr_Irritationen_in_Deutschland_und_Europa, Seitenabruf 07.01.2014 http://de.wikipedia.org/wiki/Content-Management-System, Seitenabruf 02.01.2014 http://de.wikipedia.org/wiki/GPL, Seitenabruf 05.01.2014 http://de.wikipedia.org/wiki/ICQ, Seitenabruf 04.01.2014 http://de.wikipedia.org/wiki/Kryptographie, Seitenabruf 07.01.2014 http://de.wikipedia.org/wiki/Overlay-Netzwerk, Seitenabruf 05.01.2014 http://de.wikipedia.org/wiki/Peer-to-Peer, Seitenabruf 20.12.2013 http://de.wikipedia.org/wiki/Skype, Seitenabruf 07.01.2014 http://de.wikipedia.org/wiki/Windows_Live_Messenger, Seitenabruf 07.01.2014 http://developer.plone.org/reference_manuals/external/plone.api/, Seitenabruf 03.01.2014 http://developer.plone.org/reference_manuals/external/plone.app.theming/userguide.htm l, Seitenabruf 07.01.2014 http://en.wikipedia.org/wiki/Diazo_(software) , Seitenabruf 09.01.2014 http://hosting.1und1.de/linux-hosting?linkOrigin=webhosting&linkId=ct-txt-navi- package, Seitenabruf 09.01.2014 http://hosting.1und1.de/server?linkId=hd.mainnav.server, Seitenabruf 09.01.2014 http://nacl.cr.yp.to/, Seitenabruf 14.12.2013 http://plone.org/documentation/kb/content-creation-with-kupu/wysiwyg-editors-in- plone , Seitenabruf 02.01.2014 http://plone.org/documentation/manual/installing-plone/referencemanual-all-pages, Seitenabruf 17.12.2013 http://plone.org/foundation , Seitenabruf 17.12.2013 http://plone.org/foundation/about/faq , Seitenabruf 18.12.2013 http://plone.org/products, Seitenabruf 18.12.2013 http://plone.org/products/plone/security/overview, Seitenabruf 20.12.2013

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 37 von 39 Plone FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert http://plone.org/support, Seitenabruf 05.01.2014 http://plone.org/support/providers, Seitenabruf 05.01.2014 http://plone.org/support/providers/by-country/de , Seitenabruf 05.01.2014 http://rheinland.worldploneday.de/news/antworten-zu-20-fragen-uber-plone- veroeffentlicht , Seitenabruf 01.01.2014 http://w3techs.com/technologies/details/cm-plone/all/all, Seitenabruf 07.01.2014 http://w3techs.com/technologies/overview/content_management/all, Seitenabruf 07.01.2014 http://wiki.tox.im/FAQ, Seitenabruf 07.01.2014 http://www.cmscrawler.com/tool/Plone, Seitenabruf 07.01.2014 http://www.evenios.com/news/20-fragen-und-antworten-zu-plone-zum-world-plone- day-in-deutsch-verfuegbar, Seitenabruf 01.01.2014 http://www.evenios.com/plone-marketing/zwanzig-fragen-zu-plone, Seitenabruf 01.01.2014 http://www.focus.de/finanzen/news/unternehmen/tid-30783/namen-profile-surf- verhalten-so-spioniert-die-daten-krake-google-ihre-nutzer-aus_aid_969099.html, Seitenabruf 07.01.2014 http://www.golem.de/news/skype-alternative-freier-und-sicherer-videochat-mit-tox- 1307-100688.html, Seitenabruf 19.11.2013 http://www.hasecke.com/plone-benutzerhandbuch/4.0/gui/portlets.html, Seitenabruf 09.01.2014 http://www.hasecke.com/plone-white-paper/usability/barrierefreiheit, Seitenabruf 04.01.2014 http://www.heise.de/ct/artikel/Der-Datenkrake-290454.html, Seitenabruf 07.01.2014 http://www.heise.de/ct/artikel/Des-Nutzers-neue-Kleider-1360303.html, Seitenabruf 07.01.2014 http://www.heise.de/netze/meldung/Skype-Alternative-Tox-einfach-verschluesselt- dezentral-1926996.html, Seitenabruf 19.11.2013 http://www.n24.de/n24/Nachrichten/Politik/d/4036600/ich-arbeite-noch-immer-fuer- die-nsa.html, Seitenabruf 07.01.2014 http://www.n24.de/n24/Nachrichten/Politik/d/4100786/eu-will-edward-snowden- anhoeren-und-kritisiert-usa.html, Seitenabruf 07.01.2014 http://www.plone.de/accessibility-info, Seitenabruf 07.01.2014 http://www.plone.de/dokumentation, Seitenabruf 05.12.2013 http://www.plone.de/nachrichten/support-gesucht-plone-zope-forum, Seitenabruf 05.12.2013 http://www.plone.de/ueber-plone/plone-broschure-als-pdf-datei, Seitenabruf 03.01.2014 http://www.plone.de/ueber-plone/was-ist-plone, Seitenabruf 03.01.2014 http://www.pro-linux.de/news/1/20079/neuer-messenger-tox-will-skype-beerben.html, Seitenabruf 14.11.2013 http://www.tox.im/, Seitenabruf 15.11.2013

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 38 von 39 Plone FH Schmalkalden - WS 2013/2014 Leitsch, Lipfert http://www.vodafone.de/privat/hilfe-support/kundeninformation.html, Seitenabruf 07.01.2014 http://www.welt.de/wall-street-journal/article109596525/Facebook-will-Zugang-zu- seinen-Daten-verkaufen.html, Seitenabruf 07.01.2014 https://web-support.hu-berlin.de/hu-plone/benutzer/audio-video-einbinden, Seitenabruf 07.01.2014 https://wiki.archlinux.org/index.php/Plone, Seitenabruf 29.12.2013 https://www.archlinux.de/, Seitenabruf 29.12.2013 https://www.bsi.bund.de/SharedDocs/Downloads/DE/BSI/Publikationen/Studien/CMS/ Studie_CMS.pdf, Seitenabruf 07.01.2014 https://www.bsi.bund.de/SharedDocs/Downloads/DE/BSI/Publikationen/Studien/CMS/ Studie_CMS.pdf?__blob=publicationFile , Seitenabruf 07.01.2014

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 39 von 39 FH Schmalkalden WS 2013/2014 Studiengang: Angewandte Medieninformatik Blockseminar: Software- und Service-Scout Dozent: Dipl.-Phys. Jo Tzschenscher

Theoretische Aufgabe

C3S – Mit der Cultural-Commons-Collection-Society (c3s.cc) soll eine alternative Rechteverwertungsgesellschaft für Kunstschaffende gegründet werden, die sich als Alternative für die klassischen Rechteverwerter am Markt etablieren will. Beschreiben sie die Geschäftsidee, und wie sich diese von der Funktionsweise klassischer Verwerter unterscheidet.

Praktische Aufgabe

Puddletag – Puddletag (http://puddletag.sourceforge.net/) is an audio (primarily created) for GNU/Linux similar to the Windows program, . Unlike most taggers for GNU/Linux, it uses a spreadsheet-like layout so that all the tags you want to edit by hand are visible and easily editable.

The usual tag editor features are supported like extracting tag information from filenames, renaming files based on their tags by using patterns and basic tag editing.

Then there’re Functions, which can do things like replace text, trim it, do case conversions, etc. Actions can automate repetitive tasks. Doing web lookups using (including cover art), (does cover art too!), FreeDB and MusicBrainz is also supported. There’s quite a bit more, but I’ve reached my comma quota.

Supported formats: ID3v1, ID3v2 (mp3), MP4 (mp4, m4a, etc.), VorbisComments (ogg, ), (mpc), Monkey’s Audio (.ape) and WavPack (wv)

Adem Sen ([email protected]) David Hahn ([email protected]) Cultural-Commons-Collecting-Society & Puddletag FH Schmalkalden - WS 2013/2014 Adem Sen, David Hahn

Inhaltsverzeichnis Die Cultural-Commons-Collecting-Society (C3S) ...... 3

Einleitung ...... 3

Das Konzept der C3S ...... 4

Die Ziele der C3S ...... 5

Unterschiede zu klassischen Rechtsverwertern ...... 5

Zusammenfassung der Unterschiede ...... 6

Fazit ...... 6

Puddletag ...... 8

Puddletag - Was ist das? ...... 8

Entstehung von Puddletag ...... 9

Alternativen zu Puddletag ...... 9

Softwarepflege, Weiterentwicklung, Support und Dokumentation ...... 9

Plug-Ins für puddletag selber schreiben ...... 9

Installation von Puddletag ...... 10

Installation vom Quellcode ...... 11

Installation vom Debian-Paket ...... 11

Installieren auf Fedora 14 und später ...... 11

Plugins ...... 11

Übersetzungen ...... 11

Grundlegender Aufbau von puddletag ...... 12

Verwendung von puddletag ...... 13

Verwendung von Tag Sources ...... 17

Entscheiden was abgerufen werden soll...... 18

Vorgehensweise ...... 19

Fazit ...... 19

Quellen ...... 20 Blockseminar: Software- und Service-Scout Dozent: Jo Tzschenscher 2/21

Cultural-Commons-Collecting-Society & Puddletag FH Schmalkalden - WS 2013/2014 Adem Sen, David Hahn

Die Cultural-Commons-Collecting-Society (C3S)

Einleitung Die Cultural-Commons-Collecting-Society versucht eine alternative Rechteverwertungsgesellschaft für Kunstschaffende zu sein.

Bevor jedoch das Konzept und Vorhaben der Cultural-Commons-Collecting-Society genauer dargestellt wird, sollte zunächst der Begriff Rechteverwerter definiert werden. Ein Rechteverwerter ist eine Organisation, die die Rechte ihrer Mitglieder und Berechtigten verwaltet und den Lohn für ihr geistiges Eigentum kassiert. Sie lassen sich die aus dem Urheberrecht ergebenen Rechte zusichern und erzeugen Unter-Rechte (Lizenzen), um diese weiterzuverkaufen.1 Hierbei halten sich die Verwertungsgesellschaften an Gesetze und Verordnungen. Das geistige Eigentum, welches durch solche Verwertungsgesellschaften vor Missbrauch geschützt werden soll, ist im Art. 14 des Grundgesetzes grundlegend beschrieben.2

Eines der bekanntesten Rechteverwerter ist die Gesellschaft für musikalische Aufführungs- und mechanische Vervielfältigungsrechte (GEMA). Seit 1933 ist sie staatlich legitimierte Verwertungsgesellschaft der Bundesrepublik Deutschland (damals Deutsches Reich) mit den Generaldirektionen in Berlin und München. Viele Internetnutzer werden die GEMA vom Internetvideoportal „Youtube“ kennen. Etliche Videos wurden durch die GEMA gesperrt und stehen deutschen Internetnutzer nicht zur Verfügung. Der Nachrichtentext der im Videofenster zu sehen ist, ist folgender: „Leider ist dieses Video in Deutschland nicht verfügbar, da es Musik enthalten könnte, für die die GEMA die erforderlichen Musikrechte nicht eingeräumt hat.“

Viele User sind von dieser Nachricht genervt. Doch gestört hat es besonders die zehn Künstler, Forscher und Juristen, die die Verwertungsgesellschaft C3S, Cultural Commons Collecting Society – eine faire GEMA-Alternative – gegründet haben.3

1 http://de.wikipedia.org/wiki/Rechteverwerter (aufgerufen am 06.12.2013) 2 http://de.wikipedia.org/wiki/Gesellschaft_f%C3%BCr_musikalische_Auff%C3%BChrungs- _und_mechanische_Vervielf%C3%A4ltigungsrechte#Rechtsgrundlage (aufgerufen am 06.12.2013) 3 Der Standard, C3S: Alternativer Rechteverwerter sagt GEMA den Kampf an, 17. Juli 2013, http://derstandard.at/1373512913179/C3S-Alternativer-Rechteverwerter-sagt-GEMA-den-Kampf-an (aufgerufen am 06.12.2013) Blockseminar: Software- und Service-Scout Dozent: Jo Tzschenscher 3/21

Cultural-Commons-Collecting-Society & Puddletag FH Schmalkalden - WS 2013/2014 Adem Sen, David Hahn

Die C3S selbst definiert ihre Organisation wie folgt:

„Die C3S – Cultural Commons Collecting Society – ist eine unabhängige Initiative. Die C3S ist weder ein Teil von, noch ein Projekt von, oder verbunden mit . Ebenso wie andere Verbände und Unternehmen, hat die C3S die Organisation der Creative Commons jedoch um Rat gebeten, um das C3S-Konzept der Integration der Creative-Commons-Lizenzen mit den Richtlinien der Creative Commons abzustimmen.“ 4

Hierbei soll sie als eine „Non-Profit“ Verwertungsgesellschaft auftreten und musikalische Werke betreuen, die: 5

- Unter der Creative-Commons-Lizenzen veröffentlicht wurden - Unter keiner speziellen Lizenz stehen

Abgrenzen von herkömmlichen Verwertungsgesellschaften soll sich die C3S durch: 6

- Individuelle Lizenzen - Ausschüttung von 100-Prozent bei Musikern, die sehr wenig verdienen - Volles und gleiches Mitbestimmungsrecht auch für „kleine“ Mitglieder - Effizientere Operation, durch Einsatz von moderner Technologie, insb. OpenSource – Software

Zu Beginn möchte sich die C3S mit Online und Live-Lizenzen konzentrieren. Zu einem späteren Zeitpunkt soll der Arbeitsbereich um Lizenzrechte im B2B-Bereich erweitert werden.

Das Konzept der C3S Da der Online-Markt stetig am Wachsen ist, will sich die C3S vorwiegend um das Online-Segment kümmern und versucht in erster Linie Musiker(-innen) anzusprechen und zu überzeugen, die den vorhandenen Verwertungsgesellschaften nicht beitreten möchten oder können. Anstatt personenbezogener Lizenzierung wird auf individuelle Lizenzierung gesetzt, d. h. ein Musiker kann einzelne Werke lizenzieren lassen, wobei

4 https://www.c3s.cc/uber-uns/ (aufgerufen am 06.12.2013) 5 Vgl. https://www.c3s.cc/uber-uns/ (aufgerufen am 06.12.2013) 6 Vgl. red, derStandard.at, C3S: Alternativer Rechteverwerter sagt GEMA den Kampf an, 17. 07.2013, http://derstandard.at/1373512913179/C3S-Alternativer-Rechteverwerter-sagt-GEMA-den-Kampf-an (aufgerufen am 06.12.2013) Blockseminar: Software- und Service-Scout Dozent: Jo Tzschenscher 4/21

Cultural-Commons-Collecting-Society & Puddletag FH Schmalkalden - WS 2013/2014 Adem Sen, David Hahn sich der Mitgliedsbeitrag nach den Lizenzeinnahmen richtet und im direkten Verhältnis dazu steht. Außerdem soll durch schulische und weiterbildende Angebote das Verständnis von Copyright und Urheberrecht gefördert werden.7

Die Ziele der C3S Die C3S-Mitglieder sollen von folgenden Punkten profitieren: 8

- Bessere Einnahmemöglichkeiten für Musiker(-innen) - Keine Vorabzahlung und somit kein Negativkonto - Werkbasierte Verwertung - C3S ist das ausführende Organ – Musiker(-innen) behalten die vollständige Kontrolle - Selbstentscheidung über kostenlose und legale Verwendung der Musik - Volle und gleiche Stimmrechte für alle Mitglieder

Unterschiede zu klassischen Rechtsverwertern Die C3S möchte sich als echte Alternative für die GEMA etablieren und schlägt deshalb einen anderen Weg ein. Ein großer Unterschied besteht bereits bei der Lizensierung der Werke eines Künstlers. Wenn ein Künstler einen Wahrnehmungsvertrag bei der GEMA abschließt, werden alle existierenden und zukünftigen Werke von dieser vertreten. Bei der C3S dagegen kann der Künstler entscheiden, welche seiner Werke von dieser vertreten werden sollen. Außerdem können die Künstler die Lizenz festlegen, unter die sie das Werk stellen möchten, etwa unter die herkömmliche oder unter eine Creative- Commons-Lizenz. Diese Wahlfreiheit gibt es bei der GEMA nicht, welche die Werke ihrer Mitglieder alle nach denselben Bedingungen vertritt. Die C3S ermöglicht es beispielsweise, einzelne Songs offiziell zum nicht-kommerziellen Teilen und Herunterladen freizugeben. Der Künstler kann so Werbung in eigener Sache betreiben, ohne auf Tantiemen für andere Songs oder kommerzielle Nutzung zu verzichten.9

7 Michalke Meik, C3S, Köln, 24.10.2013 http://reaktanz.de/blog/images/koeln_social_community_day_2013-10-24_static.pdf (aufgerufen am 06.12.2013) 8 C3S, Unsere Ziele: Das ist für Euch drin. https://www.c3s.cc/wie-es-funktioniert/ (aufgerufen am 06.12.2013) 9 Was die Gema-Konkurrenz anders machen will http://www.golem.de/news/c3s-was-die-gema-konkurrenz-anders-machen-will-1309-101858.html (aufgerufen am 16.12.2013) Blockseminar: Software- und Service-Scout Dozent: Jo Tzschenscher 5/21

Cultural-Commons-Collecting-Society & Puddletag FH Schmalkalden - WS 2013/2014 Adem Sen, David Hahn

Ebenfalls will die C3S Künstlern erlauben, sich von mehreren Verwertungsgesellschaften vertreten zu lassen. Außerdem will die C3S jedem Künstler, der Mitglied wird, das volle Stimmrecht in der neuen Organisation geben, unabhängig davon, ob er Großverdiener oder kleiner Künstler ist. In der Gema dagegen haben vor allem die Großen das Sagen, die den meisten Umsatz beisteuern. Kleinere Künstler fühlen sich in der 65.000 Mitglieder starken Organisation in ihren Interessen oft übergangen.10

Zusammenfassung der Unterschiede

Cultural Commons Collecting Society GEMA Lizensierungen der Werke Es können einzelne Werke lizensiert Immer nur das gesamte Repertoire eines werden Künstlers Lizensierungsart Der Künstler entscheidet unter welcher Alle Werke ihrer Mitglieder werden nach Lizenz sein Werk veröffentlicht wird denselben Bedingungen vertreten Anzahl der Verwertungsgesellschaften Ein Künstler kann von mehreren Ein Künstler kann nur von der GEMA Verwertungsgesellschaften vertreten vertreten werden werden Stimmrecht in der Organisation Alle Mitglieder erhalten das volle Nur die Künstler, welche den meisten Stimmrecht Umsatz beisteuern haben Mitspracherecht

Fazit Die Cultural Commons Collectings Society ist unserer Ansicht nach, ein ideales Gegenstück zur bisher bekannten GEMA. Durch die Erschaffung einer weiteren Rechteverwertungsgesellschaft für Kunstschaffende agiert die GEMA nicht mehr als Monopol und wird indirekt gezwungen Anpassungen vorzunehmen, um eine

10 Die Gema-Rebellen http://www.stern.de/kultur/musik/neue-musikverwertungsgesellschaft-c3s-die-gema-rebellen- 2044399.html (aufgerufen am 16.12.2013) Blockseminar: Software- und Service-Scout Dozent: Jo Tzschenscher 6/21

Cultural-Commons-Collecting-Society & Puddletag FH Schmalkalden - WS 2013/2014 Adem Sen, David Hahn

Verringerung ihrer Mitgliederanzahl gering zu halten. Durch die Einzellizensierung von Kunstwerken und den unterschiedlichen Lizensierungsarten werden dem Künstler mehr Rechte über ihre eigenen Kunstwerke gewährt. Nicht nur das Mitspracherecht über ihre eigenen Kunstwerke wird durch die C3S erhöht, sondern auch das umsatzunabhängige Mitspracherecht in der C3S wird für viele Künstler ein Grund zum Wechseln sein. Die C3S bringt nicht nur Vorteile für Kunstschaffende mit sich, sondern auch für diejenigen, die sich die Kunstwerke anschauen bzw. anhören wollen. Es werden in Zukunft auch kleinere bzw. finanziell schwächere Kunstschaffende von der Einzellizensierung und von den Einnahmen gesteuerten Lizenzgebühren profitieren und in der Lage sein ihre Kunstwerke ihren Zuschauern und Bewunderern anbieten zu können. Die C3S hat das Potenzial und auch die Chance etwas im Sektor der Rechteverwertungsgesellschaften zu verändern.

Blockseminar: Software- und Service-Scout Dozent: Jo Tzschenscher 7/21

Cultural-Commons-Collecting-Society & Puddletag FH Schmalkalden - WS 2013/2014 Adem Sen, David Hahn

Puddletag

Puddletag - Was ist das? Puddletag ist ein Audio-Tag-Editor für Linux, ähnlich dem Windows-Programm Mp3tag. Anders als die meisten Tagger für Linux, verwendet das Programm eine Tabellenkalkulation als Layout, so dass alle Tags, die von Hand bearbeitet werden sollen sichtbar und leicht editierbar sind.

Das Programm unterstützt die üblichen Tag-Editor-Funktionen wie das Extrahieren von Tag-Informationen aus Dateinamen, das Umbenennen von Dateien anhand ihrer Tags und grundlegende Tag-Bearbeitungen. Außerdem können Informationen zu einzelnen Dateien aus dem Internet geladen werden. Dabei unterstützt puddletag Amazon, Discogs, FreeDB and MusicBrainz. Über Amazon und Discogs können auch die Covers der einzelnen Lieder oder des Albums geladen werden.11

Puddletag wird mit einer englischen Oberfläche entwickelt, jedoch haben die Entwickler die Möglichkeit eingebaut, das Programm selbständig zu übersetzten. Dazu sind die beiden Programme Qt Linguist und PyQt4 notwendig, welche kostenlos zur Verfügung stehen. Eine Anleitung12 für das Übersetzen von puddletag kann auf der offiziellen Webseite eingesehen werden. Einige Benutzer haben das Programm bereits in ihre Sprache übersetzt. So hat bereits Ralf Sarholz das Programm in Deutsch übersetzt. Außerdem können noch französische, russische, tschechische, portugiesische und niederländische Sprachdateien runtergeladen werden.

Puddletag unterstützt zahlreiche Formate:

- ID3v1 - ID3v2 (mp3) - MP4 (mp4, m4a, etc.) - VorbisComments (ogg, flac) - Musepack (mpc) - Monkey’s Audio (.ape) - WavPack (wv)

11 http://puddletag.sourceforge.net/index.html (aufgerufen am 09.01.2014) 12 http://puddletag.sourceforge.net/source/translate.html (aufgerufen am 09.01.2014) Blockseminar: Software- und Service-Scout Dozent: Jo Tzschenscher 8/21

Cultural-Commons-Collecting-Society & Puddletag FH Schmalkalden - WS 2013/2014 Adem Sen, David Hahn

Entstehung von Puddletag Die Entwicklung von puddletag hat im Frühjahr 2008 angefangen und das Programm wurde in den folgenden Monaten stetig verbessert. Bis zur Veröffentlichung der Version 1.0.0 dauerte es jedoch über vier Jahre. Diese erschien am 21. August 2012 und bekam nur wenige Tage später ein Update auf die Version 1.0.1. In den folgenden Monaten wurde es dann etwas ruhig um das Projekt. Es dauerte knapp ein Jahr bis neue Funktionen in das Programm eingebaut wurden. Mit der Version 1.0.2 wurde am 7. November 2013 bisher die letzte Version veröffentlicht.13

Alternativen zu Puddletag Alternativen zu puddletag gibt es sowohl unter Linux, als auch unter Windows viele. Die meisten dieser Programme werden kostenlos angeboten, aber es gibt auch einige die kommerziell vertrieben werden. Der bekannteste Tag-Editor ist Mp3tag für Windows, welcher auch das Vorbild für puddletag war. Im Gegensatz zu puddletag ist Mp3tag nicht als Open Source verfügbar, beide Programme können aber kostenlos runtergeladen werden. Die Unterschiede zwischen den einzelnen Tag-Editoren sind meistens gering und unterscheiden sich oft nur an den unterstützten Audioformaten.

Softwarepflege, Weiterentwicklung, Support und Dokumentation Puddletag wird in unregelmäßigen Abständen mit neuen Funktionen versorgt und von bekannten Fehlern befreit. Zur Meldung von gefunden Fehlern haben die Entwickler ein Forum zur Verfügung gestellt, in welches diese eingetragen werden können. Außerdem wird in diesem Forum allgemeiner Support geleistet und Benutzer den Entwickler neue Funktionen vorschlagen. Auf der offiziellen Webseite wird eine umfangreiche Dokumentation für das Programm angeboten, außerdem stehen mehrere Tutorials zur Verfügung.

Plug-Ins für puddletag selber schreiben Es ist möglich selber Plug-Ins für puddletag zu schreiben. Voraussetzung dafür ist die Beherrschung der Programmiersprache Python. Plug-Ins werden in dem Order ~/.puddletag/plugins gespeichert und müssen folgende Ordnerstruktur haben:

13 http://puddletag.sourceforge.net/news.html (aufgerufen am 09.01.2014) Blockseminar: Software- und Service-Scout Dozent: Jo Tzschenscher 9/21

Cultural-Commons-Collecting-Society & Puddletag FH Schmalkalden - WS 2013/2014 Adem Sen, David Hahn

~/.puddletag/plugins --\modulename ----\__init__.py ----\info

Plug-Ins werden anhand ihres Namens importiert, daher darf der Name keine Leerzeichen, Punkte oder enthalten. Die Info ist eine Ini-Datei, die Informationen über das Plug-In enthält. Das Plug-In wird erst geladen, wenn alle Informationen in dieser Datei vorhanden sind. Der Aufbau der Datei ist folgendermaßen:

[info] name = Plugin Name author = Author Name version = 1.0 puddletag_version = 0.9.3 description = Description of what the plugin has/does.

- Name: Der Name des Plugins, wie er den puddletag Benutzern angezeigt wird. - Autor: Die Namen der Personen, die für das Plug-In verantwortlich sind. - Version: Die Versionsnummer des Plug-Ins. - puddletag_version: Die Version von puddletag für welche das Plug-In erstellt wurde. - Beschreibung: Eine kurze Zusammenfassung was das Plug-In tut.

Sollten Probleme bei der Entwicklung eines Plug-Ins auftreten, kann der Entwickler von puddletag über E-Mail kontaktiert werden. Außerdem stehen zwei Beispiel Plug-Ins auf der offiziellen Webseite zur Verfügung.14

Installation von Puddletag Um Puddletag installieren zu können, müssen folgende Pakete bereits installiert sein:

- Python 2.6 (aber nicht Python 3) - PyQt4 (mit Qt) (4.5 oder höher) - PyParsing (≥1.5.1) - Mutagen (1.20 empfohlen, 1.14 erforderlich)

14 http://puddletag.sourceforge.net/source/plugins.html (aufgerufen am 09.01.2014) Blockseminar: Software- und Service-Scout Dozent: Jo Tzschenscher 10/21

Cultural-Commons-Collecting-Society & Puddletag FH Schmalkalden - WS 2013/2014 Adem Sen, David Hahn

- ConfigObj (≥ 4.5.0) - Chromaprint (≥ 0.4) (optional) für AcoustID Unterstützung - Für AcoustID Unterstützung bei Ubuntu wird noch fpcalc benötigt

Installation vom Quellcode Zuerst die aktuelle Version als Tarball herunterladen15 und entpacken. Anschließend kann puddletag aus dem Verzeichnis aus gestartet werden, in welches es entpackt wurde. Hierfür den Befehl ./puddletag über ein Terminal aufrufen. Alternativ kann puddletag auch installiert werden. Dafür wird der Befehl python setup.py install als Root in dem entpackten Verzeichnis aufgerufen. Anschließend sollte puddletag im Menü unter Multimedia oder Sound auftauchen. Ist dies nicht der Fall, kann der Befehl desktop-file-install puddletag.desktop als Root in dem entpackten Verzeichnis aufgerufen werden.

Installation vom Debian-Paket Die aktuelle deb Version herunterladen16 und mit einem Doppelklick installieren. Sollte dies nicht funktionieren, kann das Debian-Paket mit dem folgendem Befehl als Root installiert werden: dpkg -i /path/to/puddletag-version.deb. Anschließend sollte puddletag im Menü unter Multimedia oder Sound auftauchen.

Installieren auf Fedora 14 und später Einfach den Befehl yum install puddletag als Root ausführen.

Plugins Es existieren mehrere Plug-Ins für puddletag, welche separat installiert werden können. Nachdem ein Plug-In heruntergeladen wurde, muss dieses in den Order ~/.puddletag/plugins entpackt werden. Aktiviert werden die Plug-Ins über Edit- >Preferences->Plugins.

Übersetzungen Um Übersetzungen zu installieren, einfach die heruntergeladene Datei in den Ordner ~/.puddletag/translations verschieben. Sollte dieser Ordner noch nicht existieren, muss dieser erstellt werden. Anschließend kann die Sprache über den Einstellungs-Dialog geändert werden. Die deutsche, französische, russische, tschechische, portugiesische

15 http://sourceforge.net/projects/puddletag/files/ 16 http://sourceforge.net/projects/puddletag/files/ Blockseminar: Software- und Service-Scout Dozent: Jo Tzschenscher 11/21

Cultural-Commons-Collecting-Society & Puddletag FH Schmalkalden - WS 2013/2014 Adem Sen, David Hahn und niederländische Sprachdateien17 kann auf der offiziellen Webseite runtergeladen werden.

Grundlegender Aufbau von puddletag

Die obige Abbildung zeigt die einzelnen Elemente der Software puddletag.

- Tag Panel: Wie bereits das normale file-view zeigt auch das tag panel verschiedene Werte. Die Eingabe bzw. Veränderung der Werte wird sofort für die selektierte Audiodatei übernommen. - Artwork: Das Artwork-Fenster zeigt die Coverabbildung des Albums, wenn welche hinterlegt wurden. Dieses Fenster wird standardmäßig nicht angezeigt, da die Größe der Bilddateien variieren kann.

17 http://puddletag.sourceforge.net/download.html Blockseminar: Software- und Service-Scout Dozent: Jo Tzschenscher 12/21

Cultural-Commons-Collecting-Society & Puddletag FH Schmalkalden - WS 2013/2014 Adem Sen, David Hahn

- File-View: Zeigt die ausgewählten Audiodateien in einem Ordner. Durch einfaches Selektieren der gewünschten Spalte/Zeile, kann man mehrere Dateien ohne Probleme gleichzeitig bearbeiten. - Pattern Combo Mit F8 springt man zwischen dem Pattern Combo und File-View. Die Eingaben in dieses Feld werden nicht automatisch übernommen. Erst mit Enter bestätigt der Benutzer seine Eingabe und erst dann werden die gewünschten Informationen/Bearbeitungen durch das System übernommen. 18

Verwendung von puddletag Die Startseite von puddletag schaut folgendermaßen aus und sollte sich im Normalfall nicht sonderlich von dieser Abbildung abweichen:

18 http://puddletag.sourceforge.net/source/tut3.html (aufgerufen am 09.01.2014) Blockseminar: Software- und Service-Scout Dozent: Jo Tzschenscher 13/21

Cultural-Commons-Collecting-Society & Puddletag FH Schmalkalden - WS 2013/2014 Adem Sen, David Hahn

Über Datei -> Ordner öffnen kann man auf die lokalen Mp3-Dateien zugreifen und sich den Inhalt des Ordners ausgeben. Dieser Prozess kann einige Minuten in Anspruch nehmen. Nachdem der Ordner in puddletag geladen wurde, werden die Audio-Dateien aufgelistet:

1. Das sogenannte pattern combo ist das Herzstück der Software puddletag.

2. Dieser Button konvertiert den Dateinamen in einen Metatag, der vom Benutzer in der pattern combo festgelegt wurde.

3. Ist die Umkehrfunktion zu 2. und macht aus einen Metatag eine Dateinamen.

Die in der obenstehenden Abbildung angezeigten Audiodaten haben keine Taginformationen. Lediglich im Dateinamen stehen Informationen zur Identifizierung der Audiodateien. Im weiteren Verlauf sollen diesen Informationen extrahiert werden. Dies wird wie folgt gemacht:

Die einzelnen Informationen, die im Dateinamen angezeigt werden, müssen in den Tag Panel eingetragen oder mithilfe eines pattern (Musters) extrahiert werden. Im Tag Panel hat jede Information einen eigenes Feld, wie zum Beispiel: Artist, Title oder Album.

Eine dritte Möglichkeit ist in das obenstehende Eingabefeld folgendes einzugeben: %artist% - %track% - %title%. Mithilfe dieser Notation übernimmt puddletag die

Blockseminar: Software- und Service-Scout Dozent: Jo Tzschenscher 14/21

Cultural-Commons-Collecting-Society & Puddletag FH Schmalkalden - WS 2013/2014 Adem Sen, David Hahn

Information systematisch aus dem Dateinamen und übergibt diese als Metatag. Welche Werte zwischen den %-Zeichen stehen kann, sind auf folgender Webseite alphabetisch unter Tags aufgelistet: http://puddletag.sourceforge.net/source/tags.html

Hier ist ein kleiner Auszug aus dieser Tabelle:

Ein Beispiel zur Veranschaulichung:

Der Benutzer gibt folgendes in das Eingabefeld pattern combo ein: %artist% - %track% - %title% (siehe Abbildung) und klickt anschließend zur Konvertierung auf das Button , dann erhält er für die erste Audiodatei folgende Metatags:

Blockseminar: Software- und Service-Scout Dozent: Jo Tzschenscher 15/21

Cultural-Commons-Collecting-Society & Puddletag FH Schmalkalden - WS 2013/2014 Adem Sen, David Hahn

Die Gesamtinformation im Dateinamen wurde in die einzelnen Felder übernommen. Um für alle Audiodateien diese Metatags zu übernehmen, braucht der Benutzer lediglich alle Audiodateien mit STRG+A zu markieren und anschließend wieder auf

zu klicken.

Der Benutzer kann aber auch einzelne Werte über das pattern combo eingeben. Zum Beispiel beinhaltet der Dateiname die Tracknummer mit einer „0“ vor der ersten Ziffer. Diese „0“ kann mit der Funktion $num(number, y) entfernt werden. Es gibt noch eine große Anzahl weiterer Funktionen, diese sind auf folgender Webseite zu finden: http://puddletag.sourceforge.net/source/scripting.html19

Hier ist das praktische Beispiel dazu:

Nun gehen wir davon aus, dass die puddletag toolbar keine pattern combo mehr beinhaltet. Die toolbar würde in diesem Fall so aussehen:

So hat beispielsweise dieser Button die Funktion, den angezeigten Ordner zu aktualisieren. Entfernt oder fügt man Audiodateien diesem Ordner nachträglich hinzu, werden diese erst nach dem Aktualisieren angezeigt.

19 http://puddletag.sourceforge.net/source/tut1.html (aufgerufen am 09.01.2014) Blockseminar: Software- und Service-Scout Dozent: Jo Tzschenscher 16/21

Cultural-Commons-Collecting-Society & Puddletag FH Schmalkalden - WS 2013/2014 Adem Sen, David Hahn

Daneben ist das Functions Button, welches beim Anklicken dieses Fenster aufruft:

Dieses Fenster ist das case conversion function und kann beispielsweise die Anfangsbuchstaben der selektierten Audiodateien groß oder klein schreiben. Durch diese Funktion ist es auch möglich, nach einem bestimmten Buchstaben mit einem Groß- oder Kleinbuchstaben fortzufahren. Das Feld _selected gibt an, das die durch den Benutzer ausgewählten. Eine weitere Eingabemöglichkeit wäre _all, um alle der im Ordner befindlichen Audiodateien zu selektieren.

Mit einem Klick auf „OK“ wird für die Auswahl die Funktion, die der Benutzer angegeben hat, ausgeführt.20

Verwendung von Tag Sources Mit puddletag können Metainformationen für Audio-Dateien von externen Tag Sources ausgelesen werden. Die folgenden Tag Sources werden dabei von puddletag unterstützt:

- Amazon.com 's Album-Cover - Discogs.com XML-Dienst - FreeDB - Musicbrainz

20 http://puddletag.sourceforge.net/source/tut2.html (aufgerufen am 09.01.2014) Blockseminar: Software- und Service-Scout Dozent: Jo Tzschenscher 17/21

Cultural-Commons-Collecting-Society & Puddletag FH Schmalkalden - WS 2013/2014 Adem Sen, David Hahn

Metadaten-Quellen sind albumbasierend und ermöglichen eine individuelle Identifizierung von Alben durch Metadaten. Standardmäßig wird puddletag alle verfügbaren Metadaten abrufen, die die Tag Sources zur Verfügung stellt. Jedoch können auch nur bestimmte Felder von der Tag Sources abgerufen werden.

Entscheiden was abgerufen werden soll Um zu entscheiden welche Metadaten abgerufen werden sollen, steht das Feld Fields zur Verfügung. Wenn dort nichts eingetragen wird, werden alle verfügbaren Metadaten abgerufen. Um nur spezielle Informationen zu erhalten, wird eine kommaseparierten Liste mit den gewünschten Metainformationen eingetragen. Zum Beispiel: artist, title, album, genre. Es können aber auch Metainformationen ausgeschlossen werden. Dies geschieht mit der Tilde (~) gefolgt von einer kommaseparierte Liste. Wird zum Beispiel ~genre,album eingetragen und die Tag Sources gibt die Informationen für artist, title, album, track, genre zurück, werden nur artist, title, track in die Audiodateien geschrieben.

Blockseminar: Software- und Service-Scout Dozent: Jo Tzschenscher 18/21

Cultural-Commons-Collecting-Society & Puddletag FH Schmalkalden - WS 2013/2014 Adem Sen, David Hahn

Vorgehensweise 1. Wenn möglich die Titel nach aufsteigender Track-Nummer sortieren 2. Alle Titel markieren, für die die Metadaten abgerufen werden sollen 3. Den Tag Sources Dialog öffnen (Windows->Tag) 4. Eine Tag Source wählen 5. Auf Suchen klicken und warten 6. Das richtige Album aus dem Tag Sources Dialog auswählen 7. Puddletag ist nun im Vorschaumodus, hier können noch Änderungen von Hand durchgeführt werden 8. Anschließend auf Write im Tag Sources Dialog oder Write Previews im Vorschaumodus klicken, um die Änderungen zu speichern21

Fazit Puddletag ist ein Leistungsfähiger Audio-Tag-Editor für Linux Systeme. Er bietet alle Funktionen die nötig sind, um Dateinamen und Metainformationen von Audiodateien zu bearbeiten. Besonders die Möglichkeit aus dem Dateinamen die Metainformationen zu extrahieren und auch umgekehrt, ist eine gute Möglichkeit, schnell eine große Menge an Audiodateien zu verarbeiten. Die Möglichkeit die Metainformationen aus dem Internet zu laden, ist ebenfalls eine gute Funktion, welche nicht jeder Audio-Tag-Editor bietet. Damit gehört puddletag zu den besseren Audio-Tag-Editoren auf dem Markt.

21 http://puddletag.sourceforge.net/source/tut4.html (aufgerufen am 09.01.2014) Blockseminar: Software- und Service-Scout Dozent: Jo Tzschenscher 19/21

Cultural-Commons-Collecting-Society & Puddletag FH Schmalkalden - WS 2013/2014 Adem Sen, David Hahn

Quellen http://de.wikipedia.org/wiki/Rechteverwerter (aufgerufen am 06.12.2013) http://de.wikipedia.org/wiki/Gesellschaft_f%C3%BCr_musikalische_Auff%C3%BChru ngs-_und_mechanische_Vervielf%C3%A4ltigungsrechte#Rechtsgrundlage (aufgerufen am 06.12.2013)

Der Standard, C3S: Alternativer Rechteverwerter sagt GEMA den Kampf an, 17. Juli 2013, http://derstandard.at/1373512913179/C3S-Alternativer-Rechteverwerter-sagt- GEMA-den-Kampf-an (aufgerufen am 06.12.2013) https://www.c3s.cc/uber-uns/ (aufgerufen am 06.12.2013) derStandard.at, C3S: Alternativer Rechteverwerter sagt GEMA den Kampf an, 17. 07.2013, http://derstandard.at/1373512913179/C3S-Alternativer-Rechteverwerter-sagt- GEMA-den-Kampf-an (aufgerufen am 06.12.2013)

Michalke Meik, C3S, Köln, 24.10.2013 http://reaktanz.de/blog/images/koeln_social_community_day_2013-10-24_static.pdf (aufgerufen am 06.12.2013)

C3S, Unsere Ziele: Das ist für Euch drin. https://www.c3s.cc/wie-es-funktioniert/ (aufgerufen am 06.12.2013)

Was die Gema-Konkurrenz anders machen will http://www.golem.de/news/c3s-was-die-gema-konkurrenz-anders-machen-will-1309- 101858.html (aufgerufen am 16.12.2013)

Die Gema-Rebellen http://www.stern.de/kultur/musik/neue-musikverwertungsgesellschaft-c3s-die-gema- rebellen-2044399.html (aufgerufen am 16.12.2013) http://puddletag.sourceforge.net/index.html (aufgerufen am 09.01.2014) http://puddletag.sourceforge.net/source/translate.html (aufgerufen am 09.01.2014) http://puddletag.sourceforge.net/news.html (aufgerufen am 09.01.2014)

Blockseminar: Software- und Service-Scout Dozent: Jo Tzschenscher 20/21

Cultural-Commons-Collecting-Society & Puddletag FH Schmalkalden - WS 2013/2014 Adem Sen, David Hahn http://puddletag.sourceforge.net/source/plugins.html (aufgerufen am 09.01.2014) http://puddletag.sourceforge.net/source/tut1.html (aufgerufen am 09.01.2014) http://puddletag.sourceforge.net/source/tut2.html (aufgerufen am 09.01.2014) http://puddletag.sourceforge.net/source/tut3.html (aufgerufen am 09.01.2014) http://puddletag.sourceforge.net/source/tut4.html (aufgerufen am 09.01.2014)

Blockseminar: Software- und Service-Scout Dozent: Jo Tzschenscher 21/21

Software- & Service-Scout

FH Schmalkalden WS 2013/2014 Studiengang: Angewandte Medieninformatik Blockseminar: Software- & Service-Scout

Dozent: Dipl.-Phys. Jo Tzschenscher

[THEORETISCHE AUFGABE] Replicant - Da das von einem großen Suchmaschinenbetreiber bereitgestellte Betriebssystem Android auch proprietäre Software enthält, und dadurch nicht wirklich als freie Software anzusehen ist, hat sich eine Arbeitsgruppe aus der Free Software Foundation heraus gebildet, die sich zum Ziel gesetzt hat, eine zu 100% freie Alternative bereitzustellen. Zeigen Sie die großen und kleinen Probleme dieses Ansatzes auf.

[PRAKTISCHE AUFGABE] LuxRender is a physically based and unbiased rendering engine. Based on state of the art algorithms, LuxRender simulates the flow of light according to physical equations, thus producing realistic images of photographic quality. LuxRender is free software - both for personal and commercial use - and is licensed under the GPL. The program runs on Windows, Mac OS X and Linux. Fully functional exporters are available for Blender and Maya, while exporters for a growing number of 3d applications are under development.

Ronny Gertler

([email protected])

David Zimmermann

([email protected])

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher | 0 Replicant | LuxRender FH Schmalkalden WS 2013/2014 Ronny Gertler & David Zimmermann

Inhaltsverzeichnis

Inhaltsverzeichnis ...... I

Abbildungsverzeichnis ...... II

Tabellenverzeichnis ...... II

1 Replicant – Probleme der freien Android-Alternative ...... 1

1.1 Notwendigkeit freier Alternativen ...... 1

1.2 Replicant und seine Vorteile gegenüber Android ...... 2

1.3 Probleme des Replicant-Ansatzes ...... 3

1.4 Fazit ...... 5

2 LuxRender – Die freie Renderengine ...... 6

2.1 Allgemeines ...... 6

2.1.1 Einleitung ...... 6

2.1.2 Nutzen & Verfügbarkeit ...... 6

2.1.3 Entstehung und Entwicklung ...... 8

2.2 Einstieg in LuxRender ...... 9

2.2.1 Download und Installation ...... 9

2.2.2 Benutzerführung ...... 11

2.3 Funktionalität und wichtige Objekte ...... 13

2.3.1 Rendervorgang ...... 13

2.3.2 Materialien und Texturen ...... 14

2.3.3 Beleuchtung ...... 16

2.3.4 Kameras ...... 17

2.4 Hilfe, Support und Features ...... 18

2.4.1 LuxRender ...... 18

2.4.2 Dokumentation und Community ...... 19

2.4.3 Weitere Anlaufstellen ...... 20

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher | I Replicant | LuxRender FH Schmalkalden WS 2013/2014 Ronny Gertler & David Zimmermann

2.4.4 Features ...... 20

2.5 Resümee ...... 21

Literaturverzeichnis ...... III

Abbildungsverzeichnis

Abbildung 1: LuxRender Aktivierung………………………………………………….10 Abbildung 2: LuxRender Export……………………………………………………….11 Abbildung 3: LuxRender Oberfläche …………………………………………………..12 Abbildung 4: LuxRender Rendervorgang………..…………………………………….13 Abbildung 5: LuxRender Beispielmaterialien………………………………………….15 Abbildung 6: Beispiel für realistische Lichtbrechung………………………………….17 Abbildung 7: Manuelles Einbinden von Materialien………………………………….. 21

Tabellenverzeichnis

Tabelle 1: Unterstützte Betriebssysteme………………………………………………...7 Tabelle 2: Standart-Kanäle……………………………………………………………..15 Tabelle 3: Artikel und Anleitungen für LuxRender……………………………………20

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher | II Replicant | LuxRender FH Schmalkalden WS 2013/2014 Ronny Gertler & David Zimmermann

1 Replicant – Probleme der freien Android-Alternative

1.1 Notwendigkeit freier Alternativen

Den meisten Menschen ist Android als freies Softwaresystem bekannt, welches den Wunsch nach Unabhängigkeit von speziellen Geräten, Firmen oder Software respektiert. Im Vergleich zum iOS, dem Konkurrenzprodukt der Firma Apple, ist diese Annahme wohl verständlich. Diese Ansicht vertritt auch das Computermagazin PC-Welt. In einem Artikel auf dessen Website heißt es unter anderem Android sei offen, frei von Fesseln und ließe dem Nutzer die Wahl.1 Doch inwieweit respektiert Android die Freiheit seiner Nutzer wirklich?

Android ist in erster Linie ein Betriebssystem für Smartphones, welches Linux, einige Bibliotheken, eine Java-Plattform und einige Anwendungen umfasst. Die in Android enthaltende Linux-Version ist nicht vollständig freie Software, da es unfreie binäre Objekte enthält. Android-Plattformen nutzen auch andere unfreie Firmware und Bibliotheken. Der von Google freigegebene Quellcode von Android in den Versionen 1 und 2 ist zwar freie Software, aber nicht ausreichend, damit das Gerät lauffähig ist. Einige der in Android enthaltenden Anwendungen sind im Allgemeinen ebenfalls unfrei.2 Vor allem Treiber und Firmware, die zum Betrieb eines Gerätes benötigt werden, aber auch viele Add-ons stellen proprietäre Software dar. Im Nachrichtenblog der ubuntuusers-Community wird die beschriebene Problematik folgendermaßen zusammengefasst:

„Aus Open-Source-Sicht ist Android sowohl Fluch als auch Segen. Android basiert zwar auf Open-Source-Code und steht eben auch unter einer Open-Source-Lizenz, allerdings sind viele Dienste um Android herum weder Open Source, noch verfolgen diese einen Open-Source-Gedanken. Zudem wird Android hinter verschlossenen Türen entwickelt und maßgeblich von Google geführt.“3

1 Vgl. B. Schischka („Android vs. iOS“, in pcwelt, 2011) 2 Vgl. R. Stallman („Is Android really free software?“, in theguardian, 2011) 3 Svij („Android unter der Haube“, in Ikhaya, 2013)

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher | 1 Replicant | LuxRender FH Schmalkalden WS 2013/2014 Ronny Gertler & David Zimmermann

Weiterhin heißt es:

„Android ist für Endanwender in der Regel nicht völlig frei, doch gibt es Möglichkeiten ein Android-Gerät zu nutzen, welche mit sehr viel freier Software arbeitet.“4

1.2 Replicant und seine Vorteile gegenüber Android

Eine Möglichkeit den Einschränkungen und der Kontrolle durch proprietäre Software zu entgehen stellt die Verwendung eines alternativen Android-Betriebssystems (auch Custom-ROM) dar. Grundlage für Custom-ROMs ist das “Android Open Source Project” (AOSP). Sie basieren also auf einer unverfälschten Android-Version, die anschließend von Entwicklerteams bzw. Communities um Zusatzfunktionen und passende Treiber für die jeweiligen Geräte bereichert werden.5 Replicant ist ein solches System. Es handelt sich dabei um ein freies Projekt, welches völlig ohne proprietäre Teile auskommen will. Das von GNU-Aktivisten gegründete Projekt wird weitgehend positiv aufgenommen und erhält Unterstützung von der Free Software Foundation (FSF). Auch dessen europäischer Ableger, die Free Software Foundation Europe (FSFE), empfiehlt in ihrer Kampagne „Free your Android“ das Replicant-Projekt.6

Die Entwickler des Android-Klons sind der Überzeugung, dass Nutzer von Android- Geräten das Recht haben sollen Ihre Software nach eigenem Belieben modifizieren zu dürfen. Dies sei aber bei den mitgelieferten Android-Systemen nicht der Fall. Auch wenn der Großteil der Software frei ist, seien es eben nicht alle Komponenten. Diese Komponenten beinhalten Bibliotheken und Treiber, welche zum Betrieb der Geräte notwendig sind. Die Nutzung von Replicant anstelle von Android soll es den Benutzern ermöglichen vollständig auf proprietäre Software zu verzichten. Die Entwickler von Replicant betonen außerdem, dass ihr Betriebssystem frei von Googles sonst vorinstallierten Systemen zum Benutzertracking ist. So sei, im Gegensatz zu

4 Svij („Android unter der Haube“, in Ikhaya, 2013) 5 Vgl. N. Heister („Custom-ROMs: Leitfaden für Einsteiger und Umsteiger“, in AndroidPIT, 2013) 6 Vgl. F. Thommes („Android-Cone Replicant 4.0 veröffentlicht“, in ComputerBase, 2012)

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher | 2 Replicant | LuxRender FH Schmalkalden WS 2013/2014 Ronny Gertler & David Zimmermann

Android, der bestmögliche Schutz der Privatsphäre garantiert.7 Für zusätzliche Gratis- Software steht den Usern F-Droid zur Verfügung. Während es sich bei den im Google Play Store angebotenen Programmen oft um nicht-freie Software handelt, stellt F-Droid ein Repositorium von Apps dar, welches ausschließlich kostenlose und freie Software beinhaltet.8

1.3 Probleme des Replicant-Ansatzes

Ein Betriebssystem zu entwickeln welches vollkommen auf Open Source Software basiert ist ein ehrenwertes Ziel. Um dieses Ziel zu erreichen müssen jedoch viele Probleme und Hürden überwunden werden. Zur Weiterentwicklung von Replicant sind eine Menge Zeit und Arbeit erforderlich. Das Kernteam des Projekts besteht aber bloß aus 2 Köpfen, den Entwicklern Denis 'GNUtoo' Carikli und Paul Kocialkowski. Da es sich um ein freies Projekt handelt dauert der Fortschritt also seine Zeit. Die FSF bemüht sich daher um Spenden um das Projekt voranzutreiben. Mit dem in der Spendenaktion gesammelten Geld sollen in erster Linie weitere Smartphones und Tablets für die Entwickler beschafft werden.

Viele zum Teil nicht dokumentierte Treiber und Chips müssen nachkonstruiert oder gar komplett neu geschrieben werden. In der Online-Projektverwaltung9 des Replicant- Projekts wird ersichtlich, wie viel Aufwand betrieben werden muss, um alle proprietären Anteile eines Android-Systems zu ersetzen. Oft ist es nicht möglich alle Funktionen entsprechend abzubilden, sodass einige Geräte mit Replicant nicht die volle Funktionalität aufweisen. Zu nennen ist hier z.B. die Funktion zur Anwendung von Near Field Communication (NFC).10 Eine weitere Technologie die den Entwicklern der Android-Alternative Probleme bereitet ist GPS. So bekennt Paul Kocialkowski:

7 Vgl. P. Kocialkowski (“Why is a fully free software Android stack necessary?”, in Replicant.us, 2013) 8 Vgl. M. Bock („F-Droid“, Wikipedia, 2013) 9 Siehe Redmine Replicant (http://www.redmine.replicant.us) 10 Vgl. F. Thommes („Android-Klon Replicant wird von der FSF gefördert“, in ComputerBase, 2013)

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher | 3 Replicant | LuxRender FH Schmalkalden WS 2013/2014 Ronny Gertler & David Zimmermann

„We are also having tough times with GPS: all the GPS chips found in the Android phones we support implement a secret and non-documented protocol that we just cannot figure out.”11

Nicht für jedes Android-Gerät existiert auch eine Replicant-Alternative. Erhältlich ist das System zum aktuellen Zeitpunkt für 11 mobile Geräte.12 Hier wird ein weiteres Problem ersichtlich. Das Open-Source-Betriebssystem muss für alle entsprechenden Geräte einzeln entwickelt bzw. angepasst werden. Dies gilt natürlich auch für deren Updates. Alles in allem ist das Überschreiben der originalen Android-Version mit einer alternativen Version ein schweres Unterfangen für Interessierte ohne das nötige Fachwissen. Unter anderem muss sich Root-Zugriff verschafft, der Bootloader entsperrt, ein modifiziertes Recovery-Image aufgespielt und einige geräte- bzw. softwareabhängige Schritte durchgeführt werden.13 Problematisch hierbei ist, dass beim Entsperren des Bootloaders die Garantie des Geräteherstellers verloren gehen kann.

Wie oben erwähnt, sind Nutzer dank der Entwicklung von F-Droid nicht mehr auf den Google Play Store angewiesen. Stattdessen können alternative Apps heruntergeladen werden, bei welchen sicher ist, dass es sich nicht um proprietäre Software großer Anbieter handelt. Doch wer garantiert, dass die bei F-Droid angebotene Software nun auch sicher ist? Firmen wie Apple argumentieren, dass es Kontrolle bräuchte, um Datenschädlinge zu verhindern. Tatsächlich gilt Android unter Sicherheitsexperten als gefährdeter, weil nicht jede einzelne App auf Sicherheitsmängel überprüft wird. Jedermann kann ungefragt eine Plattform auf einem freien Marktplatz wie F-Droid errichten und selbst Apps anbieten. Der Quellcode aller Anwendungen ist öffentlich und ermöglicht so einen Einblick in die Software. Personen ohne die nötigen Kenntnisse haben allerdings nur die Möglichkeit darauf zu hoffen, dass die Anwendung bereits von Nutzern die über entsprechende Programmierkenntnisse verfügen genutzt und unter die Lupe genommen wurde.

Neben Replicant gibt es eine ganze Reihe weiterer alternativer Custom-ROMs. Hierzu zählen unter anderem Paranoid Android, CyanogenMod, Carbon ROM, SlimBean oder

11 P. Kocialkowski (“Why is a fully free software Android stack necessary?”, in Replicant.us, 2013) 12 Vgl. D. Carikli, P. Kocialkowski (Supported Devices, in Replicant.us, 2013) 13 Vgl. D. Wolski („Android individuell - dank Custom ROM”, in pcwelt, 2013)

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher | 4 Replicant | LuxRender FH Schmalkalden WS 2013/2014 Ronny Gertler & David Zimmermann

Cataclysm. Diese Fülle an verschiedenen Systemen erschwert es den Überblick zu bewahren. Jede Custom-ROM hat seine eigenen Stärken und eignet sich für spezielle Interessen. Die große Stärke des Replicant-Projekts ist seine Freiheit von proprietärer Software, vorinstallierten Systemen zum Benutzertracking sowie den Google-eigenen Services. Diese Vorteile wurden allerdings zu Lasten der Performance umgesetzt. Replicant baut auf der sehr performanten CyanogenMod-ROM auf, welche nicht-freie Treiber verwendet um auf möglichst vielen Geräten lauffähig zu sein. Diese Treiber wurden bei Replicant durch freie Software ersetzt, wodurch aber Geschwindigkeit eingebüßt wird. „Replicant is slower than CyanogenMod or Google’s version of Android”, räumt P. Kocialkowski ein.14

1.4 Fazit

Um das Ziel des vollkommen freien Systems für alle Geräte weiter voranzutreiben ist die Hilfe von Mitstreitern nötig. Auch wenn das Replicant-Projekt - und wofür es steht - an Beliebtheit zunimmt, bleibt zu bezweifeln, ob sich die breite Masse über das Problem proprietärer Software und ihrer Auswirkungen Gedanken macht. Da Android in der öffentlichen Medienwelt oft als freies System angepriesen wird lehnt sich der Durchschnittsnutzer ruhigen Gewissens zurück. Aus Sicht der Autoren sollte daher von populären Blogs, Magazinen usw. mehr auf die Thematik hingewiesen und deren mögliche Folgen aufgezeigt werden.

Auch durch den Umstieg auf Replicant können nicht alle Sicherheitsrisiken komplett ausgeschlossen werden. So kommt P. Kocialkowski zu dem Schluss:

“If you need real security, simply don’t use a phone”.15

Auch durch Replicant kann der Zugriff durch gewisse “Hintertüren” nicht ausgeschlossen werden, welchem sich Hersteller oder Strafverfolgungsbehörden bedienen. Dennoch ist die Nutzung des freien Android-Klons zumindest ein Schritt in die richtige Richtung für diejenigen, die sich mehr Sicherheit, Unabhängigkeit und Privatsphäre wünschen.

14 Vgl. P. Kocialkowski („Replicant: The Struggle for Free Mobile”, in LINUX Magazine, 2013) 15 P. Kocialkowski („Replicant: The Struggle for Free Mobile”, in LINUX Magazine, 2013)

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher | 5 Replicant | LuxRender FH Schmalkalden WS 2013/2014 Ronny Gertler & David Zimmermann

2 LuxRender – Die freie Renderengine

2.1 Allgemeines

2.1.1 Einleitung

Für Entwickler von Animationen und realistischen Modellen existiert eine Vielzahl von 3D-Modellierungsprogrammen. Mit ihrer Hilfe können alle vorstellbaren Objekte unter anderem konstruiert, in Szene gesetzt, animiert und entsprechend gerendert werden. In der Computergrafik bezeichnet das Rendern die Erzeugung eines Bildes aus Rohdaten bzw. aus einer Szene. Hierbei handelt es sich um ein virtuelles räumliches Modell, das Objekte und deren Materialeigenschaften, Lichtquellen, sowie die Position und Blickrichtung eines Betrachters definiert. Computerprogramme zum Rendern von Bildern werden Renderer oder auch Render-Engines genannt.16

In Modellierungsprogrammen, wie z.B. Cinema 4D, 3D Studio Max oder Blender, ist in der Regel eine Render-Engine integriert. Neben der mitgelieferten Komponente ist es aber auch möglich weitere Renderer nachzurüsten, oder auf externe Varianten zurückzugreifen. Bei LuxRender handelt es sich um ein solches Programm. Auf den folgenden Seiten soll ein Überblick zu LuxRender gegeben werden.

2.1.2 Nutzen & Verfügbarkeit

LuxRender ist eine freie Render-Engine zur Erzeugung physikalisch korrekter Bilder. Es handelt sich um einen alleinstehenden 3D-Renderer, welcher daher nicht die Möglichkeit anbietet, Szenen im Programm selbst zu erstellen.17 Zu rendernde Inhalte werden mit anderen 3D-Grafikprogrammen erstellt und dann mit einem der verfügbaren Exporter in das LuxRender-Format umgewandelt. Hierbei wird LuxRender als Standalone-Programm betrieben. Es besteht aber auch die Möglichkeit eine LuxRender- Erweiterung in viele 3D-Modellierungsprogramme einzubinden. Exporter und Erweiterungen existieren für Blender, 3D Studio Max, SketchUp, Cinema 4D, DAZ Studio, XSI, Poser und Carrara und Maya.

16 Vgl. Wikipedia (Szene, Wikipedia, 2013) 17 Vgl. LuxRender Description (http://www.luxrender.net/en_GB/description, Seitenabruf: 5.11.2013)

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher | 6 Replicant | LuxRender FH Schmalkalden WS 2013/2014 Ronny Gertler & David Zimmermann

Aufgrund dessen, dass LuxRender sowohl die CPU als auch die GPU bei der Berechnung nutzen kann, ist LuxRender ein sehr leistungsstarker Renderer. Ein Benchmark mit verschiedenen GPUs und CPUs wurden auf Basis einer Beispielszene ermittelt, und die Ergebnisse in der LuxMark Results DB18 veröffentlicht. Für die folgenden Systeme ist LuxRender aktuell verfügbar:19

Microsoft Windows Mac OSX Linux Windows XP SP3 OSX 10.5 (Leopard) Ubuntu Windows Vista 32bit OSX 10.6 (Snow Leopard) Debian Windows Vista 64bit Gentoo Windows 7 32bit Arch Linux Windows 7 64bit

Tabelle 1: Unterstützte Betriebssysteme

Bei LuxRender handelt es sich unter anderem um eine “unbiased” Render-Engine. Das heißt, es werden keine technischen Kniffe angewendet um realistisches Verhalten zu simulieren. Allen Berechnungen liegen komplexe Modelle physikalischer Gleichungen zugrunde. Somit ergeben sich für LuxRender, wie auch andere unbiased Renderer, sowohl Vor- als auch Nachteile. Es ist möglich äußerst realistische Ergebnisse zu erzielen, dafür kann der Rendervorgang sehr viel Zeit in Anspruch nehmen. Außerdem wird die künstlerische Freiheit durch die physikalische Korrektheit von LuxRender eingeschränkt. Benutzer haben allerdings die Möglichkeit zwischen physikalischer Genauigkeit (unbiased) und Rendergeschwindigkeit (biased) zu wählen. Durch die Unterstützung der HDR-Ausgabe können die Renderergebnisse in verschiedenen Dateiformaten, z.B. als .png, .tga oder .exr gespeichert werden.20

Weiterhin steht für Luxrender eine Vielzahl von Materialtypen bereit. Es existieren generische Materialien wie matt und glänzend, aber auch Materialien wie Metall, Glas oder Autolack. Komplexe Eigenschaften wie Absorption oder Brechung können beschrieben werden. Aktuelle Rendervorgänge können jederzeit pausiert und wieder

18 Siehe LuxRender Benchmark (http://www.luxrender.net/luxmark) 19 Vgl. LuxRender System Support (http://www.luxrender.net/en_GB/system_support, Seitenabruf: 5.11.2013) 20 Vgl. LuxRender Features (http://www.luxrender.net/wiki/Features, Seitenabruf: 5.11.2013)

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher | 7 Replicant | LuxRender FH Schmalkalden WS 2013/2014 Ronny Gertler & David Zimmermann fortgesetzt werden. Beim Pausieren kann der aktuelle Stand in eine Datei geschrieben, und so auch auf einem anderen Computer fortgesetzt werden. Außerdem kann die Renderzeit durch Parallelnutzung verschiedener Computer verringert werden.21

Ein weiteres Feature von LuxRender ist die Verwendung von Lichtgruppen, welche genutzt werden können, um die Beleuchtung durch einzelne oder zusammengefasste Lichtquellen zu ändern. Damit ist es möglich bereits gerenderte Bilder nachträglich so zu modifizieren, als wenn sie unter anderen Lichtbedingungen entstanden wären. Lichtquellen können dabei sowohl im Farbton als auch in der Intensität, mit der sie zum Gesamtergebnis beitragen, geändert werden.22

2.1.3 Entstehung und Entwicklung

Die Entwicklung von LuxRender begann im Jahr 2007. Als Basis bedienten sich die Entwickler dem von Matt Pharr und Greg Humphreys entwickelten Renderer „PBRT“, welcher eher für den akademischen bzw. wissenschaftlichen Einsatz ausgelegt ist. Eine kleine Gruppe von Entwicklern setzte sich das Ziel, auf der Grundlage von PBRT, eine neue Render-Engine ins Leben zu rufen, welche durch eine leicht zu bedienende Oberfläche die Erstellung digitaler Kunst für möglichst viele Menschen ermöglichen sollte. Da bereits PBRT unter der GPL Lizenz verfügbar war, wurde auch LuxRender als freie Software unter Version 3 der GNU General Public License (GPL) verbreitet. Somit darf das Programm ohne Einschränkungen sowohl privat als auch kommerziell genutzt werden. Mit LuxRender erstellte Werke dürfen sowohl verteilt als auch verkauft werden. Das gleiche gilt für das Programm an sich, solange keine Lizenzgebühren erhoben werden. Der Quellcode ist frei erhältlich und darf nach eigenen Bedürfnissen angepasst werden. Auch modifizierte Versionen der Software dürfen vertrieben werden, der Quellcode ist dabei aber frei zur Verfügung zu stellen.

Ende 2007 wurde die erste Version von LuxRender veröffentlicht. Seit dem Release von LuxRender 0.5 im Juni 2008 wurde auch der allgemeine Gebrauch des Programms möglich. Seitdem entstand eine ständig wachsende Community rund um das Projekt, wodurch es weiterentwickelt und Fehler beseitigt werden konnten. Vor allem die

21 Vgl. LuxRender Features (http://www.luxrender.net/wiki/Features, Seitenabruf: 5.11.2013) 22 Vgl. LuxRender Interface (http://www.luxrender.net/wiki/LuxRender_1.0_Interface, Seitenabruf: 6.11.2013)

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher | 8 Replicant | LuxRender FH Schmalkalden WS 2013/2014 Ronny Gertler & David Zimmermann

Rendergeschwindigkeit sowie die Anzahl der verfügbaren Funktionen und Exporter sind gewachsen. Die aktuelle Version ist zum jetzigen Zeitpunkt LuxRender 1.3.1.23

Laut den Entwicklern von LuxRender ist und bleibt das Programm auch in Zukunft freie Software, sowohl für private als auch für kommerzielle Nutzung. Das Projekt wird von Menschen mit einer Leidenschaft für Programmierung und Computergrafik weiterentwickelt, die Spaß an ihrer Arbeit haben, und das Ergebnis gerne mit anderen Menschen teilen. Unter http://www.luxrender.net/mantis wurde eine Seite eingerichtet, die einen Überblick über neue Features und behobene Bugs gibt. LuxRender- Entwicklern wird auf der offiziellen Website eine C/C++ API, sowie eine ausführliche Dokumentation zur Verfügung gestellt. Somit können sich Interessierte eigenständig in die Software einarbeiten, sie anpassen, und weiterentwickeln.24

2.2 Einstieg in LuxRender

2.2.1 Download und Installation

Das Setup von LuxRender ist auf der Projektwebsite www.luxrender.net erhältlich. Dabei wird zum einen zwischen dem verwendeten Betriebssystem unterschieden (siehe Tabelle 1), und zum anderen, ob das System OpenCL unterstützt. Bei OpenCL handelt es sich um eine Engine, mit welcher rechenintensive Vorgänge auf der Graphical Processing Unit (GPU) parallelisiert werden können.25 Außerdem hat der Nutzer die Wahl zwischen der Standalone-Lösung sowie LuxRender als Erweiterung für verschiedene unabhängige 3D-Modellierungsprogramme.

Um die Standalone-Lösung zu verwenden ist zuerst das bevorzugte Modellierungsprogramm zu installieren. Um die Rohdaten der Szene mit LuxRender verarbeiten zu können, muss nun ein Exporter für das jeweilige Programm integriert werden. Leider ist die Installation des entsprechenden Exporters für die unterstützten Modellierungsprogramme unterschiedlich durchzuführen. Informationen zu den verschiedenen Exportern und deren Installation stehen ebenfalls auf www.luxrender.net zur Verfügung.

23 Vgl. LuxRender History (http://www.luxrender.net/en_GB/history, Seitenabruf: 5.11.2013) 24 Vgl. LuxRender Description(http://www.luxrender.net/en_GB/description, Seitenabruf 8.11.2013) 25 Vgl. Wikipedia(OpenCL, Wikipedia, 2013)

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher | 9 Replicant | LuxRender FH Schmalkalden WS 2013/2014 Ronny Gertler & David Zimmermann

Um mittels Blender erstellte Szenen an LuxRender übergeben zu können muss der für Blender spezifische Exporter, LuxBlend, integriert werden. Hier ist zu unterscheiden ob Blender in einer Version ab 2.5 oder älter vorliegt, da für die einzelnen Versionen verschiedene Exporter zu wählen sind. Beim Download der aktuellen Version von LuxRender (v1.3.1) ist LuxBlend bereits enthalten. Das Exporter-Skript muss nun in den Benutzereinstellungen von Blender manuell eingebunden werden. Hierzu ist das Menü „user preferences“ aufzurufen und der Reiter „addons“ zu wählen. Hier kann das LuxBlend-Paket ausgewählt werden, welches sich im Verzeichnis der LuxRender- Installation befindet.

Abbildung 1: LuxRender Aktivierung

Quelle: Eigene Darstellung

Blender integriert nun alle erforderlichen Dateien. Unter der Kategorie Renderer sind alle integrierten Render-Engines aufgelistet. Hier kann LuxRender aktiviert werden. Nun ist es möglich die gewünschte Szene in das LuxRender-Format zu exportieren, welches die Dateiendung .lxs besitzt. Diese Datei kann mit der Standalone-Lösung von LuxRender geöffnet, angepasst und gerendert werden. Liegt ein neues Update von LuxBlend vor, so muss dieses nach dem Herunterladen entpackt werden. Danach ist in Blender lediglich der Pfad der veralteten Version durch den Pfad zum Verzeichnis der neuen Version zu ersetzen.

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher | 10 Replicant | LuxRender FH Schmalkalden WS 2013/2014 Ronny Gertler & David Zimmermann

Abbildung 2: LuxRender Export Viele Nutzer klagten über Schwierigkeiten LuxRender in Blender zu integrieren. Dies rührt wohl daher, dass eine Vielzahl verschiedener Versionen von Blender und LuxRender bzw. LuxBlend existieren, welche nicht alle untereinander kompatibel sind. Die Integration von LuxRender ist nicht unbedingt benutzerfreundlich, und führt außerdem nicht in allen Fällen zum Erfolg. Auch wenn LuxRender als Setup angeboten wird, funktioniert diese nicht immer fehlerfrei, wodurch die Software auf dem oben beschriebenen Weg einzubinden ist. Auch Quelle: Eigene Darstellung die OpenCL-unterstützende Version kann zu Problemen führen, wenn das System nicht über die Technologie verfügt, oder ein veralteter Grafiktreiber genutzt wird.26 Um den Nutzern die Verwendung von LuxRender mit Blender zu vereinfachen werden daher verschiedene Versionen von Blender auf http://www.graphicall.org angeboten, welche alle möglichen Add-ons enthalten – darunter natürlich auch LuxRender. Interessenten haben hier die Möglichkeit eine Version zu suchen, welche den eigenen Bedürfnissen entspricht. Diese kann dann als Paket heruntergeladen und direkt gestartet werden. Alle in der Beschreibung aufgeführten Add-ons sind nun bereits integriert, und müssen lediglich bei Bedarf aktiviert werden.

Für andere 3D-Modellierungssoftware ist den Instruktionen auf der LuxRender-Website zu folgen. Individualisierte Installationen, welche LuxRender von Haus aus enthalten, werden nicht zum freien Download angeboten, da es sich bei den meisten Modellierungsprogrammen, wie 3D Studio Max oder Cinema 4D, nicht um freie Open Source Software handelt.

2.2.2 Benutzerführung

Die Benutzeroberfläche des Renderers setzt sich aus mehreren Reitern zusammen, welche unterschiedliche Funktionen und Einstellungen enthalten. Zusätzlich existiert

26 Vgl. LuxRender GPU (http://www.luxrender.net/wiki/GPU, Seitenabruf: 9.11.2013)

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher | 11 Replicant | LuxRender FH Schmalkalden WS 2013/2014 Ronny Gertler & David Zimmermann eine überschaubare Menüleiste. Hier befinden sich elementare Funktionen wie das Öffnen von Dateien, das Schließen des Programms, die Möglichkeit den Rendervorgang zu stoppen bzw. fortzusetzen, sowie Hilfsfunktionen. Unterhalb der Menüleiste befinden sich vier Reiter – Render, Queue, Network und Log, wobei vor allem der Reiter Render wichtige Optionen liefert. Hier können verschiedene Korrekturen vorgenommen werden. Unter anderem können Einstellung zum Tone Mapping, dem Farbraum, Linseneffekte und Lichteinstellungen vorgenommen werden. Diese Korrekturen beeinflussen lediglich das Endresultat. Einstellungen zur Szene und deren Objekten, Lichtern, Materialien usw. sind in Blender, bzw. dem integrierten Exporter vorzunehmen. Das Dateimenü und eine untere Leiste, die Informationen über die Rendergeschwindigkeit und den Renderfortschritt darstellt, sind immer sichtbar, egal welcher Tab aktiv ist.

Abbildung 3: LuxRender Oberfläche

Quelle: Eigene Darstellung

Wird LuxRender im verwendeten Modellierungsprogramm aus der Liste der aktiven Renderer gewählt, erscheinen automatisch seine programmeigenen Funktionen und Einstellungsmöglichkeiten. Die Benutzeroberfläche passt sich dabei dem Erscheinungsbild der jeweiligen Software, hier Blender, an. Unerfahrene Nutzer müssen mit einer gewissen Einarbeitungszeit rechnen, da viele verschiedene Optionen bereit stehen, welche nicht immer selbsterklärend sind. Ein Leitfaden, Tipps oder Anmerkungen sind in LuxRender nicht integriert. Erschwerend ist auch die Tatsache, dass keine Übersetzungen für LuxRender existieren. So kann es für Neulinge trotz guter

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher | 12 Replicant | LuxRender FH Schmalkalden WS 2013/2014 Ronny Gertler & David Zimmermann

Englischkenntnisse schwierig sein zwischen den vielen Fachbegriffen die gesuchten Einstellungsmöglichkeiten zu finden. Da in vielen anderen Modellierungsprogrammen, Anleitungen und Artikeln allerdings ebenfalls auf die englischen Begriffe zurückgegriffen wird, kann es auf lange Sicht nicht schaden, sich mit der Thematik auseinanderzusetzen.

2.3 Funktionalität und wichtige Objekte

2.3.1 Rendervorgang

LuxRender bringt eine ganze Reihe an Funktionen mit. Die vielen verschiedenen Einstellungsmöglichkeiten lassen bei korrekter Anwendung keine Wünsche offen. Einige dieser Optionen werden auch in anderen Renderern bzw. dem 3D- Modellierungsprogramm selbst angeboten. LuxRender basiert allerdings auf sehr komplexen physikalischen Modellen und bietet viele zusätzliche Einstellungen, wodurch äußerst realistische Ergebnisse möglich sind. Anders als traditionelle biased- Renderer, die nur mit eindeutigen Farben wie rot, grün und blau arbeiten, benutzt LuxRender individuelle Wellenlängen. Dies erlaubt LuxRender mit Effekten zu arbeiten, die von den Wellenlängen abhängig sind, wie zum Beispiel Farbzerstreuung oder dem akuraten Erfassen der Farben glühender Lichter.27 Dadurch sehen die gerenderten Bilder natürlicher aus. Wird ein Rendervorgang gestartet, gibt es bereits nach wenigen Sekunden erste Ergebnisse zu begutachten, welche allerdings über keine gute Qualität verfügen. LuxRender rendert im Hintergrund stetig weiter, und aktualisiert den aktuellen Stand. Der Rendervorgang läuft nun bis der Benutzer mit der Qualität des Ergebnisses zufrieden ist, und das Rendern abbricht.

Abbildung 4: LuxRender Rendervorgang

Quelle: Eigene Darstellung

27 Vgl. LuxRender Features (http://www.luxrender.net/wiki/features, Seitenabruf: 11.11.2013

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher | 13 Replicant | LuxRender FH Schmalkalden WS 2013/2014 Ronny Gertler & David Zimmermann

LuxRender liefert zahlreiche unterschiedliche Render-Algorithmen. Die Wahl des richtigen Algorithmus hängt von der Art und dem Umfang der Szene ab. Außerdem ist zu unterscheiden ob das Ergebnis ein einzelnes Bild oder eine Animation werden soll. Durch die richtige Wahl des Algorithmus kann der Rendervorgang deutlich beschleunigt werden. Für simple Szenen und Außenaufnahmen ist allgemein z.B. „path tracing“ die effizienteste Methode. Für Innenaufnahmen und Szenen mit komplexer Beleuchtung wird „bidirectional path tracing“ kombiniert mit „metropolis sampling empfohlen.28

Ein nützliches Feature ist die Unterstützung Network-Rendering. So können mehrere Computersysteme parallel an einer Szene rendern. Dabei ist es egal ob die Computer in einem lokalen Netzwerk oder über das Internet vernetzt sind. Um das Rendern auf viele Ressourcen zu verteilen, wird die Engine LuxFire zur Verfügung gestellt. Die Entwickler von LuxRender merken allerdings an, dass Nutzer entsprechende Informatik-Kenntnisse benötigen, um beim Network-Rendering Erfolg zu haben.29

2.3.2 Materialien und Texturen

LuxRender unterstützt eine Vielfalt an physikalisch korrekten Materialien. Diese unterscheiden sich durch die Reflektion der Lichtstrahlen auf der Oberfläche und dem Grad der Durchlässigkeit der Lichtstrahlen. Je nach Material können verschiedene Einstellung wie Farbe, Textur oder Rauigkeit getroffen werden. Materialien können über verschiedene Farb- und Texturkanäle (channels) konfiguriert werden. Jeder Kanal stellt eine einzelne Charakteristik dar. Welche Kanäle verfügbar sind, ist vom gewählten Material abhängig.30 In der folgenden Tabelle sind alle verfügbaren Standard-Kanäle beschrieben.

28 LuxRender Render settings (http://www.luxrender.net/wiki/LuxRender_Render_settings, Seitenabruf: 11.11.2013) 29 LuxFire (http://www.luxrender.net/wiki/LuxFire, Seitenabruf: 10.11.2013) 30 LuxRender Materials (http://www.luxrender.net/wiki/LuxRender_Materials#Channels, Seitenabruf: 10.11.2013)

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher | 14 Replicant | LuxRender FH Schmalkalden WS 2013/2014 Ronny Gertler & David Zimmermann

Kanal Beschreibung Diffus Basisfarbe von nicht transparenten Objekten Specular Reflektionsfarbe Transmission Farbe des durch ein transparentes Material scheinenden Lichts Bump Mapping - Schattierung einer lokalen Oberfläche wird durch eine Textur verändert, ohne die Geometrie des Objekts zu verändern - detailreiche Oberfläche ohne komplexes Modell möglich - im Gegensatz zu diffus, specular & transmission Helligkeit statt Farbe der Textur genutzt Displacement Mapping Oberflächengeometrie wird aufgrund von Helligkeitswerten einer Textur verändert Alpha Maps definieren Teile einer Oberfläche als (teilweise) durchsichtig

Tabelle 2: Standart-Kanäle

Abbildung 5: LuxRender Beispielmaterialien

Quelle: LuxRender Materials (LuxRender Documentation)30

Die Texturunterstützung von LuxRender ist sehr stark und flexibel. Sowohl Farbtexturen, Bildtexturen, als auch eine große Anzahl an prozeduralen 2D- und 3D- Texturen sind möglich. Texturen können dazu verwendet werden, um Materialeigenschaften zu verändern bzw. zu modifizieren. Bei der Verwendung von Grafiken als Textur können die Parameter Gamma, Gain und Filter angepasst werden. Diese sind für alle Kanäle verfügbar, führen aber ja nach Kanal zu unterschiedlichen Ergebnissen.31

Wie oben erwähnt, ist es auch möglich prozedurale Texturen zu verwenden. Dabei handelt es sich um Texturen, welche durch mathematische Funktionen bestimmt sind. Das heißt, dass Texturwerte, wie z.B. der Farbwert, an jedem Punkt berechnet werden

31 LuxRender Textures (http://www.luxrender.net/wiki/LuxRender_Textures, Seitenabruf: 10.11.2013)

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher | 15 Replicant | LuxRender FH Schmalkalden WS 2013/2014 Ronny Gertler & David Zimmermann und nicht durch ein existierendes Bitmap festgelegt sind. Durch Kombinieren von verschiedenen prozeduralen Texturen können sehr komplexe Materialien erstellt werden. Ebenso kann durch ihre Verwendung Zeit eingespart werden. Viele prozedurale Texturen von LuxRender wurden von der Software Blender übernommen, wodurch die Texturunterstützung hier sehr gut zusammenarbeitet. Viele dieser prozeduralen Texturen sind dreidimensional, was bedeutet, dass die Texturen unabhängig vom Objekt an den Rändern zusammenpassen.32 LuxRender beinhaltet eine ganze Reihe prozeduraler Texturen von Haus aus.33

Neben den beschrieben Texturen existieren in LuxRender spektrale Texturen, welche verschiedene Farbtexturen beinhalten, um ein Lichtspektrum zu beschreiben. Sie werden verwendet um Lichtabsorptionen und Lichtemissionen darzustellen. Zusätzlich sind „Fresnel Texturen“ möglich, um spezielle optische Eigenschaften festzulegen.

2.3.3 Beleuchtung

LuxRender unterstützt alle gängigen Arten von Lichtquellen, also Punktlichter, Spotlichter, Area-Lichter (auch Emitter genannt) und Weltlichter. Eine Szene muss mindestens eine Lichtquelle beinhalten. Natürlich können auch viele Arten von Lichtquellen in einer Szene kombiniert werden. Alle Lichtquellen können entweder eine konstante Farbe, eine Textur oder ein benutzerdefiniertes Spektrum besitzen. Mit Hilfe von Lichtgruppen können die Farbtemperatur und -intensität jeder Lichtquelle während des Renderns in Echtzeit angepasst werden.34

Lichttechnische Daten in Form von IES-Diagrammen können genutzt werden, um die Lichtstreuung einer Lichtquelle genau zu definieren. Dabei handelt es sich um Informationen über die Lichtabstrahlung eines Leuchtmittels. Solche Informationen werden normalerweise von Lampenherstellern zur Verfügung gestellt. LuxRender bietet auch die Möglichkeit von "Environment Maps" zu nutzen. Dabei handelt es sich um hochauflösende Bilder die als Lichtquelle fungieren.

32 Blender Dokumentation (Prozedurale Texturen, http://de.wikibooks.org/wiki/Blender_Dokumentation:_Prozedurale_Texturen, Seitenabruf: 10.11.2013) 33 LuxRender Textures (http://www.luxrender.net/wiki/LuxRender_Textures, Seitenabruf: 10.11.2013) 34 LuxRender Lighting (http://www.luxrender.net/wiki/LuxRender_Lighting, Seitenabruf: 11.11.2013)

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher | 16 Replicant | LuxRender FH Schmalkalden WS 2013/2014 Ronny Gertler & David Zimmermann

Wenn Lichtquellen Oberflächen beleuchten, wird das zurückgeworfene Licht durch einige Faktoren, wie z.B. die spektrale Verzerrung der Lichtquelle und des Untergrundes beeinflusst. Da spektrale Charakteristiken nicht in einem RGB-Bild enthalten sind, gibt es einige andere Wege um diese in LuxRender einzustellen. Bei der Benutzung von RGB- Farben versucht LuxRender ein physikalisch korrektes Spektrum der erwünschten Farbe zu erzeugen.35

Abbildung 6: Beispiel für realistische Lichtbrechung

Quelle: LuxRender - Creating Beautiful Caustics36

2.3.4 Kameras

Durch den Einsatz von Kameras wird die Perspektive festgelegt, aus welcher die Szene schließlich gerendert wird. Außerdem können verschiedene Anpassungen, welche sich teilweise an realen Kameras orientieren, vorgenommen werden um das spätere Ergebnis zu beeinflussen. LuxRender unterscheidet zwischen vier verschiedenen Kameratypen – der perspektivischen Kamera, der realistischen Kamera, der orthografischen Kamera und der Umgebungskamera.

Die perspektivische Kamera erstellt ein Bild aus einer dreidimensionalen Szene, repräsentiert aber nicht die Unvollkommenheit und Krümmungen, die Linsen echter Kameras normalerweise haben. Die realistische Kamera ist der Kameratyp, der dem Verhalten echter Kameras am meisten ähnelt. Der Unterschied zur perspektivischen

35 LuxRender Lighting (http://www.luxrender.net/wiki/LuxRender_Lighting, Seitenabruf: 11.11.2013) 36 LuxRender - Creating Beautiful Caustics (http://www.luxrender.net/wiki/Creating_Beautiful_Caustics, Seitenabruf am 09.11.2013)

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher | 17 Replicant | LuxRender FH Schmalkalden WS 2013/2014 Ronny Gertler & David Zimmermann

Kamera besteht darin, dass die realistische Kamera die Krümmung des Lichts durch die Linse mitberechnet. LuxRender enthält Kameradaten für einige Kameramodelle, welche als Voreinstellung genutzt werden können. Die orthographische Kamera erstellt eine entsprechende Projektion der Szene. Dies kann benutzt werden, um gerade Projektionen oder Parallelprojektionen zu erstellen. Besonders nützlich ist dies für den Architekturbereich. Die Umgebungskamera erstellt einen 360 Grad-Blick, ausgehend von der aktuellen Kameraposition. Ist die Kamera komplett horizontal positioniert, wird ein Panorama erstellt.37

Je nach Kameratyp können verschiedene Einstellungen durchgeführt werden. Es können z.B. Anpassungen zur Tiefenschärfe, Belichtungszeit, des Sichtfelds, Filmgröße, Blende oder Bewegungsunschärfe vorgenommen werden.

2.4 Hilfe, Support und Features

2.4.1 LuxRender Website

Sollten bei Benutzern von LuxRender Probleme oder Fragen aufkommen, sind Ansprechpartner und Plattformen welche zur Problemlösung beitragen, unverzichtbar. Die erste dieser Anlaufstellen ist natürlich die offizielle Website von LuxRender (http://www.luxrender.net). Hier werden den Besuchern alle möglichen Informationen zu LuxRender bereitgestellt, unter anderen Instruktionen zur Installation, Neuigkeiten über aktuelle Releases, allgemeine Informationen über LuxRender und dessen Entwicklung, und vieles mehr. Natürlich wird der Renderer hier auch in allen möglichen Variationen zum Download zur Verfügung gestellt. Außerdem werden die Facebook- Seite, ein Forum der LuxRender-Community, ein Chat und LuxMark, eine Datenbank verschiedener Benchmarks, verlinkt. Eine weitere Datenbank mit mit Materialien für LuxRender wurde ebenfalls eingerichtet, und ist unter „Download“ zu finden. Auf direkte Möglichkeiten zur Kontaktaufnahme wie Formulare, Telefonnummern oder E- Mail-Adressen wurde verzichtet. Auch ein FAQ ist nicht vorhanden. Ansprechpartner sind jedoch an anderer Stelle, wie z.B. der LuxRender-Community, zur Genüge zu finden.

37 LuxRender Cameras (http://www.luxrender.net/wiki/LuxRender_Cameras, Seitenabruf: 11.11.2013)

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher | 18 Replicant | LuxRender FH Schmalkalden WS 2013/2014 Ronny Gertler & David Zimmermann

2.4.2 Dokumentation und Community

Im Hauptmenü der LuxRender-Website ist unter anderem eine Verlinkung zu dessen Community-Forum (http://www.luxrender.net/forum) zu finden. Hier werden regelmäßig alle relevanten Themen wie aktuelle Releases und Features, Benchmarks, Materialien, Exporter und vieles weitere diskutiert. Außerdem werden die Ergebnisse von unterschiedlichen Design-Wettbewerben veröffentlicht und analysiert. Auch eine Kategorie für Dokumentationen und Tutorials wurde angelegt. Nach der Registrierung ist es möglich, zu allen Themen Stellung zu nehmen, und auch eigene Threads anzulegen. Eine der Kategorien mit den meisten Threads ist die Kategorie „LuxRender User Support“, in welcher Benutzer ihre Fragen und Probleme beim Umgang mit LuxRender stellen können, um sich von erfahrenen Nutzern helfen zu lassen. Die Kategorie umfasst aktuell ca. 2.200 Threads mit knapp 17.000 Posts. Insgesamt wurden im Forum bereits ca. 85.000 Posts in ca. 8.000 Threads veröffentlicht, welche in 14 Kategorien unterteilt sind. Außerdem befindet sich in der Menüleiste ein Link „Source“, unter welchem der Quellcodes aller Dateien von LuxRender zu finden sind. Das Forum wird, wie auch die Website, komplett in englischer Sprache geführt.

Neben der Community steht den Nutzern eine Dokumentation (http://www.luxrender.net/wiki/Main_Page) in Form eines Wikis zur Verfügung. Auch sie wird auf der LuxRender-Website verlinkt. Die Dokumentation teilt sich in 2 Bereiche – „User documentation“ für Benutzer, und „Developer documentation“ für Entwickler. Innerhalb der Benutzerdokumentation wurde eine Vielzahl von Artikeln verfasst, die Neulingen den Einstieg in LuxRender erleichtern soll. Außerdem wurden die wichtigsten Eigenschaften und Funktionen des Renderers beschrieben. Die Artikel reichen von allgemeinen Informationen über Instruktionen zum Download, der Installation und der Handhabung verschiedener Funktionen bis zu Anleitungen zu spezifischen Aufgaben, etwa dem Erstellen eines goldenen Materials oder HDR Tone Mapping. Auch die Installation und Funktionen der verschiedenen Exporter werden beschrieben.

Die Rubrik „Developer documentation“ richtet sich vor allem an Entwickler, die LuxRender verbessern, erweitern oder auf individuelle Bedürfnisse anpassen wollen. Es bietet Informationen zur Entwicklung der Software für die verschiedenen unterstützten Betriebssysteme, den Exportern und vieles mehr. Die Dokumentation ist zum größten

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher | 19 Replicant | LuxRender FH Schmalkalden WS 2013/2014 Ronny Gertler & David Zimmermann

Teil in Englisch verfügbar. Einige wenige Teile wurden unter anderem auch in die deutsche Sprache übersetzt.

2.4.3 Weitere Anlaufstellen

Sucht man z.B. mittels Google nach „LuxRender“, „LuxRender Tutorials“ oder ähnlichen Begriffen stößt man auf Tausende Ergebnissen. Auch hier handelt es sich hauptsächlich um englischen Content. Die meisten Suchergebnisse verweisen auf die Website von LuxRender, speziell das Forum und die Dokumentation. Weitere Ergebnisse führen meist zu Forenbeiträgen, doch auch Tutorials sind in Form von Text und Videos sind zu finden. Die folgende Tabelle enthält einige interessante Artikel und Anleitungen, die den Autoren dieser Arbeit als besonders nützlich bzw. gelungen erscheinen.

Titel und Link Beschreibung LuxRender Gallerie Sammlung von mittels LuxRender http://www.luxrender.net/forum/gallery2.php gerenderter Werke LuxRender Dokumentation Erklärungen vieler Funktionen http://www.luxrender.net/wiki/Main_Page und Anleitungen Einführung in Beleuchtung in Luxrender und Blender Video zur Einführung in http://zipd.eu/exv/yt/?as=1&i=MLH5IiO-yho Beleuchtung in Luxrender und Blender Beleuchtung in LuxRender Video über die Beleuchtung in http://www.blenderdiplom.com/de/tutorials/481-tutorial-introduction-to- Luxrender lighting-in-luxrender.html Blender Mantis Tutorial: Luxrender Materialien Video über die Verwendung von http://www.youtube.com/watch?v=s-0zlCBgRSo Materialien Introduction to LuxRender in Blender 2.5 Video zur Einführung in http://vimeo.com/16753684 LuxRender in Blender 2.5

Blender Cookie Tutorialsammlung für Blender http://cgcookie.com/blender/ und LuxRender Blendernation Videos über LuxRender und die http://www.blendernation.com/2009/12/01/two-luxrender-tutorials/ Handhabung von Kameras How to Install Luxrender 1.1 in Blender 2.64 Video zur Installation von http://www.youtube.com/watch?v=zbMTmI0is6Y LuxRender

Tabelle 3: Artikel und Anleitungen für LuxRender

2.4.4 Features

Um die Arbeit mit LuxRender zu erleichtern wurden verschiede Erweiterungen entwickelt. Neben den bereits erwähnten Exportern wurde eine Material-Datenbank angelegt. Diese Datenbank stellt ist eine nützliche Sammlung prozeduraler Materialien

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher | 20 Replicant | LuxRender FH Schmalkalden WS 2013/2014 Ronny Gertler & David Zimmermann dar, welche speziell für LuxRender entwickelt wurden. Zu erreichen ist sie unter http://www.luxrender.net/lrmdb2. Es existieren verschiedene Metalle, Glas, hölzerne Materialien, Stein und viele mehr. Alle Erweiterungen werden, sowie LuxRender selbst, zum freien Download angeboten, und dürfen nach Belieben verwendet werden. Es werden ständig weitere Materialien entwickelt, im Forum diskutiert, getestet und schließlich in die Material-Datenbank integriert.

Die Einbindung der Materialien funktioniert etwas umständlich. Nach dem Herunterladen und Entpacken liegt das Material als Datei mit der Endung .lxm, also im LuxRender-Format vor. Die Szene, in welcher das Material verwendet werden soll, ist auch als LuxRender-Datei zu speichern. Nun ist diese Datei mit einem Texteditor zu öffnen, und ein Include-Befehl zwischen dem Start- und Ende-Tag der Szene zu integrieren. 2 include-Befehle sollten hier bereits enthalten sein. Das Einbinden neuer Materialien erfolgt idealerweise zwischen diesen beiden Befehlen.

Abbildung 7: Manuelles Einbinden von Materialien

Quelle: Eigene Darstellung

Wurden die beschriebenen Schritte korrekt ausgeführt, ist das Material nun in LuxRender verfügbar, und kann verwendet werden.38

2.5 Resümee

LuxRender, inklusive seiner Erweiterungen, ist eine Open Source Render-Engine für physikalisch korrekte, unverfälschte Darstellungen. Die Software gewährleistet, den Lichtfluss gemäß physikalischer Gleichungen zu simulieren und demnach realistische Bilder von fotografischer Qualität zu produzieren. Die Ergebnisse sprechen für sich,

38 Vgl. How-To: Manually Load (in Runtime dna Inc, Seitenabruf: 11.11.2013

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher | 21 Replicant | LuxRender FH Schmalkalden WS 2013/2014 Ronny Gertler & David Zimmermann und zeigen klar die qualitativen Vorteile von biased rendering gegenüber unbiased rendering auf. Möglich sind mit LuxRender allerdings beide Verfahren. Dank des Open Source Charakters hat sich im Laufe der Zeit eine breite Fangemeinde rund um LuxRender aufgebaut, welche daran interessiert ist, bei dessen Weiterentwicklung zu helfen.

Die von LuxRender gebotenen Möglichkeiten sind enorm. Dementsprechend sollte auch Zeit einkalkuliert werden, um mit dem Programm zufriedenstellende Ergebnisse zu erhalten. Die Bedienung erfolgt relativ intuitiv, über die verschiedenen Funktionen und deren Anwendung muss sich jedoch erst ein Überblick verschafft werden. Es handelt sich hierbei um kein „Out-of-the-box-system“, welches lediglich installiert werden muss, und anschließend einsatzbereit ist. Die Installation verläuft abhängig von den technischen Voraussetzungen individuell, und kann bei unerfahrenen Nutzern, welche das Programm lediglich testen möchten, zu Kopfzerbrechen führen.

Dennoch erfreut sich LuxRender zu Recht großer Beliebtheit, was durch hohe Anzahl von Beiträgen und aktiven Nutzern im Community-Forum deutlich wird. Die Render- Engine wird auch in den nächsten Jahren weiterentwickelt und für viele Projekte verwendet werden. Die Möglichkeiten sind enorm und für jedermann nutzbar. Wer diese Möglichkeiten in vollen Umfang auskosten möchte, sollte jedoch eine angemessene Einarbeitungszeit als auch kleinere Fehlschläge einkalkulieren.

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher | 22 Replicant | LuxRender FH Schmalkalden WS 2013/2014 Ronny Gertler & David Zimmermann

Literaturverzeichnis Blender Dokumentation (Prozedurale Texturen) 2013, http://de.wikibooks.org/wiki/Blender_Dokumentation:_Prozedurale_Texturen, Seitenabruf: 10.11.2013)

Carikli D., Kocialkowski P. (Supported Devices) In Replicant.us, 2013, http://replicant.us/supported-phones, Seitenabruf am 5.11.2013

Heister N. (Custom-ROMs: Leitfaden für Einsteiger und Umsteiger) In AndroidPIT, 2013, http://www.androidpit.de/custom-roms-leitfaden-infos-einsteiger- umsteiger, Seitenabruf am 5.11.2013

Kocialkowski P. (Why is a fully free software Android stack necessary?) In Replicant.us, 2013, http://replicant.us/faq/, Seitenabruf am 5.11.2013

Kocialkowski P. (Replicant: The Struggle for Free Mobile) In LINUX Magazine, 2013, http://www.linux-magazine.com/Online/Features/Replicant-The- Struggle-for-Free-Mobile, Seitenabruf am 8.11.2013

LuxRender (Cameras) 2013, http://www.luxrender.net/wiki/LuxRender_Cameras, Seitenabruf: 11.11.2013

LuxRender (LuxFire) http://www.luxrender.net/wiki/LuxFire, Seitenabruf: 10.11.2013

LuxRender (Description) 2013, http://www.luxrender.net/en_GB/description, Seitenabruf: 5.11.2013

LuxRender (Features) 2013, http://www.luxrender.net/wiki/Features, Seitenabruf: 5.11.2013

LuxRender (GPU) 2013, http://www.luxrender.net/wiki/GPU, Seitenabruf: 9.11.2013

LuxRender (History) 2013, http://www.luxrender.net/en_GB/history, Seitenabruf: 5.11.2013

LuxRender (Interface) 2013, http://www.luxrender.net/wiki/LuxRender_1.0_Interface, Seitenabruf: 6.11.2013

LuxRender (Lighting) 2013, http://www.luxrender.net/wiki/LuxRender_Lighting, Seitenabruf: 11.11.2013

LuxRender (Materials) 2013, http://www.luxrender.net/wiki/LuxRender_Materials#Channels, Seitenabruf: 10.11.2013

LuxRender (Render settings) 2013, http://www.luxrender.net/wiki/LuxRender_Render_settings, Seitenabruf: 11.11.2013

LuxRender (System Support) 2013, http://www.luxrender.net/en_GB/system_support, Seitenabruf: 5.11.2013

LuxRender (Textures) 2013, http://www.luxrender.net/wiki/LuxRender_Textures, Seitenabruf: 10.11.2013

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher | III Replicant | LuxRender FH Schmalkalden WS 2013/2014 Ronny Gertler & David Zimmermann

Runtime dna Inc (How-To: Manually Load) 2010, http://forum.runtimedna.com/showthread.php?77417-How-To-Manually-Load-Materials- from-the-LuxRender-Material-Database, Seitenabruf: 11.11.2013

Schischka B. (Android vs. iOS) In pcwelt, 2011, http://www.pcwelt.de/news/Android-vs-iOS-warum-Android-gewinnt- 4200387.html, Seitenabruf am 5.11.2013

Stallman R. (Is Android really free software?) In theguardian, 2011, http://www.theguardian.com/technology/2011/sep/19/android-free- software-stallman, Seitenabruf am 5.11.2013

Svij (Android unter der Haube) In Ikhaya, 2013, http://ikhaya.ubuntuusers.de/2013/06/13/android-unter-der-haube/, Seitenabruf am 6.11.2013

Thommes F. (Android-Cone Replicant 4.0 veröffentlicht) In ComputerBase, 2012, http://www.computerbase.de/news/2012-11/android-clone-replicant- 4.0-veroeffentlicht/ , Seitenabruf am 5.11.2013

Thommes F. (Android-Klon Replicant wird von der FSF gefördert) In ComputerBase, 2013, http://www.computerbase.de/news/2013-07/android-klon-replicant- wird-von-der-fsf-gefoerdert/, Seitenabruf am 5.11.2013

Wikipedia (F-Droid) 2013, http://de.wikipedia.org/wiki/F-Droid, Seitenabruf am 6.11.2013

Wikipedia (OpenCL) 2013, http://de.wikipedia.org/wiki/OpenCL, Seitenabruf am 9.11.2013

Wikipedia (Szene) 2013, http://de.wikipedia.org/wiki/Szene_%28Computergrafik%29, Seitenabruf am 10.11.2013

Wolski D. (Android individuell - dank Custom ROM) In pcwelt, 2013, http://www.pcwelt.de/ratgeber/Android-individuell-dank-Custom-ROM- 7533064.html?redirect=1, Seitenabruf am 8.11.2013

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher | IV FH Schmalkalden WS 2013/2014

Studiengang: Angewandte Medieninformatik

Blockseminar: Software- und Service-Scout

Dozent: Dipl.-Phys. Jo Tzschenscher

Theoretische Aufgabe

Open Books - Die Bibliotheca Augusta in Wolfenbuettel stellt ihre gesamten digitalisierten Werke unter einer Creative-Commons-Lizenz zur Verfügung, um eine größtmögliche Verfügbarkeit für wissenschaftliche Auswertungen zu erreichen. Andere Bibliotheken beauftragen Google, um deren Buchbestände einzuscannen und diese dann in Google-Books zur Verfügung zu stellen. Vergleichen Sie die Lizenzmodelle, die beiden Vorgehensweisen zugrunde liegen. Hat dies Auswirkungen auf die Verfügbarkeit und Verwendbarkeit der Werke, und welche? Da Google ein privatwirtschaftlich geführtes Unternehmen ist, könnten Gewinnerzielungsabsichten vorhanden sein: Gilt dies auch für die in Google-Books verfügbar gemachten Bibliotheksbestände?

Praktische Aufgabe

Contao Open Source Content Management System (vormals TYPOlight) Contao (https://contao.org) ist ein Open Source Content Management System (CMS) für alle, die Wert auf eine professionelle Internetpräsenz legen und diese einfach pflegen möchten. Die moderne Architektur des Systems bietet einen hohen Sicherheitsstandard, erlaubt die Entwicklung suchmaschinenfreundlicher und barrierefreier Webseiten und ist flexibel und kostengünstig erweiterbar. Eine umfangreiche Rechteverwaltung, der Live Update Service, das moderne CSS- Framework und viele von Haus aus integrierte Module (News, Kalender, Formulare etc.) haben Contao in kürzester Zeit zu einem der beliebtesten Systeme am Markt für Open Source CMS gemacht.

Sebastian Reinicke – [email protected] Karsten Scholz – [email protected] Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz

Inhaltsverzeichnis

1 Open Books ...... 5

1.1 Überblick ...... 5

1.2 Geschichtlicher Hintergrund ...... 5

1.3 Geschäftsmodell ...... 6

1.3.1 Creative Commons ...... 6

1.3.2 Google books ...... 7

1.3.2.1 Verlage ...... 7

1.3.2.2 Bibliotheken ...... 8

1.4 Verfügbarkeit und Verwendbarkeit ...... 8

1.4.1 Creative Commons ...... 8

1.4.2 Google books ...... 11

1.4.2.1 GB – Umgang mit Bibliotheken ...... 13

1.4.2.2 Privatwirtschaftliche Sicht ...... 16

2 Contao ...... 19

2.1 Entstehungsgeschichte ...... 19

2.2 Zielgruppe ...... 20

2.3 Verbreitung ...... 21

2.4 Funktionsumfang ...... 23

2.4.1 Zentrale Seitenstruktur ...... 23

2.4.2 Editierfunktionen ...... 23

2.4.3 Barrierefreiheit ...... 23

2.4.4 Live-Update-Service ...... 24

2.4.5 Integriertes CSS-Framework ...... 24

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 2 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz 2.4.6 Rechteverwaltung ...... 24

2.4.7 Volltext-Suche ...... 25

2.4.8 Suchmaschinenoptimiert ...... 25

2.5 Integrierte Module ...... 25

2.5.1 Events / Kalender ...... 25

2.5.2 Newsletter ...... 26

2.5.3 FAQ ...... 26

2.5.4 Nachrichten / Blog ...... 26

2.5.5 Kommentare ...... 26

2.5.6 Formulargenerator ...... 26

2.6 Externe Erweiterungen...... 27

2.6.1 EFG – Extended Form Generator ...... 27

2.6.2 BackupDB ...... 27

2.6.3 Avisota Newslettersystem ...... 28

2.6.4 Isotope – eCommerce Shop System ...... 28

2.6.5 MetaModels (ehemals Catalog) ...... 28

2.7 Contao im Vergleich mit verschiedenen CMS ...... 28

2.8 Zukunftsaussichten (Updateprozess) ...... 31

2.9 FAQ ...... 31

3 Show-Case mit Contao ...... 32

3.1 Installation ...... 32

3.1.1 Systemvoraussetzungen ...... 32

3.1.2 Contao-Check ...... 32

3.1.3 Installationsprozess ...... 33

3.2 MetaModels ...... 35

3.2.1 Installation ...... 35

3.2.2 Konfiguration eines Katalogs ...... 36

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 3 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz 3.2.3 Frontend-Ausgabe von Katalog-Daten ...... 37

4 Anlage ...... 40

5 Literaturverzeichnis ...... 43

6 Abbildungsverzeichnis ...... 47

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 4 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz

1 Open Books

1.1 Überblick

Im Laufe der fortschreitenden IT und der damit verbundenen Digitalisierung von Dokumenten verändert sich seit etwa 2001 das klassische Lizenzmodell. Während bis dahin das s.g. „all rights reserved“ zum Einsatz kam, haben sich in den letzten Jahren komplexere Lizenz-Modelle herausgebildet. Auf zwei Organisationen, die Lizenzen anbieten, soll im Rahmen der Ausarbeitung eingegangen werden: Creative-Commons (nachfolgend CC) und Google Books (nachfolgend GB).

CC hat sich als Non-Profit-Organisation herausgebildet, die als Unterstützung Vorlagen für Lizenzverträge anbietet. Das Ziel dieser Vorlagen ist die Definition von rechtlichen Bedingungen. (Was ist CC?)

Abbildung 1: (CC-Lizenz) GB versteht sich als Dienstleistung von Google Inc. mit der Absicht, eine Volltextsuche für Dokumente verfügbar zu machen. Dies geschieht weitgehend durch das Verfahren der Digitalisierung. (Google Books)

Abbildung 2: (Google books-Logo, 2012)

1.2 Geschichtlicher Hintergrund

CC wurde 2001 in den USA durch , Hal Abelson und Eric Eldred gegründet (CC-Historie). Die erste öffentliche Kenntnisnahme erfolgte 2002 durch Hal Plotkin auf www.sfgate.com (All Hail Creative Commons / Stanford professor and author Lawrence Lessig plans a legal insurrection). Die ersten Lizenzen wurden Ende

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 5 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz 2002 veröffentlicht. CC setzt sich aus einem Direktoren-Gremium mit technischem Beraterstab zusammen (CC-Historie).

GB Entstehung datiert auf das Jahr 1996, in dem Sergey Brin und Larry Page mit der Entwicklung einer digitalen Bibliothek begannen (Google-Gründer stellen in Frankfurt Google Print vor, 2004). Ende 2004 war es über www.google.com möglich, Suchergebnisse in digitalen Büchern zu vergleichen. Seit 2005 existiert eine eigene Dokumenten-Suche, die Ende 2005 um eine Abfrage nach Zeiträumen erweitert wurde und seit dem auch in verschiedenen Sprachen verfügbar ist (Google Books). Ende 2008 begann GB mit der Digitalisierung von Zeitungen. Fotografien, Schlagzeilen und Werbeanzeigen blieben hiervon unberührt und sind in die Digitalausgabe integriert (Bringing history online, one newspaper at a time, 2008).

1.3 Geschäftsmodell

1.3.1 Creative Commons

Für CC existieren sechs unterschiedliche Versionen von Lizenzverträgen. CC nimmt hierbei keine Rolle als Verwerter oder Verleger ein. Gleichsam tritt CC nicht als Vertragspartner (für Urheber und Rechteinhaber) auf. Inhalte mit CC-Lizenzen gestatten zusätzliche Optionen, über das gesetzliche Urheberrecht hinausgehend. Die Art der Freiheit wird durch die Wahl des Vertrages bestimmt.

Da nur wenige Urheber sich in der Thematik der Rechtswissenschaften auskennen, will CC diese unterstützen und Optionen anbieten. CC stellt sich somit den rechtlichen Einschränkungen entgegen, die die Kreativität erschweren; bspw. der Aufbau einer eigenen Arbeit auf Basis anderer digitaler Inhalte. In der Praxis gestaltet sich ein Eruieren der Verwendbarkeit der Inhalte daher schwierig und undurchsichtig. Aufsetzend auf diesem Problem soll bei Verwendung der CC-Lizenz sofort deutlich werden, welcher Typ verwendet wird und welche Bedingungen hiermit verknüpft sind. CC hat hierzu das „Commons Deed“ geschaffen. Es zeigt die Lizenzbestimmungen in Gebrauchssprache auf.

Für den deutschen Rechtsraum steht derzeit Version 3.0 zur Verfügung. Der Prozess der Lizensierung ist kostenfrei.

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 6 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz

Abbildung 3: Vgl. Lizenzmodelle (Was ist CC?) Aus Nutzersicht werden neben der Rechtevergabe noch weitere Ziele bedient. So kann die Verwendung einer CC-Lizenz synonym für die Progression von Open Access sein. Die Lizenz stillt die Faszination der Weiterverwendung des eigenen Werkes, daß die Schaffung sich in der digitalen Welt verbreitet. (Was ist CC?)

CC will erreichen, daß dem Urheber die entsprechende Anerkennung für seine geleistete Arbeit zu Teil wird. Das Lizenzmodell soll übergreifend einsetzbar sein und dem Lizenzgeber seine Rechte sichern. Es ist den gesetzlichen Bestimmungen untergeordnet und diesen verpflichtet. Gesetzliche Rahmenbedingungen können so also nicht außer Kraft gesetzt werden.

1.3.2 Google books

GB strukturiert sich aus Google Print und Google Library. Ersteres ist eine Kooperation mit Verlagen, die als rechtlich sicher gilt. Letzteres ist gekennzeichnet durch die großflächige Digitalisierung von akademischen Bibliotheken, die ohne vorherige Zustimmung erfolgt und Thema diverser Rechtsstreitigkeiten ist (US-Gericht bremst Googles Bücherpläne, 2011).

1.3.2.1 Verlage Bei der Kooperation mit den Verlagen werden GB gedruckte Dokumente oder PDF- Dateien zugesandt. Die gedruckten Werke werden durch das OCR-Verfahren in den Bestand von GB überführt.

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 7 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz

Abbildung 4: (Texterkennung OCR, 2011) Die registrierten GB-Nutzer können einen Teil der Seiten aufrufen, bis das Tageskontingent erschöpft ist. Bestimmte Seiten sind unabhängig davon grundsätzlich gesperrt. Um die aufgerufenen Seiten zu schützen, nutzt GB das Digital-Rights- Management. Es fungiert als Kopierschutz, der jedoch weder konsequent angewendet wird, noch sicher ist. Ggfs. läßt sich der Schutz durch das Herauslesen des Browser- Caches umgehen (Google Books).

1.3.2.2 Bibliotheken 2005 begann GB mit dem Scannen kompletter Bestände verschiedener Universitäten in den USA. 2007 folgte mit der Bayerischen Staatsbibliothek auch der erste deutsche (Bayer. Staatsbibliothek, 2007) und 2008 der erste französische Bestand (Staatsbibliothek Lyon, 2008).

1.4 Verfügbarkeit und Verwendbarkeit

1.4.1 Creative Commons

CC bietet wie genannt sechs verschiedene Lizenzmodelle an. Je nach Schweregrad werden Freiheiten gestattet oder Restriktionen geschaffen. Das Mindestmaß stellt die Nennung des Namens dar. Alle Lizenzmodelle haben gemeinsam, daß sie das statische „all rights reserved“ erweitern. Folglich lautet der Lizenztext „some rights reserved“. Der Urheber hat seinen Anspruch kenntlich zu machen. Laut Lizenz-Version 4.0 muß auch benannt werden, ob das Material verändert wurde. Bereits vorgenommene

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 8 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz Änderungen bleiben bestehen. Eine Ausnahme bildet hier die Gemeinfreiheit von Material. Diese ist übergeordnet und greift unabhängig von der verwendeten Lizenz. Die Gemeinfreiheit gestattet die Verwendung zu jedem beliebigen Zweck.

Des Weiteren bezieht sich die Lizenz nur auf das Material selber. Weitere Rechte wie Persönlichkeits- und Datenschutzrechte bleiben davon unberührt.

Ein nennenswerter Punkt ist die „Weitergabe unter gleichen Bedingungen“. Sie verhindert nach einer Veränderung das Aneignen von mehr Rechten, als im Ursprung vorgesehen. Verändertes Material kann also höchstens die Lizenzrechte des Urhebers vereinen.

Auf Seiten des Urhebers dürfen keine Klauseln oder Techniken eingesetzt werden, die im Widerspruch mit den Freiheiten durch die Lizenz stehen (Namensnennung 3.0 Deutschland).

Die Varianten sind im Detail:

Namensnennung Das Material darf vervielfältigt und verbreitet werden, unabhängig vom Format; auch kommerziell. Die Verwendbarkeit ist permanent und kann nicht im Nachhinein beschnitten werden. Der Urheber muß seine Urheberschaft deutlich hervorheben. Die Art und Weise spielt hierbei keine Rolle, so lange sie angemessen und neutral ist (Namensnennung 3.0 Deutschland) . Namensnennung-keine Bearbeitung Das Material darf vervielfältigt und verbreitet werden, unabhängig vom Format; auch kommerziell. Wird das Material verändert oder als direkte Vorlage genutzt, ist diese Fassung von der Verbreitung

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 9 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz ausgeschlossen. Ansonsten wie Namensnennung (kb). Namensnennung-nicht kommerziell Das Material darf vervielfältigt und verbreitet werden, unabhängig vom Format; nicht für kommerzielle Zwecke. Das Material kann verändert werden oder als Vorlage dienen. Ansonsten wie Namensnennung (nk). Namensnennung-nicht kommerziell-keine Das Material darf vervielfältigt und Bearbeitung verbreitet werden, unabhängig vom Format; nicht für kommerzielle Zwecke. Eine Bearbeitung oder Verwendung als Vorlage ist nicht gestattet, sofern sie verbreitet werden soll. Ansonsten wie Namensnennung (nkkb).

Namensnennung-nicht kommerziell- Das Material darf vervielfältigt und Weitergabe unter gleichen Bedingungen verbreitet werden, unabhängig vom Format; nicht für kommerzielle Zwecke. Wird das Material verändert oder es als Vorlage verwendet, darf die Weitergabe nur unter derselben Lizenz erfolgen. Ansonsten wie Namensnennung (nkgb). Namensnennung-Weitergabe unter gleichen Das Material darf vervielfältigt und Bedingungen verbreitet werden, unabhängig vom Format; auch kommerziell. Das Material kann verändert werden oder als Vorlage dienen. Wird das Material verändert oder es

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 10 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz als Vorlage verwendet, darf die Weitergabe nur unter derselben Lizenz erfolgen. Ansonsten wie Namensnennung (gb).

1.4.2 Google books

Im Gegenzug zu CC ist GB ein gewinnorientiertes Unternehmen. Um Umsatz und letztendlich Gewinn zu steigern, zielt GB auf eine hohe Beteiligung an den digitalisierten Büchern ab. Der Bestand soll gleichfalls maximiert werden, um ein Monopol zu schaffen. Den Gegenpol bilden die Autoren und Verlage, die die vollen Urheberrechte besitzen und den Erhalt sichern wollen.

Bereits seit den Anfangsphasen sieht sich GB der Kritik von Verlegern und Autoren ausgesetzt. GB verteidigte sich gegen die Vorwürfe mit dem Argument, daß nur kleine Ausschnitte sichtbar sind, die sich nach dem Suchbegriff richten. Außerdem könne davon Gebrauch gemacht werden, die Bücher „aus dem Angebot herauszunehmen“ (Google darf gescannte Bücher online stellen, 2008).

GB verlangte von jenen eine Angabe über die Bücher, die nicht gescannt werden sollen. Im Gegenzug verlangten Verleger und Autoren, daß kein Buch ohne ausdrückliche Genehmigung gescannt wird. GB beruft sich hierbei auf den „fair use“-Paragraphen des amerikanischen Urheberrechts. Der Paragraph besagt die nicht autorisierte Nutzung von Material, sofern sie der Bildung dient. Im letzten Urheberrechtsprozeß entschied das Gericht, daß GB „grundsätzlich durch das Fair Use-Prinzip gedeckt ist“.

Um Prozesse zu vermeiden, wurde durch GB ein Vergleichsvorschlag erarbeitet; Google Book Settlement. Laut der ersten Version hätte GB hiernach jedes Buch digital veröffentlichen können, sofern kein Einspruch in den USA eingelegt worden wäre. Rechtliche Ansprüche der Urheber wären hiermit verwirkt (Google Books). Das US- Justizministerium lehnte den Vergleich ab. Kritik übte das Gericht am Umgang mit verwaisten Werken und die damit verbundenen alleinigen Rechteübergang auf GB. Andere Anbieter von Online-Bibliotheken wäre so der Aufbau deutlich erschwert worden. (Ablehnung US-Justizministerium, 2009)

Der neue Entwurf sieht eine Beschränkung der Verwendung vor. Es dürfen nur noch Bücher verwendet werden, die in den USA registriert sind oder in Australien, Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 11 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz Großbritannien oder Kanada veröffentlicht wurden. Die Länder entsenden jeweils einen Vertreter in das Book Rights Registry. Es enthält die Rechteinhaber zu den Büchern und legt hiernach die Verteilung aus den Einnahmen fest.

Für Bücher, die geschützt sind, der Rechteinhaber aber nicht lokalisierbar ist, soll ein Treuhänder verpflichtet werden. Dieser nimmt die Position des Rechteinhabers ein.

Das Mitspracherecht für Verlage und Rechteinhaber soll gestärkt werden. GB muß das Geschäftsmodell für die Bücher bei der Book Rights Registry genehmigen lassen. Die Rechteinhaber legen fest, ob ihre Werke kostenlos oder gebührenpflichtig zur Verfügung gestellt werden. Mögliche Varianten wären hier beispielsweise auch die Freigabe nach CC-Lizenzen. Das Google Book Settlement sieht eine Vergütung von 37% für die Rechteinhaber und 63% für GB vor (GB legt überarbeitetes Abkommen vor, 2009).

Unabhängig vom Google Book Settlement haben verschiedene Schriftstellerverbände bereits 2008 eine Einigung erzielt. Die Authors Guild (ca. 8000 Autoren) und die Association of American Publishers (ca. 300 Verlage) unterzeichneten mit GB ein Abkommen, das den Urheberrechtsschutz mit Büchern regelt, die noch geschützt aber nicht mehr verfügbar sind. Für die Nutzer von GB sind diese Werke in der Vorschau auf 20% der Seitenanzahl beschränkt. Die Vorschau soll als Anreiz dienen, das gesamte Werk zu erwerben. Institutionen wie Akademien steht als erweiterte Option frei Abonnements abzuschließen. Nach einem Kauf/als Abonnent kann der Leser der Akademie von jedem internetfähigen Computer in den USA Zugriff nehmen.

Die Bücher, die geschützt und erhältlich sind, werden ebenfalls über die GB-Suche gefunden. Laut Aussage von GB erhalte der Nutzer aber „standardmäßig keinen Einblick in den Inhalt des Buches“. Was diese Aussage bedeutet, wurde nicht näher erläutert. Bücher ohne Schutz können vollständig eingesehen werden (Google darf gescannte Bücher online stellen, 2008).

Kritisch zu bewerten ist das Tracking-Verfahren, mit dem das Tages-Kontingent verwaltet wird. GB setzt hierzu Cookies, die einen Zeitstempel auf die entsprechende URL (als Unique-ID und damit das digitale Buch) im Browsercache einfügen (Hacking Google Print, 2005).

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 12 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz Beispiel eines Tracking-Cookies:

GPREF=ID=26b2149fe108b391:TM=1109736400:LM=1109736400:S=pbb DWyL8tVmJrILc Beim nächsten Aufruf wird der Cookie automatisch hochgeladen und der Wert ausgelesen. Dadurch ist der Zugriff durch GB vorgegeben.

1.4.2.1 GB – Umgang mit Bibliotheken Auf Grund der andauernden Rechtsstreitigkeiten beziehen sich die nachfolgenden Angaben auf den gegenwärtigen Stand.

GB fokussiert die Zusammenarbeit mit großen Bibliotheken, um deren Bestand zu digitalisieren. Dieses Projekt wird als „Library Project“ bezeichnet. GB bietet den Bibliotheken Vergütungen für die Bücher, die sie digitalisiert haben, an. Wie hoch die Beteiligung ist, wird nicht näher genauer spezifiziert.

Die Verträge unterscheiden sich entsprechend des getroffenen Service Level Agreements, sehen aber in der Gesamtheit eine nicht exklusive Vereinbarung vor (Google books help). Die Vereinbarung mit der University of Michigan sieht bspw. vor, daß spezielle Sammlungen von der Digitalisierung ausgeschlossen sind. In der Praxis gilt dies für besonders wertvolle oder seltene Werke, wie die Lutherbibel (Michigan Digitization Project, 2013).

Beim Service Level Agreement mit der britischen Nationalbibliothek übernimmt GB die Kosten der Digitalisierung. Auch hier wird aber nur ein Teil des Bestandes, aus den Jahren 1700-1870 ohne Urheberrecht, digitalisiert und verfügbar gemacht. Ältere oder neuere Bücher werden über GB also nicht gefunden (Google scannt Bücher aus British Library, 2011).

Jede Digitalisierung aus einer Bibliothek wird dieser zum Erhalt zur Verfügung gestellt. Sofern die gesetzlichen Bestimmungen erfüllt sind, erhalten auch die Förderer der Bibliothek die digitale Version.

GB bietet zu den Büchern Informationen und Ausschnitte. Die Informationen umfassen mindestens Titel, Autor, Datum der Veröffentlichung, Länge und Thema. Aufgezeigt werden ggfs. auch Zahlungsmodalitäten, Kapitel oder vergleichbare Bücher. Ähnlich wie Bücher, die nicht aus Bibliotheken, sondern von Verlagen stammen, wird also nur

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 13 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz eine Beschränkung auf einige Seiten gestattet, bzw. sogar nur auf wenige Zeilen (Google books help).

Abbildung 5: (Informationen zum Buch)

Abbildung 6: (einige Zeilen verfügbar)

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 14 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz

Abbildung 7: (Limitierte Vorschau) Bibliothekswerke ohne Urheberrecht sind vollständig verfügbar. GB bietet hierzu eine Vollansicht an. Die Vollansicht ist ohne Restriktionen für den Nutzer.

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 15 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz

Abbildung 8: (Naturalis historiae by Pliny (the Elder), 1668) Als Alternative zu einem Kauf/zur freien digitalen Version kann GB den nächsten Standort einer Bibliothek anzeigen. Dort kann das Buch dann wie üblich ausgeliehen werden.

1.4.2.2 Privatwirtschaftliche Sicht Als privatwirtschaftliches Unternehmen hat es GB derzeit geschafft, fernab des Google Book Settlements, eine quasi Gleichbehandlung zu schaffen, die Bücher aus Verlagen und Bibliotheken betrifft. Die Deckelung nach urheberrechtlich geschützten und freien Werken ist nur allein GB zuzumessen. Aus BWL-Sicht kommt hier der klassische „1+1=3“-Effekt zum Tragen. Die Verlage erreichen durch die hohe Verbreitung des mit der „Führungskraft“ GB höhere Verkaufszahlen. Auf der anderen Seite ist GB am Umsatz beteiligt und versucht eine möglichst hohe Marktsättigung zu erreichen. Laut einer aktuellen Umfrage von Bitkom nimmt das Interesse an digitalen Büchern stetig zu (E-Books erobern den Massenmarkt, 2013). Gegenwärtig liest sie etwa jeder fünfte.

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 16 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz

Abbildung 9: (E-Books setzen sich durch) Im gleichen Zeitraum sinkt der klassische Buchmarkt stetig (Bücherabsatz bis 2006, 2007). Es kann also nur im Interesse von Verlagen und Bibliotheken liegen, möglichst viele Bücher zur Verfügung zu stellen. Insbesondere die Bibliotheken haben hieran ein Interesse, da der Bestand gesichert wird und sich durch den Geschäftszweig der Leihe nur Einnahmen von Abonnenten generieren lassen. Die Leihe als Dienstleistung ist immer mit einem Verwaltungsaufwand und einer Abnutzung des verliehenen Buches verbunden. Dieser Aufwand wird durch Erwerb einer digitalen Ausgabe reduziert. Auf Dauer ist der Kauf als PDF mit einer Teilung der Einnahmen zwischen GB und den Bibliotheken höher einzuschätzen, als der bloße Abonnentenvertrag zwischen Kunde und Bibliothek. Der Effekt wird durch die zunehmende Verbreitung von Tabletts und Smartphones verstärkt, die massenweise Daten auf kleinem Raum transportieren lassen.

GB macht den Bibliotheken eine Kooperation weiterhin durch das kostenlose Digitalisieren schmackhaft. Auf lange Sicht ist es wahrscheinlich, dass auch die seltenen Sammlungen Einzug in den digitalen Bestand finden und nicht nur Teilmengen, wie es gegenwärtig der Fall ist. Aus Sicht der Bibliotheken könnten seltene Sammlungen als gebührenpflichtige Premiumleistung ein neues Geschäftsmodell eröffnen. Da eine Leihe immer kostenlos ist, bezahlt der Kunde hier allein für die

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 17 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz Erstellung der PDF-Datei, an der die Bibliothek zum einem bestimmten Grad beteiligt ist. Die Zugriffs-Freiheit des Nutzers muss dann freilich zurückgefahren werden.

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 18 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz

2 Contao

2.1 Entstehungsgeschichte

Das Content-Management-System Contao ist aus verschiedenen Entwicklungen des Deutschen Leo Feyer hervorgegangen. In das CMS, dessen erste Version am 28. Februar 2006 unter dem Namen „TYPOlight“ erschienen ist, sind unter anderem ein eigenes MVC-Framework basierend auf PHP5 und AJAX, sowie das Konzept verschiedener Inhaltselemente aus dem CMS „Content Couch“, welches er für Kunden seiner Webhosting-Firma entwickelt hatte, eingeflossen.1

Trotz großer Konkurrenz auf dem CMS-Markt stieß TYPOlight schon bald auf positive Resonanz. Dabei war es zur Überraschung des Entwicklers nicht das Alleinstellungsmerkmal Barrierefreiheit, sondern vielmehr die gelungene Features- Mischung, die insbesondere Nutzer der beiden Mitbewerber „phpwcms“ und „Joomla!“ vom Wechsel zum Neuling auf dem Markt überzeugte. Infolgedessen wurde TYPOlight entscheidend fortentwickelt und am 24. November 2006 in Version 2 veröffentlicht.2

TYPOlight machte sich in der Folgezeit schnell einen Namen in der Szene. Jedoch sorgte die Bezeichnung immer wieder auch für Verwirrung. Schuld daran: Das etablierte und besonders im deutschsprachigen Raum weitverbreitete Open-Source- CMS „TYPO3“. Fälschlicherweise wurde der Name daher oftmals mit einer eingeschränkten Version des „großen Bruders“ assoziiert. Tatsächlich bestand jedoch zu keinem Zeitpunkt eine Verbindung zwischen diesen beiden eigenständigen CMS.

Aufgrund dieser Namensverwechslung und insbesondere der Fehlinterpretation des Namensbestandteils „light“ entschloss man sich Mitte 2010, mit Release der Version 2.9, zu einer Umbenennung des Projekts. TYPOlight heißt seitdem offiziell „Contao Open Source CMS“ oder kurz Contao. Die Bezeichnung setzt sich zusammen aus den Bestandteilen „Con“ (als Abkürzung für Content) und „tao“ (vietnamesisch für bilden, erzeugen und gestalten).3

1 Vgl. Feyer, L., Das offizielle TYPOlight Handbuch, Addison-Wesley Verlag, 2008, S. 18 2 Vgl. ebd. 3 Vgl. Feyer, L., Aus TYPOlight wird Contao, https://contao.org/de/news/typolight-wird-zu-contao.html, veröffentlicht am 15.05.2010, Seitenabruf am 13. 12.13 Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 19 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz 2.2 Zielgruppe

Wie bereits geschildert handelt es sich bei Contao um ein vollumfängliches CMS mit dem sich nahezu jedes erdenkliche Webprojekt umsetzen lässt, unabhängig von Seitenumfang und Komplexitätsniveau. Um den ganzen Funktionsumfang auszunützen, bedarf es jedoch auch einiger fachlicher Kenntnisse.

Im Gegensatz zum populären Blogsystem Wordpress, was sich selber in den letzten Jahren immer mehr in Richtung CMS entwickelt hat, erhebt Contao nicht den Anspruch einer 5-Minuten-Installation, die sich innerhalb kürzester Zeit – und ohne Vorkenntnisse des Nutzers – per Drag and Drop Themes und unzähliger Erweiterungen ganz nach Wunsch einrichten lässt.

Zwar gibt es mittlerweile auch für Contao eine Reihe fertiger und empfehlungswürdiger Templates4, deren Auswahl aus historischen Gründen jedoch immer noch vergleichsweise bescheiden ausfällt. In der Praxis wird die Mehrzahl der Templates zur Erstellung von Seitenlayouts daher weiterhin individuell angefertigt, was zumindest Kenntnisse in HTML und CSS (und ggf. in JavaScript bzw. den Frameworks jQuery oder MooTools) voraussetzt.

Noch weitergehende Anforderung stellt logischerweise die Entwicklung eigener Erweiterungen. An dieser Stelle sind Programmierkenntnisse erforderlich, bei Contao in (objektorientiertem) PHP, sowie Wissen in SQL. Wobei dieser Punkt natürlich nicht Contao-spezifisch und bei vielen Projekten zudem von keiner Relevanz ist, sofern diese mit den internen Möglichkeiten bzw. vorhandenen Erweiterungen auskommen.

Mit diesem breiten Funktionsumfang – angefangen von der kleinen Webseite mit einem fertigen Template bis zum großen Portal mit eigenen Erweiterungen – richtet sich Contao sowohl an den interessierten Hobbyentwickler als auch an professionelle Anbieter. Neulinge, die noch keine Erfahrungen mitbringen und dennoch schnell etwas vorzeigen möchten, sind mit einem anderen System hingegen besser beraten.

Inwiefern der exakte Funktionsumfang zu den eigenen Bedürfnissen passt, sollte im Vorfeld natürlich sorgfältig geprüft werden. Eine erste Handreichung für diese Entscheidung kann hierbei unser CMS-Funktionsvergleich in Kapitel 2.7 sein.

4 z.B. auf http://www.premium-contao-themes.com Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 20 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz 2.3 Verbreitung

Bedingt durch seine Herkunft, und die in Folge überproportional große Community, ist Contao vor allem im deutschsprachigen Raum verbreitet, wenngleich es Projektwebseite, Community und Backend schon lange auch in Englisch gibt. Für die Backend-Sprache stehen inzwischen zahlreiche Übersetzungen von Albanisch über Persisch bis Ungarisch bereit. Die spürbare Differenz insbesondere zwischen der DACH-Region und anderen Märkten, wie den USA, ist jedoch nicht nur bei Contao zu beobachten. Ein Grund hierfür liegt in unterschiedlichen Einstellungen gegenüber Open-Source-Systemen, die z.B. in den USA weniger akzeptiert und noch nicht im Enterprise-Bereich angekommen sind.5

Die im Internet kursierenden Zahlen zu den Marktanteilen von CMS schwanken z.T. stark. Zieht man nur die Daten aus Deutschland bzw. dem deutschsprachigen Raum heran, ergibt sich jedoch eine weitgehend konsistente Rangliste, die Wordpress, Joomla! und TYPO3 auf den ersten drei Plätzen sieht. Dahinter folgen Contao bzw. Drupal auf den Plätzen.

Abbildung 10: Auszug aus der Deutschland-Statistik von CMSCrawler 6

5 Vgl. Gould, K. / Lenz, A., State of the Open-Source-CMS, http://t3n.de/news/state-open-source-cms- 441808/, veröffentlicht am 27.5.13, Seitenabruf am 13.12.13 6 http://www.cmscrawler.com/country/DE, Seitenabruf am 13.12.13 Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 21 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz

Abbildung 11: Auszug aus CMS-Liste von WebKalkulator 7 Diese Reihenfolge findet auch Bestätigung bei einem Vergleich mit Google Trends, d.h. einer Analyse der Suchanfragen bei Google nach den besagten CMS.

Abbildung 12: Vergleich der Suchanfragen nach CMS bei Google Trends 8 Nimmt man noch den Zeitraum hinzu, in der Contao noch TYPOlight hieß, lässt sich im Zeitraum von 2009 bis heute ein konstantes Interesse für das CMS verzeichnen, dass sich etwa auf dem Niveau von Drupal eingependelt hat. Großer Gewinner während dieser Zeit ist im Speziellen Wordpress. Auf hohem Niveau verloren haben hingegen TYPO3 und besonders Joomla, das wie eingangs beschrieben etliche Nutzer an Contao verloren hat.

7 http://www.webkalkulator.com/cmsvergleich, Seitenabruf am 13.12.13 8 http://www.google.com/trends/explore#q=joomla%2C%20drupal%2C%20wordpress%2C%20typo3 %2C%20contao&geo=DE&date=1%2F2010%2048m&cmpt=q, Seitenabruf am 13.12.13 Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 22 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz 2.4 Funktionsumfang

Contao verfügt über elementare CMS-Funktionen, genauso wie über Besonderheiten wie ein barrierefreies Backend und Frontend, einen Live-Update-Service und vieles mehr. Im Folgenden möchten wir einen Überblick der – aus unserer Sicht – wichtigsten Funktionen von Contao geben:

2.4.1 Zentrale Seitenstruktur

Zu einer Contao-Besonderheit zählt die Trennung von Seitenstruktur und Inhalten (i.d.R. Artikel), was auf dem ersten Blick nicht besonders intuitiv erscheint, aber in sich schlüssig ist. So hat der Nutzer bereits auf Seitenebene Kontrolle z.B. über den Seitentyp (Reguläre Seite, Weiterleitungen, etc.), Zugriffsrechte, individuelle Layouts, die Anzeige in der Navigation oder Veröffentlichungsdaten. Gleichzeitig wird mit Hilfe der Seiten auch die Hierarchie aufgebaut.

Im zweiten Schritt müssen mit einer angelegten Seite Inhalte verknüpft werden. Dazu werden Artikel angelegt, die ihrerseits wiederum unterschiedlichste Elementtypen beinhalten können. Die Auswahl reicht von verschiedenen Text-Elementen, über Bild- Elemente, bis zu Include-Elementen mit denen auch Inhalte aus Modulen (Erweiterungen) einfach eingebunden werden können.

2.4.2 Editierfunktionen

Wie jedes gute CMS bietet auch Contao zahlreiche Editierfunktionen an. Über die Zwischenablage können Datensätze kopiert oder verschoben werden. Ebenso möglich ist das Bearbeiten mehrere Datensätze in einem Arbeitsschritt und das Wiederherstellen früherer Versionen. Der integrierte WYSIWYG-Editor „TinyMCE“ generiert sauberen HTML-Code und erlaubt somit auch Nutzern ohne HTML-Kenntnisse eine passende Textformatierung (inklusive Rechtschreibprüfung).

2.4.3 Barrierefreiheit

Contao legt seit der ersten Version großen Wert auf die Barrierefreiheit des gesamten Systems. Sowohl für Backend als auch für Frontend erzeugt das System nur XHTML- Code, welcher den entsprechenden Anforderungen von W3C und WAI zur barrierefreien Gestaltung gerecht wird.

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 23 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz 2.4.4 Live-Update-Service

Die Installation von Updates kann schnell zeitaufwendig werden, insbesondere wenn man mehrere Systeme zu betreuen hat. Der Live-Update-Service (ein kommerzielles Add-on der Firma des Contao-Entwicklers) ermöglicht ein Update per Knopfdruck. Im Laufe der Zeit sind zusätzliche Komfortfunktionen wie das automatische Anlegen eines Datenbank-Backups und ein Template-Vergleich hinzugekommen. Die Kosten für eine Jahres-Lizenz liegen derzeit bei 9,90 Euro für eine Domain (bei mehreren Domains gibt es deutliche Rabatte).9

2.4.5 Integriertes CSS-Framework

Schon früh wurde Contao mit einem eigenen, browserübergreifenden CSS-Framework ausgeliefert. Im Backend konnte auf diese Weise das Layout rasch in verschiedene Bereiche (Header, Footer, Left etc…) aufgeteilt werden. Die weitere Gestaltung kann entweder über den internen Stylesheet-Editor oder über den Import von CSS-Dateien geschehen. Letzteres ist aus Sicht der Autoren dieser Arbeit aus Performance-Gründen zu bevorzugen. Mit Contao 3 wurde ein neuer Layout-Builder eingeführt, der auf dem „Holy-Grail-Layout“ (Inhaltsbereich wird im Quelltext zuoberst positioniert) aufbaut und zumindest rudimentär responsives Design ermöglicht. Als weitere Möglichkeiten hinzugekommen sind ein mobiles Seitenlayout (separates HTML, CSS für mobile Geräte) und ein eigenes Responsive Grid.10

2.4.6 Rechteverwaltung

Über die Rechteverwaltung können die einzelnen Benutzerrollen exakt festgelegt werden. Angefangen vom Zugriff auf einzelne Module im Backend bis zu den Bearbeitungsrechten einzelner Seiten können sowohl auf Benutzer- als auch auf Gruppenebene entsprechende Rechte vergeben werden. Ein Benutzer kann ebenso mehreren Gruppen zugeordnet werden, seine Zugriffsrechte werden folglich addiert.

9 Die Live-Update-Service-Lizenz kann unter http://www.inetrobots.com/shop/product_info.php?info=p12_Live-Update-ID.html beantragt werden. 10 siehe Müller, P., Contao Konferenz 2013 - Workshop "Responsive Contao", http://pmueller.de/blog/ck- 2013-responsive-contao.html, veröffentlicht am 12.05.2013, Seitenabruf am 15.12.13 Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 24 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz 2.4.7 Volltext-Suche

Die CMS-eigene Suchmaschine unterstützt zahlreiche bekannte Funktionen. Dazu gehört beispielsweise die Suche mit Platzhaltern oder die Unterscheidung zwischen der Suche nach allen Wörtern oder irgendeinem Wort. Die Suchergebnisse können auf mehreren Seiten angezeigt werden und enthalten eine Angabe zur Relevanz der gefundenen Treffer.

2.4.8 Suchmaschinenoptimiert

Wer Wert auf suchmaschinenoptimierte Webseiten legt – und das tun mittlerweile beinahe alle – findet in Contao alle Möglichkeiten seine Seiten OnPage bestens an die Anforderungen von Suchmaschinen (hierzulande quasi gleichbedeutend mit Google) anzupassen. Die Nutzung statischer URLs mit „sprechenden“ Namen, die Vergabe individueller Seitentitel und Meta Descriptions-Tags, die Einstellung von Robots-Tags auf Seitenebene, und eine saubere Strukturierung des Textes mit Hilfe von Überschriften etc., sind nur die wichtigsten Funktionen für eine gelungene OnPage- Optimierung. Inwiefern diese Möglichkeiten sinnvoll genutzt werden, hängt letztendlich natürlich maßgeblich vom Nutzer und seinem individuellen SEO-Wissen ab.

2.5 Integrierte Module

Inwieweit Module, die über die Grundfunktionalität des Systems hinausgehen, Teil der Core-Distribution sein sollen, wird oft diskutiert und ist mit Sicherheit Geschmackssache. Contao geht ebendiesen Weg und hat von Anfang an eine Reihe von Modulen in den Core integriert, die auf Webseiten für gewöhnlich häufig gebraucht werden. Im Folgenden möchten wir eine Übersicht dieser internen Module und ihrer Funktionsweise geben:

2.5.1 Events / Kalender

Das Event-Modul ermöglicht das Anlegen verschiedener Kalender, denen wiederum Events (Termine) zugeordnet werden können. Events selber können über Start- und Enddatum, einen Zeitraum, eine Beschreibung und vieles mehr verfügen und sich zudem auch in beliebigen Intervallen wiederholen. Die Darstellung kann über verschiedene Frontend-Module erfolgen, die z.B. einen vollständigen Kalender oder auch nur eine Liste der nächsten Events erzeugen.

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 25 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz 2.5.2 Newsletter

Mit dem Newsletter-Modul können verschiedene Verteiler angelegt werden, die von Besuchern über das Double-Opt-In-Verfahren abonniert werden können. Die Newsletter selber können im Text- oder HTML-Format versendet und für registrierte Mitglieder zusätzlich personalisiert werden. Ein weiteres Frontend-Modul ermöglicht außerdem das einfache Anlegen eines Newsletter-Archivs mit den bereits versandten Nachrichten.

2.5.3 FAQ

Hiermit können häufige Fragen (und deren Antworten) in verschiedenen Kategorien angelegt und übersichtlich zusammengefasst werden.

2.5.4 Nachrichten / Blog

Zwar ist Contao kein ausdrückliches Blog-System, mit dem News-Modul lässt sich dennoch vergleichsweise einfach ein Blog einrichten. In Verbindung mit dem Kommentar-Modul fehlen in Vergleich zu Spezialisten-Systemen kaum zentrale Blogging-Funktionen. Ist der Blog nur ein kleinerer Bestandteil innerhalb einer größeren Seite spricht nichts gegen eine Umsetzung mit diesem internen Modul. Liegt auf dem Blog ein größerer Schwerpunkt ist die mitgelieferte Funktion jedoch weniger komfortabel zu bedienen als ausgewiesene Blog-Systeme wie Wordpress.

2.5.5 Kommentare

Mit dem Kommentar-Modul können Besucher im Frontend Kommentare z.B. unter Nachrichten-Beiträgen hinterlassen, die sich im Backend (entsprechende Berichtigung vorausgesetzt) administrieren lassen.

2.5.6 Formulargenerator

Der integrierte Formulargenerator ist ein sehr nützliches Werkzeug, welches für diverse Anwendungen gebraucht wird bzw. genutzt werden kann. So ist der Generator z.B. eine ausgewiesene Möglichkeit um das Suchformular für die interne Suche zu generieren. Ansonsten lassen sich mit diesem alle erdenklichen Formulare zusammenbauen. Eingabefelder können dabei einfach als Pflichtfelder markiert und auf ihre Richtigkeit geprüft werden. Eingegebene Daten können sowohl per E-Mail versendet als auch in einer Datenbank gespeichert werden.

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 26 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz 2.6 Externe Erweiterungen

Neben der Ausstattung mit einer Reihe interner Module, besteht bei Contao natürlich auch die Möglichkeit das System mit externen Erweiterungen den eigenen Wünschen und Bedürfnissen anzupassen. Aktuell stehen im „Contao Extension Repository“11 1550 Erweiterungen (Stand: 18. Dezember 2013) zur Auswahl, die in deutlicher Mehrzahl freien Typs sind. Die Auswahl reicht von kleineren Vereinfachungen bis zu komplexen Systemen, welche die Funktionalität von Contao nochmals deutlich erweitern. Eine kleine Auswahl beliebter Erweiterungen möchten wir nachfolgend kurz vorstellen.

2.6.1 EFG – Extended Form Generator

Mit den EFG12 lässt sich der Contao-interne Formulargenerator um diese zusätzlichen Features erweitern:

• Individuelle E-Mail-Bestätigung: Dem Absender eines Formulars kann eine E- Mail mit beliebigen Text zugesendet werden, die über Insert-Tags personalisiert werden kann (Contao selbst erlaubt sonst nur eine E-Mail-Bestätigung der übermittelten Daten). • Formulardaten in Backend-Modulen speichern: Mit dieser Option können Eingabedaten in Backend-Modulen verwaltet werden. Diese können wiederum im Frontend ausgegeben werden. • Weitere Formularfeld-Typen: Mit den EFG stehen weitere Formularfeld- Typen zur Auswahl. Im Einzelnen sind dies: Select-, Radio-Button- und das Checkbox-Menü.

2.6.2 BackupDB

Dieses Modul bringt gleich zwei nützliche Funktionen mit sich. Auf der einen Seite ermöglicht die Erweiterung wie ihr Name schon andeutet eine Datenbank-Sicherung, die in Verbindung mit der Cron-Erweiterung auch automatisiert erstellt werden kann, zum anderen kann BackupDB13 komplette Website-Templates abspeichern, die auf anderen Installationen mit dem Install-Tool einfach geladen werden können.

11 siehe https://contao.org/de/extension-list.html 12 siehe https://contao.org/de/extension-list/view/efg.20000019.de.html 13 siehe https://contao.org/de/extension-list/view/BackupDB.30010009.de.html Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 27 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz 2.6.3 Avisota Newslettersystem

Das Avisota Modul14 ergänzt das Newslettersystem um zahlreiche nützliche Features. Dazu gehört unter anderem die Personalisierung, Newsletter aus verschiedenen Inhaltselementen zusammenzusetzen, ein verbesserter Versandprozess, CSV-Import und –Export, sowie Trackingmöglichkeiten bzgl. Lese- und Reaktionsverhalten.

2.6.4 Isotope – eCommerce Shop System

Contao ist von Haus ein CMS und kein spezialisiertes eCommerce-System. Wer sich dennoch mit Contao an einem Shop versuchen möchte, kann auf die Isotope- Erweiterung15 zurückgreifen. Das eCommerce Shop System bringt – inkl. Zahlungs- und Versandmodulen – alle Funktionen mit, die für den Betrieb eines Shops notwendig sind. Von Interesse ist Isotope für Contao-Nutzer insbesondere weil sich viele Konzepte aus Contao (z.B. die Unterteilung nach Listen- und Detailseiten, Produkte als Content- Element) wiederfinden und der Shop sich problemlos in eine bereits bestehende Seitenstruktur integrieren lässt.

2.6.5 MetaModels (ehemals Catalog)

MetaModels16 erlaubt das Anlegen von Katalogen, innerhalb derer Einträge angelegt und verwaltet werden können. Einträge können für den Besucher sowohl als Listen- als auch als Detailseite angezeigt werden. Der besondere Nutzen besteht für den Nutzer in den einfachen Filtermöglichkeiten, um bestimmte Einträge zu finden. Anwendungsmöglichkeiten könnten so beispielsweise eine Immobilienverwaltung oder ein Filmverzeichnis sein. Wie MetaModels in der Praxis genutzt werden kann, werden wir in Kapitel 3 auch in unserem Showcase darstellen.

2.7 Contao im Vergleich mit verschiedenen CMS

Contao hat wie jedes CMS gewisse Stärken und Schwächen. Unterschiede werden vor allem im Vergleich mit anderen Systemen deutlich. Im Folgenden möchten wir daher anhand ausgesuchter Kriterien den Vergleich von Contao mit Joomla!, TYPO3, plone,

14 siehe https://contao.org/de/extension-list/view/Avisota.10070049.de.html und http://avisota.org/de/ 15 siehe https://contao.org/de/extension-list/view/isotope.20000007.de.html und http://isotopeecommerce.org/de/ 16 siehe https://contao.org/de/extension-list/view/catalog.20000004.de.html und http://now.metamodel.me/de/ueber-uns Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 28 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz Wordpress und Drupal aufzeigen. Zusammengestellt wurden die nachfolgenden Vergleiche von der Agentur visual4.17

Abbildung 13: Inhaltserstellung im Vergleich

Abbildung 14: Benutzerverwaltung im Vergleich

Abbildung 15: Technische Details im Vergleich

17 Plessner, C., Open Source CMS-Systeme im Vergleich, http://www.visual4.de/open-source-cms- system/cms-vergleich-joomla-wordpress-typo3-drupal-contao-plone.html, Seitenabruf am 11.1.14 Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 29 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz Aus dem Vergleich hat der Autor folgende Entscheidungsmatrix geschlussfolgert:

Abbildung 16: Entscheidungsmatrix für Wahl von CMS Wir möchten abschließend hinzufügen, dass solche Vergleiche stets auch ein Stück subjektiv geprägt sind. Wie man sehen kann liegen die verglichenen CMS in der Mehrzahl der Punkte eng beieinander, sodass die Wahl häufig auch von persönlichen Vorlieben abhängig ist.

Contaos Stärken liegen laut dem zitierten Vergleich insbesondere in der guten Usability sowohl für Administratoren als auch Redakteure, sowie der Abwesenheit von gravierenden Schwächen. Wer hingegen eine Community-Seite mit Fokus auf User- generated Content aufbauen möchte, findet in Contao unserer Meinung nach nicht den richtigen Partner, auch wenn dies im obigen Vergleich nicht so deutlich wird. Dafür sehen wir bspw. keinerlei Schwächen im Bereich Suchmaschinenoptimierung, die diesbezüglich eine Abwertung rechtfertigen würden.

Insofern können die aufgeführten Vergleichstabellen sicherlich ein erster guter Anhaltspunkt sein, müssen im Einzelfall aber auch kritisch hinterfragt werden. Letztendlich wird die Wahl des CMS in der Vielzahl der Fälle von persönlichen Erfahrungen und Vorkenntnissen abhängen. Schließlich lassen sich wohl mindestens 95% aller erdenklichen Webprojekte mit jedem dieser CMS umsetzen, auch wenn der Weg zum Ziel sich hin und wieder unterscheiden wird.

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 30 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz 2.8 Zukunftsaussichten (Updateprozess)

Ein Kritikpunkt, der früher immer mal wieder geäußert wurde, war die alleinige Entwicklung des Core-Systems durch den Gründer Leo Feyer. Durch diese Abhängigkeit war die Zukunft des CMS stets stark mit dieser Person verknüpft. Inzwischen konnten diese Sorgen mit der Bildung eines Core-Entwicklungsteams – aktuell bestehend aus vier Beteiligten – ausgeräumt werden.18

Zudem konnte mit einer beständigen Fortentwicklung des Systems über einen Zeitraum von inzwischen mehr als sieben Jahren Vertrauen auf die Kontinuität des Systems aufgebaut werden. In dieser Periode konnte sich Contao zudem zu einem der Top-5- CMS im deutschsprachigen Raum entwickeln und kann somit als etabliertes System angesehen werden.

Mit der neu erschienen 3er-Version wurde mit der umfassenden Unterstützung von mobilen Webseiten zuletzt bewiesen, dass angemessen auf technologische Trends reagiert wird. Zusätzliche Planungssicherheit für Entwickler und Nutzer von Contao soll der Release-Plan schaffen, der den Zeitraum bis zum Minor Release 3.6 abdeckt. Alles in allem scheint Contao somit eine sichere Zukunft des Systems in Aussicht stellen zu können.

Abbildung 17: Release-Plan von Contao 19

2.9 FAQ

Im Anhang der Arbeit werden Antworten zu häufigen Fragen rund um Contao gegeben. Auf https://contao.org/de/faq.html findet sich zudem ein FAQ zu speziellen Details.

18 Vgl. o.V., Contao Open Source CMS Team, https://contao.org/de/team.html, Seitenabruf am 23.12.13 19 o.V., Contao Open Source CMS Release-Plan, https://contao.org/de/release-plan.html, Seitenabruf am 23.12.13 Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 31 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz

3 Show-Case mit Contao

In unseren Show-Case möchten wir den Erstellungsprozess für eine kleine Webseite darstellen, deren zentraler Bestandteil ein Katalog sein wird, der mit Hilfe der Erweiterung MetaModels angelegt wird.

Ziel ist die Darstellung einer Art Studien-Portfolio mit einer Übersicht der im Laufe des Studiums erstellten Projekten, die nach bestimmten Attributen (Dozent, Fach) filterbar ist. Das Design der Seite basiert weitestgehend auf der Vorlage der offiziellen MetaModels-Demo.20 Das fertige Show-Case kann unter http://karsten- scholz.eu/projektliste.html eingesehen werden.

3.1 Installation

3.1.1 Systemvoraussetzungen

Die Installation von Contao 3 setzt mindestens PHP in Version 5.3.2 und MySQL ab Version 4.1 (aus Performancegründen wird MySQL 5 empfohlen). Zudem sind bestimmte PHP-Erweiterungen nötig:

• GDlib (für Bildverarbeitung) • DOM (für XML-Dateien) • SOAP (für das Extension Repository) • mbstring (für internationale Zeichen; optional) • mcrypt (für Verschlüsselung; optional)

3.1.2 Contao-Check

Ob der Server die aktuellen Systemvoraussetzungen erfüllt kann unkompliziert mit dem kleinen Tool „Contao Check“21 überprüft werden. Dazu muss aus dem herunterladbaren Paket lediglich der Ordner „check“ in das gewünschte Zielverzeichnis für die Contao- Installation geladen werden und anschließend mit einem Browser aufgerufen werden. Sollten bestimmte Voraussetzungen nicht gegeben sein, wird man an dieser Stelle direkt

20 siehe http://now.metamodel.me/a-movie-database/en/ 21 Download unter https://github.com/contao/check Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 32 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz mit entsprechendem Erläuterungstext darauf hingewiesen. Sind alle Bedingungen erfüllt sollte die Seite folgendermaßen aussehen:

Abbildung 18: Contao-Check

3.1.3 Installationsprozess

Hinweis: Aus Gründen der Kompatibilität mit der Erweiterung „MetaModels“, die aktuell noch in keiner stabilen Version für Contao 3 vorliegt, haben wir uns entschieden die 2.11er-Version zu installieren, die im Rahmen des Long-Term-Supports ebenfalls bis Mitte 2014 gepflegt wird.

Der Installationsprozess kann u.a. direkt aus dem „Contao Check“ heraus angestoßen werden. An dieser Stelle kann aus einer Vielzahl verschiedener (Zwischen-)Versionen gewählt werden.

Abbildung 19: Installation aus Contao-Check

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 33 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz Im nächsten Schritt wird man aufgefordert ein (separates) Passwort für das Installtool (contao/install.php) festzulegen.

Damit die Installation vollzogen werden kann, ist eine Verbindung zur Datenbank notwendig. In der Regel sind nur die Felder Treiber, Benutzername, Passwort und Datenbank von Nutzer auszufüllen.

Abbildung 20: Datenbankdaten eintragen Der nachfolgende Warnhinweis, wonach die Datenbank nicht aktuell ist, verweist lediglich darauf, dass die erforderlichen Datenbank-Tabellen noch angelegt werden müssen. Unter Beibehaltung der vorausgewählten Felder geschieht dies mit einem einzigen Mausklick aus dem Tool heraus.

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 34 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz Falls vorhanden kann an dieser Stelle ein Template (sql-datei) importiert werden, andernfalls startet man ganz normal mit einer leeren Installation. Sollte kein fertiges Template importiert worden sein (in welchem auch bereits Benutzerdaten angelegt sind), ist in einem letzten Schritt ein Admin-Benutzerkonto anzulegen mit welchem man sich anschließend im Backend (domain.tld/contao) anmelden kann.

Abbildung 21: Installation erfolgreich abgeschlossen

3.2 MetaModels

3.2.1 Installation

Aktuell gibt zwei Möglichkeiten die Erweiterung MetaModels zu installieren. Einerseits wird auf der Entwicklerseite ein sogenanntes „Nightly Build“ zum Download angeboten, welches manuell installiert werden kann, andererseits ist auch eine Installation mit Hilfe des Composers22 möglich. Wir haben uns für die erste Variante entschieden und werden diese nochmals kurz vorstellen:

1. Download des Nightly Builds von http://now.metamodel.me/en/about 2. Entpacken und die Inhalte aus den Ordnern system/drivers und system/modules per FTP in die entsprechenden Verzeichnisse übertragen 3. Contao-Installtool unter contao/install.php aufrufen und Datenbanktabellen aktualisieren 4. MetaModels ist nun als Backend-Modul angelegt (aber nicht in der Erweiterungsverwaltung zu finden)

22 Der Composer ist eine Community-Entwicklung über die Erweiterungen installiert werden können und die im Grunde eine moderne Alternative zum Extension Repository darstellen soll. Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 35 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz 3.2.2 Konfiguration eines Katalogs

Um einen Katalog anzulegen, muss zunächst das Backend eingerichtet werden.23 Nach dem Anlegen eines neuen MetaModels (Katalog) stehen für dieses folgende Backend- Funktionen zur Verfügung:

• Attribute: Definition der späteren Eingabefelder. Mindestens ein Feld muss einen eindeutigen Wert repräsentieren (im Allgemeinen wird dies der Alias sein, der automatisch aus einem oder mehreren anderen Attributen erzeugt wird). • Render-Einstellungen: Definiert u.a. die Darstellung der Katalog-Liste im Backend • Eingabemaske: Festlegung, wie die Daten-Eingabemaske aussieht und an welchem Menüpunkt sie in der Backend-Navigation platziert wird • Filter: Einstellungen bzgl. Filterung von Datensätzen oder Unterscheidung zwischen Listen- und Detailansicht, etc. Bestimmt die späteren Funktionen im Frontend (Funktion kann daher bei Einrichtung des Backend zunächst übersprungen werden). • Zugriffsrechte: Bestimmung, welche Mitglieder- bzw. Benutzergruppe Zugriff auf den Katalog erhält

Eine Besonderheit von MetaModels besteht in der Möglichkeit mehrere von ihnen zu verbinden. Das heißt ein Katalog (z.B. der Projektverzeichnis) kann über Attribute/Eingabefelder auf Daten eines anderen Katalogs (z.B. das Dozentenverzeichnis) zugreifen bzw. mit ihnen verknüpft werden. Im Show-Case wurden mit dieser Methode zwei Kataloge für Dozenten- und Fächer-Infos angelegt, die nachfolgend den Projekten zugeordnet werden können.

23 Eine beispielhafte Anleitung hierzu ist im Contao-Wiki dargestellt: http://de.contaowiki.org/MetaModels_Beispiel_1 Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 36 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz

Abbildung 22: Backend-Eingabemaske für Projekt

3.2.3 Frontend-Ausgabe von Katalog-Daten

Sollen die im Backend-Bereich erfassten Daten im Frontend – also für Webseiten- Besucher – ausgegeben werden, muss das Frontend ebenfalls entsprechend eingerichtet werden.

Im ersten Schritt sind hierfür in der normalen Seitenstruktur zwei neue Seiten anzulegen. Eine davon wird die spätere Listenansicht beinhalten (hier: Projektliste), die andere Seite ist für die Detailansicht verantwortlich (hier: Projekt).

MetaModels unterscheidet von Haus aus nicht zwischen Listen- und Detailansicht, wie dies sonst standardmäßig in Contao der Fall ist (und auch von der Vorgänger-

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 37 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz Erweiterung Catalog so gehandhabt wurde). Anstelle dessen ist jede Ansicht zunächst eine Listenansicht. Im Folgenden ist aus diesem Grund ein Filter für die Ausgabe zu erstellen, der zwischen n-Datensätzen (= Liste) bzw. ein Datensatz (= Detailansicht) unterscheidet. Dazu wird die Backend-Filter-Funktion verwendet, die bislang noch nicht zum Einsatz kam, für die Frontend-Ausgabe aber von entscheidender Bedeutung ist. Im Folgenden sind unter Verwendung des Filters mindestens zwei neue Rendereinstellungen für das Frontend anzulegen, für die Listen- und Detailansicht.

Die weiteren Einstellungen, die vorzunehmen sind, fügen sich weitgehend ich den Contao-Standardprozess ein: Es sind Frontend-Module zu erstellen, vom Modultyp „MetaModel-Liste“, in welchen die entsprechenden Filter- bzw. Rendereinstellungen angegeben werden. Final müssen die Frontend-Module noch an passender Stelle eingefügt werden. Dazu werden Artikel mit dem passenden Modul-Include in die anfangs angelegten Seiten für Detail- und Listenansicht eingefügt.

Eine detaillierte Anleitung, welche die Frontend-Einrichtung Schritt für Schritt beschreibt, findet sich unter http://de.contaowiki.org/MetaModels_Beispiel_2

Sollen die Besucher für die Katalogeinträge im Frontend zusätzlich eine Filtermöglichkeit zur Eingrenzung der Ergebnisse bekommen, sind hierfür weitere Filtereinstellungen notwendig, in welchen die Kriterien für die ausgewählten Attribute bestimmt werden. Im Anschluss ist wiederum ein Frontend-Modul anzulegen, diesmal vom Typ „MetaModel-Frontendfilter“. Dort sind die anzuwendenden Filtereinstellungen auszuwählen, wobei hier die zu filternden Attribute nochmals separat angewählt werden. Genauso wie die Listen-Module ist auch das Frontend- Modul für die Filterung abschließend in die Seitenstruktur einzubinden. Dabei gilt zu beachten, dass es auf die für die Listenansicht vorgesehene Seite eingefügt wird.

Mit dieser Einrichtung ist MetaModels bereits voll funktionsfähig. Sollen die Ausgabe in speziellen Details angepasst werden, müssten die entsprechenden Templates abgeändert werden. Mit ein wenig PHP-Kenntnissen lässt sich die Darstellung auf diese Weise noch weiter den eigenen Wünschen anpassen. Denkbare Szenarien wären in diesem Zusammenhang z.B. den Titel für die Verlinkung zur Detailseite zu nutzen anstelle des separaten Detaillinks oder die Labelausgabe individuell pro Attribut festzulegen, etc. Im Rahmen des Showcase wurde auf Anpassungen der Standard- Templates verzichtet.

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 38 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz

Abbildung 23: Listenansicht im Frontend Mit Hilfe der Filter in der linken Spalte der Seite können die gelisteten Projekte entweder nach Dozent und / oder Fach eingegrenzt werden:

Abbildung 24: Gefilterte Projektübersicht Über die Details-Links gelangt man zu den entsprechenden Detailseiten der Projekte, wo weitergehende Informationen zur Verfügung stehen.

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 39 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz

4 Anlage

Welche Verwendung erlauben die Lizenzbedingungen von Contao?

Contao ist ein Open-Source-System, welches unter GNU Lesser General Public License (kurz LGPL) lizensiert ist. Diese Lizenz erlaubt die Verwendung auch im Rahmen kommerzieller Projekte. Bedingung ist die Beibehaltung von Copyright-Hinweisen in Dateien und Quelltext.24 Sollte eine Entfernung dieser Copyright-Hinweise erforderlich sein, kann alternativ eine kommerzielle Lizenz für 499 Euro pro Domain erworben werden.25

Wird eine Community angeboten, wo Probleme diskutiert werden können?

Ja, die deutsche Community ist in einem Forum unter der Adresse https://community.contao.org/de/forum.php aktiv. Dort wird Hilfesuchenden in aller Regel schnell geholfen bei Fragen zum CMS, aber auch zu allen gängigen Erweiterungen. Zur Aktivität der Community einige Statistiken: Das Forum beinhaltet etwa 45.000 Themen bzw. 300.000 Beiträge, die von knapp 13.000 Benutzern verfasst worden (Stand: 28. Dezember 2013).

Sind Tutorials für Contao verfügbar?

Für Contao gibt es inzwischen diverse frei verfügbare Tutorials, die den Einstieg in das System erleichtern. In erster Linie sei an dieser Stelle auf die von offizieller Seite zur Verfügung gestellten Dokumente verwiesen:

• Handbuch: Von Installation, über Verwaltung von Seiten und Inhalte bis zum Extension Repository https://contao.org/de/manual.html (verfügbar für die Contao-Versionen 2.11 bis 3.2) • Kochbuch: Richtet sich an Entwickler. Beschreibt die Entwicklung eigener Inserttags, vorhandene Hooks oder die Nutzung von Inhaltselementen, etc.:

24 Vgl. Feyer, L., Darf ich Contao für kommerzielle Projekte verwenden?, https://contao.org/de/faq/darf- ich-contao-fuer-kommerzielle-projekte-verwenden.html, veröffentlicht am 7.6.10, Seitenabruf am 23.12.13 25 siehe http://www.inetrobots.com/shop/product_info.php?info=p15_Commercial-TYPOlight- license.html Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 40 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz https://contao.org/de/cookbook.html (verfügbar für die Contao-Versionen 2.11 bis 3.2)

Ergänzend dazu können die Autoren dieser Arbeit zusätzlich weiterhin die folgenden Quellen bzw. Anleitungen empfehlen:

• Contao-Wiki: Im von der Community gepflegten Contao-Wiki unter http://de.contaowiki.org/Hauptseite finden sich Hilfestellungen zu allgemeinen Themen wie der Installation und ersten Schritten mit Contao, aber auch Lösungen zu spezielleren Problemen und vor allem Dokumentation zu zahlreichen Erweiterungen. • Handbuch für Redakteure: Unter http://www.contao-handbuch.de findet sich die Onlineversion des Handbuches „Contao für Redakteure“, welches 2010 auch in Buchform erschienen ist. Trotz des bereits etwas zurückliegenden Erstelldatums bietet die Seite immer noch einen fundierten Einblick in das System. • Update-Hinweise: Mit jedem größeren Update von Contao gehen einige Veränderungen einher, die z.T. im Rahmen eines Updateprozesses entstehen und ggf. Anpassungen nach sich ziehen. Eine gute Quelle in diesem Zusammenhang bietet das offizielle Forum, in welchem Tipps & Tricks für Updates auf neue Versionen gesammelt werden, hier am Beispiel des Updates auf Version 3.2: https://community.contao.org/de/showthread.php?45884-Tipps-und-Tricks-zum- Update-auf-Contao-3-2

Gibt es eine Demo-Version zum Anschauen?

Ja, unter http://demo.contao.org/ gibt es eine öffentlich verfügbare Demo-Seite, für die Nutzer auch Zugriff auf das Backend haben (http://demo.contao.org/contao/ - Zugangsdaten sind voreingetragen) und Veränderungen vornehmen bzw. testen können. Zu beachten ist, dass die Demo-Version alle 45 Minuten auf ihren Ursprungszustand zurückgesetzt wird.

In welchen Sprachen ist Contao verfügbar?

Die offizielle Contao-Webseite – und die dort vorhandene Dokumentation – ist in Deutsch und Englisch verfügbar. In anderen Ländern, wie z.B. Frankreich (contao.fr), gibt es von Dritten betriebene Contao-Webseiten bzw. Dokumentationen in

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 41 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz Landessprache. Für das Backend des CMS stehen derzeit über 20 Sprachen zur Auswahl.

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 42 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz

5 Literaturverzeichnis

Ablehnung US-Justizministerium. (2009). Abgerufen am 11. 12 2013 von Golem.de: http://www.golem.de/0909/69971.html

All Hail Creative Commons / Stanford professor and author Lawrence Lessig plans a legal insurrection. (kein Datum). Von SFGate: http://www.sfgate.com/news/article/All-Hail-Creative-Commons-Stanford- professor-2874018.php abgerufen

Bayer. Staatsbibliothek. (2007). Abgerufen am 11. 12 2013 von Google Books Search: http://booksearch.blogspot.de/2007/03/bavarian-state-library-becomes- largest.html

Bringing history online, one newspaper at a time. (2008). Abgerufen am 11. 12 2013 von Google Official Blog: http://googleblog.blogspot.de/2008/09/bringing- history-online-one-newspaper.html

Bücherabsatz bis 2006. (2007). Abgerufen am 12. 12 2013 von Statista: http://webcache.googleusercontent.com/search?q=cache:vDADqPeCKLgJ:de.sta tista.com/statistik/daten/studie/36225/umfrage/absatzzahlen-fuer-buecher-in- deutschland-seit-2002/+&cd=2&hl=de&ct=clnk&gl=de&client=-a

CC-Historie. (kein Datum). Abgerufen am 11. 12 2013 von Creative Commons: http://creativecommons.org/about/history

CC-Lizenz. (kein Datum). Abgerufen am 11. 12 2013 von Creative Commons: http://i.creativecommons.org/l/by-nc-nd/3.0/88x31.png

Contao Open Source CMS Team. (kein Datum). Abgerufen am 23. 12 2013 von https://contao.org/de/team.html

E-Books erobern den Massenmarkt. (01. 10 2013). Abgerufen am 20. 1 2014 von Bitkom: http://www.bitkom.org/de/markt_statistik/64018_77541.aspx

E-Books setzen sich durch. (kein Datum). Abgerufen am 12. 12 2013 von Bitkom: http://www.bitkom.org/files/images/E-Reader.jpg

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 43 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz einige Zeilen verfügbar. (kein Datum). Abgerufen am 12. 12 2013 von Google books: http://books.google.com/googlebooks/excerpt_lg.gif

Feyer, L. (2008). Das offizielle TYPOlight Handbuch. Addison-Wesley Verlag.

Feyer, L. (15. 5 2010). Aus TYPOlight wird Contao. Abgerufen am 13. 12 2013 von https://contao.org/de/news/typolight-wird-zu-contao.html

Feyer, L. (7. 6 2010). Darf ich Contao für kommerzielle Projekte verwenden? Abgerufen am 23. 12 2013 von https://contao.org/de/faq/darf-ich-contao-fuer- kommerzielle-projekte-verwenden.html gb. (kein Datum). Abgerufen am 11. 12 2013 von Creative Commons: http://creativecommons.org/licenses/by-sa/3.0/de/

GB legt überarbeitetes Abkommen vor. (2009). Abgerufen am 11. 12 2013 von golem.de: http://www.golem.de/0911/71221.html

Google Books. (kein Datum). Abgerufen am 11. 12 2013 von Wikipedia: http://de.wikipedia.org/wiki/Google_Books

Google books help. (kein Datum). Abgerufen am 12. 12 2013 von Google books: https://support.google.com/books/partner/faq/3396243?rd=1

Google books-Logo. (2012). Abgerufen am 11. 12 2013 von Google books: http://books.google.de/intl/de/images/logos/books_logo_lg.png

Google darf gescannte Bücher online stellen. (2008). Abgerufen am 11. 12 2013 von golem.de: http://www.golem.de/0810/63214.html

Google scannt Bücher aus British Library. (2011). Abgerufen am 12. 12 2013 von golem.de: http://www.golem.de/1106/84349.html

Google-Gründer stellen in Frankfurt Google Print vor. (2004). Von Heise online: http://www.heise.de/newsticker/meldung/Google-Gruender-stellen-in-Frankfurt- Google-Print-vor-107663.html abgerufen

Gould, K. /. (27. 5 2013). State of the Open-Source-CMS. Abgerufen am 13. 12 2013 von http://t3n.de/news/state-open-source-cms-441808/

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 44 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz Hacking Google Print. (2005). Abgerufen am 12. 12 2013 von Kuro5hin: http://www.kuro5hin.org/story/2005/3/7/95844/59875

Informationen zum Buch. (kein Datum). Abgerufen am 12. 12 2013 von Google books: http://books.google.com/googlebooks/nopreview_lg.gif kb. (kein Datum). Abgerufen am 11. 12 2013 von Creative Commons: http://creativecommons.org/licenses/by-nd/3.0/de/

Limitierte Vorschau. (kein Datum). Abgerufen am 12. 12 2013 von Google books: http://books.google.com/googlebooks/example_lg.gif

Michigan Digitization Project. (2013). Abgerufen am 12. 12 2013 von University of Michigan: http://www.lib.umich.edu/michigan-digitization-project/michigan- digitization-project-umgoogle-cooperative-agreement

Müller, P. (12. 5 2013). Contao Konferenz 2013 - Workshop "Responsive Contao". Abgerufen am 13. 12 2013 von http://pmueller.de/blog/ck-2013-responsive- contao.html

Namensnennung 3.0 Deutschland. (kein Datum). Abgerufen am 11. 12 2013 von Creative Commons: http://creativecommons.org/licenses/by/3.0/de/

Naturalis historiae by Pliny (the Elder). (1668). Abgerufen am 12. 12 2013 von Google books: http://books.google.de/books?id=mTG1AAAAMAAJ&pg=PA1&redir_esc=y#v =onepage&q&f=false nk. (kein Datum). Abgerufen am 11. 12 2013 von Creative Commons: http://creativecommons.org/licenses/by-nc/3.0/de/ nkgb. (kein Datum). Abgerufen am 11. 12 2013 von Creative Commons: http://creativecommons.org/licenses/by-nc-sa/3.0/de/ nkkb. (kein Datum). Abgerufen am 11. 12 2013 von Creative Commons: http://creativecommons.org/licenses/by-nc-nd/3.0/de/

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 45 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz Plessner, C. (kein Datum). Open Source CMS-Systeme im Vergleich. Abgerufen am 11. 1 2014 von http://www.visual4.de/open-source-cms-system/cms-vergleich- joomla-wordpress-typo3-drupal-contao-plone.html

Staatsbibliothek Lyon. (2008). Abgerufen am 11. 12 2013 von derStandard.at: http://derstandard.at/3413041

Texterkennung OCR. (2011). Abgerufen am 11. 12 2013 von Wikipedia: http://upload.wikimedia.org/wikipedia/de/6/68/Beispiel_Texterkennung.png

US-Gericht bremst Googles Bücherpläne. (2011). Abgerufen am 11. 12 2013 von Zeit online: http://www.zeit.de/digital/internet/2011-03/google-books-gericht-2

Was ist CC? (kein Datum). Abgerufen am 11. 12 2013 von Creative Commons.de: http://de.creativecommons.org/was-ist-cc/

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 46 von 47 Open Books & Contao FH Schmalkalden - WS 2013/2014 Sebastian Reinicke & Karsten Scholz

6 Abbildungsverzeichnis

Abbildung 1: (CC-Lizenz) ...... 5 Abbildung 2: (Google books-Logo, 2012) ...... 5 Abbildung 3: Vgl. Lizenzmodelle (Was ist CC?) ...... 7 Abbildung 4: (Texterkennung OCR, 2011) ...... 8 Abbildung 5: (Informationen zum Buch) ...... 14 Abbildung 6: (einige Zeilen verfügbar) ...... 14 Abbildung 7: (Limitierte Vorschau) ...... 15 Abbildung 8: (Naturalis historiae by Pliny (the Elder), 1668) ...... 16 Abbildung 9: (E-Books erobern den Massenmarkt) ...... 17 Abbildung 10: Auszug aus der Deutschland-Statistik von CMSCrawler ...... 21 Abbildung 11: Auszug aus CMS-Liste von WebKalkulator ...... 22 Abbildung 12: Vergleich der Suchanfragen nach CMS bei Google Trends ...... 22 Abbildung 13: Inhaltserstellung im Vergleich ...... 29 Abbildung 14: Benutzerverwaltung im Vergleich...... 29 Abbildung 15: Technische Details im Vergleich ...... 29 Abbildung 16: Entscheidungsmatrix für Wahl von CMS ...... 30 Abbildung 17: Release-Plan von Contao ...... 31 Abbildung 18: Contao-Check ...... 33 Abbildung 19: Installation aus Contao-Check ...... 33 Abbildung 20: Datenbankdaten eintragen ...... 34 Abbildung 21: Installation erfolgreich abgeschlossen...... 35 Abbildung 22: Backend-Eingabemaske für Projekt ...... 37 Abbildung 23: Listenansicht im Frontend ...... 39 Abbildung 24: Gefilterte Projektübersicht ...... 39

Blockseminar - Software- und Service-Scout Dozent: Jo Tzschenscher Seite 47 von 47 FH Schmalkalden WS 2013/2014

Studiengang: Angewandte Medieninformatik

Blockseminar: Software- und Service-Scout

Dozent: Dipl.-Phys. Jo Tzschenscher

Creative-Commons-Lizenz

Mit der Creative-Commons-Lizenz wurde ein nicht-kommerzielles Lizenzmodell geschaffen, das es erlaubt, die Weiterverwertung von Medienprodukten graduell festzulegen. Beschreiben Sie, wie dieses Lizenzmodell funktioniert, und geben Sie einen Überblick, wie sich dieses vom Standard-Copyright und weiteren in der Open-Source-Scene üblichen Lizenzmodellen unterscheidet.

Open Source Media Framework

(http://www.opensourcemediaframework.com) simplifies the development of media players by allowing developers to assemble components to create high-quality, full- featured video playback experiences. This open framework enables development focused on web-based video monetization, with lower costs and faster turnaround.

Christian Fischer

[email protected]

CC & OSMF FH Schmalkalden - WS 2013/2014 Christian Fischer

Inhaltsverzeichnis

Creative-Commons-Lizenz

1. Was ist das CC Lizenzmodell S.03 2. Wie funktioniert der CC Lizenzmodell S.04 3. Was bietet CC S.06 3.1 Vorteile S.06 3.2 Gründe für eine CC-Lizenz S.07 4. Abgrenzung zum Standard Copyright und weiteren üblichen Lizenzmodellen S.08 4.1 Free Software Foundation S.08 4.2 GEMA S.08 5. Technische Umsetzung S.09 6. Praxisbeispiel S.10 7. Quellenangaben S.11

Open Source Media Framework

1. Einleitung S.13 2. Begriffsabgrenzung S.13 2.1 Open Source S.14 2.2 Framework S.15 2.2 Frameworktypen S.15 3. Open Source Media Framework S.16 3.1 OSMF Vorteile S.16 3.2 OSMF Grundstruktur S.17 3.3 OSMF Dateiformate S.18 3.4 OSMF Funktionen – Codebeispiele S.19 3.5 OSMF - Streaming S.24 3.6 OSMF Support & Diskussionsmöglichkeiten S.25 4. Fazit S.27 5. Quellenangaben S.28

Blockseminar - Software- und Service-Scout Seite 2 von 28 Dozent: Jo Tzschenscher CC & OSMF FH Schmalkalden - WS 2013/2014 Christian Fischer

„All Rights Reserved“

Wer sich häufig im Medienbereich bewegt, Webseiten oder Flyer gestaltet stößt sehr häufig bei der Suche nach geeigneten Bildern oder Videos auf diese Worte. Zwar gibt es einschlägige Portale, die eine gewisse Kapazität an freien Inhalten zur Verfügung stellen, jedoch sind diese stark begrenzt und es kommt häufig vor, dass Inhalte des Öfteren für mehrere Webseiten genutzt werden. Auch im Bereich Software, werden häufig bereits bestehende digitale Inhalte genutzt, um darauf Innovationen aufzubauen. Hier stellen die Worte „All Rights Reserved“ ein großes Hindernis dar. Abhilfe schafft Creative Commons, die Lizenzmodelle entworfen haben, die sowohl den Urhebern selbst, als auch den Personen, die die Werke weiterverarbeiten weiterhelfen.

1. Was ist das CC Lizenzmodell?1

Die Organisation Creative Commons, wurde im Jahre 2001 durch Rechtsexperten, IT- Wissenschaftler und Filmproduzenten gegründet. Der Hauptgeschäftssitz von Creative Commons befindet sich in San Francisco. Europäische Angelegenheiten werden jedoch durch das CC- Büro in Berlin betreut, das komplett ehrenamtlich betrieben wird. Creative Commons bzw. deren Lizenzen sind für Nutzer kostenfrei, d.h. CC ist eine Non-Profit- Organisation, die sich zunächst durch Spenden finanziert. Mittlerweile finden regelmäßig „Fundraisings“ statt, durch die der internationale Betrieb gewährleistet wird. Was bietet Creative Commnons überhaupt? CC stellt Lizenzverträge zur Verfügung, die es Urhebern erlaubt, sich bei der Weiterverarbeitung Ihrer Schöpfungen von den standardisierten Copyrightregelungen abzuheben. Genauer geschieht dies in Form von sechs verschiedenen Lizenzmodellen, die im späteren Verlauf dieser Studienarbeit noch genauer beleuchtet werden. CC ist dabei nicht als Verwerter/Verleger oder Vertragspartner von Urhebern tätig, sondern sieht sich als reiner Anbieter von Lizenzen, die durch die Urheber in eigener Verantwortung zugewiesen werden können.

Ohne die CC-Lizenzen hatten Urheber nur die Wahl, ihre Werke komplett unter den gesetzlichen Standardschutz zu stellen, oder aber komplett auf Schutz zu verzichten. Die

1Vgl. http://de.creativecommons.org/ ,Seitenabruf am 20.03.12

Blockseminar - Software- und Service-Scout Seite 3 von 28 Dozent: Jo Tzschenscher CC & OSMF FH Schmalkalden - WS 2013/2014 Christian Fischer

Aussage „Some Rights Reserved“ statt „All Rights Reserved“, stellt ein Spiegelbild dessen dar, was CC vermitteln möchte. Viele Kreative haben erkannt, dass striktes Beharren auf Urheberrechten der gewünschten Aufmerksamkeit für ihre Inhalte und deren Verbreitung im Internet oftmals im Wege steht. Scheinbar haben viele Internetnutzer großes Interesse daran, ihre Inhalte anderen zugänglich zu machen und, indem sie der Öffentlichkeit die Rechte zur Weiterverwendung, Bearbeitung und zum intensiven Austausch sowie der Verbreitung von wissenschaftlichen und künstlerischen Inhalten einräumen.

2. Wie funktioniert das CC Lizenzmodell?

Mit Hilfe von Creative Commons werden verschiedene Lizenzelemente zur Verfügung gestellt, aus denen der Urheber genau den individuellen Lizenzvertrag zusammenstellen kann, der seinen Vorstellungen entspricht. Man erkennt schon am Namen des jeweiligen CC- Lizenztyps, was die wichtigsten Bedingungen bei der Nutzung des Inhalts sind. Aufgelistet werden folgende Lizenzelemente angeboten:2

Namensnennung: Erlaubt Nutzern, unter der Voraussetzung, dass die Rechteinhaberschaft durch Nennung des Namens in der von ihm festgelegten Weise anerkannt wird, Ihren Inhalt und darauf aufbauende Bearbeitungen zu vervielfältigen, zu verbreiten, aufzuführen und öffentlich zugänglich zu machen.

Nicht-Kommerzielle Nutzung: Erlaubt Nutzern, den Inhalt und darauf aufbauende Bearbeitungen nur zu nicht-kommerziellen Zwecken zu vervielfältigen, zu verbreiten, aufzuführen und öffentlich zugänglich zu machen. Eine Ausnahme wurde hier für das „Filesharing“ getroffen, da dies nach derzeitigem Recht eine kommerzielle Nutzung darstellt, auch wenn kein Geld fließt.

Keine Bearbeitungen: Erlaubt Nutzern, nur unveränderte Kopien des Inhalts zu vervielfältigen, zu verbreiten, aufzuführen und öffentlich zugänglich zu machen, dagegen sind keine Bearbeitungen erlaubt, die auf diesem Inhalt basieren.

2 Vgl. http://de.creativecommons.org/was-ist-cc/, Seitenabruf am 20.03.2012

Blockseminar - Software- und Service-Scout Seite 4 von 28 Dozent: Jo Tzschenscher CC & OSMF FH Schmalkalden - WS 2013/2014 Christian Fischer

Weitergabe unter gleichen Bedingungen: Erlaubt Nutzern, Bearbeitungen des Inhalts nur unter einem Lizenzvertrag zu verbreiten, der mit demjenigen identisch oder vergleichbar ist, unter dem selbst der ursprüngliche Inhalt lizenziert wurde. Für die Auswahl eines Lizenzmodelles ergeben sich folgende logisch sinnvolle Kombinationen: Kombination Das ist erlaubt: - Namensnennung3 - Vervielfältigen - Verbreiten - öffentlich zugänglich machen - Abwandlungen und Bearbeitungen - das Werk kommerziell nutzen - Namensnennung4 - vervielfältigen - Keine Bearbeitung - verbreiten - öffentlich zugänglich machen - das Werk kommerziell nutzen - Namensnennung5 - Vervielfältigen - NichtKommerziell - Verbreiten - öffentlich zugänglich machen - Abwandlungen und Bearbeitungen - Namensnennung6 - Vervielfältigen - Nicht Kommerziell - Verbreiten - Keine Bearbeitung - öffentlich zugänglich machen - Namensnennung7 - Vervielfältigen - Nicht Kommerziell - Verbreiten - Weitergabe unter gleichen - öffentlich zugänglich machen Bedingungen - Abwandlungen und Bearbeitungen - Namensnennung8 - Vervielfältigen - Weitergabe unter gleichen - Verbreiten Bedingungen - öffentlich zugänglich machen - Abwandlungen und Bearbeitungen - das Werk kommerziell nutzen

3 http://creativecommons.org/licenses/by/3.0/de/ 4 http://creativecommons.org/licenses/by-nd/3.0/de/ 5 http://creativecommons.org/licenses/by-nc/3.0/de/ 6 http://creativecommons.org/licenses/by-nc-nd/3.0/de/ 7 http://creativecommons.org/licenses/by-nc-sa/3.0/de/ 8 http://creativecommons.org/licenses/by-sa/3.0/de/

Blockseminar - Software- und Service-Scout Seite 5 von 28 Dozent: Jo Tzschenscher CC & OSMF FH Schmalkalden - WS 2013/2014 Christian Fischer

Natürlich gäbe es theoretisch auch die Option „Keine Bearbeitung & Weitergabe unter gleichen Bedingungen“, was aber wenig Sinn macht, da ohne Bearbeitung keine Veränderung des Werkes stattfindet, die man unter neuem Namen weitergeben müsste. Zu beachten ist außerdem, dass jede Bedingung aufgehoben werden kann, sofern der Inhaber der Rechte einwilligt. Es muss immer kenntlich gemacht werden, welche Lizenzbedingungen für das jeweilige Werk gelten. In diesem Zusammenhang gilt die Besonderheit, dass im Gegensatz zum klassischen Copyright die Möglichkeiten der CC-Lizenzgestaltung direkt in die gewünschte Sprache übersetzt werden.

Wurde durch den Lizenznehmer ein passender Lizenzvertrag ausgewählt, so erhält er diesen in drei Ausführungen:

1. Die Allgemeinverständliche Ausführung, die einfach gehalten ist, und in allgemeinverständlicher Sprache eine Zusammenfassung für Nicht-Juristen bietet.

2. Die Juristische Ausführung, die für Juristen einen im Rechtsverkehr gültigen Lizenzvertrag darstellt.

3. Die Digitale Ausführung, die es möglich macht, Suchmaschinen und Anwendungen den Inhalt nach Nutzungsbedingungen zu kategorisieren.

Alternativ zu diesen auswählbaren Kombinationen kann der Inhalt eines Werkes selbstverständlich auch komplett ohne Beschränkungen freigegeben werden. Dies bezeichnet man als „“. Hier stellen allerdings die landesspezifischen Rechtsauslegungen eine Hürde dar. Während das Überlassen der Inhalte der Public Domain nach amerikanischem Recht kein Problem darstellt, ist dies nach deutschem Recht nicht möglich, da eine Urheberschaft nicht aufgegeben werden kann. Hier hilft es, Anderen einfach die Nutzungsrechte an seinem Werk einzuräumen.

3. 3. Was bietet CC?

3.1 Vorteile

Welche Vorteile bieten die von Creative Commons angebotenen Lizenzen sowohl für die geistigen Schöpfer, als auch für die Nutzer der Inhalte?

Blockseminar - Software- und Service-Scout Seite 6 von 28 Dozent: Jo Tzschenscher CC & OSMF FH Schmalkalden - WS 2013/2014 Christian Fischer

Nutzertyp Vorteile Schöpfer - Vorformulierte, rechtsgültige Lizenzverträge in mehreren Ausführungen zum Download - Digitale Verträge sind für Web- Applikationen optimiert - Direkte Kommunikation zwischen Nutzer und Rechteinhaber entfällt i.d.R. - Einzelvereinbarungen weiterhin möglich - Eindeutig definierter Schutz und Kontrolle - Eigene Werkte werden weiterverwendet

Nutzer - Freie Kommunikation - Flexibles Umgehen mit bestehenden Arbeiten - Verwenden Bereits bestehender Anwendungen als Basis für Innovation - Direkte Kommunikation zwischen Nutzer und Rechteinhaber entfällt i.d.R. - Einzelvereinbarungen weiterhin möglich - Abbau von Unsicherheiten über Nutzungsbedingungen

3.2 Gründe für eine CC-Lizenz

Die Gründe, die Entscheidung für Creative Commonslizenzen zu treffen sind sehr vielfältig. Einerseits gibt es Idealisten, die die Verbreitung von offenen Lizenzmodellen für gut heißen und so ein klares Statement abgeben wollen. Die Freiheit, nicht für jede Verwendung beim Urheber nachfragen zu müssen stellt einen Hauptgrund für sie dar. Oft kommt es vor, dass die Inhalte ohne diese Freiheiten entweder gar nicht oder ohne Erlaubnis genutzt werden, was beides nicht im Sinne der Urheber ist. Andererseits sehen Urheber auch eindeutig den Vorteil gegeben, auf sich aufmerksam zu machen um einen kommerziellen Nutzen zu haben. Beispielsweise junge Künstler, die aufgrund mangelnder Bekanntheit in ihrer Karriere stagnieren, finden so eine Option, ihre Werke rasch zu verbreiten. Bereits heute wird in Suchmaschinen gezielt nach frei lizenzierten Werken gesucht, die dann über bestimmte Plattformen zu erreichen sind. Ein weiterer Grund ist, dass Urheber selbst einen Beitrag zum Mediapool leisten wollen. Nach dem Motto. „Geben und Nehmen“ soll verfahren werden, um

Blockseminar - Software- und Service-Scout Seite 7 von 28 Dozent: Jo Tzschenscher CC & OSMF FH Schmalkalden - WS 2013/2014 Christian Fischer nicht nur selbst zu profitieren, sondern auch um anderen Nutzern einen Mehrwert an der einen Schöpfung zu bieten. Je größer die Creative Commons-Community wird, desto mehr neue Formen können entwickelt werden. Es wird bei der Verwendung der Public Domain Inhalte jedoch erwartet, im Falle einer Veröffentlichung der Modifizierung, diese ebenfalls „frei“ zur Verfügung zu stellen.

4. Abgrenzung zum Standard Copyright und weiteren üblichen Lizenzmodellen

Wie bereits beschrieben, grenzt sich Creative Commons eindeutig von Standartcopyright ab, indem es gewisse Freiheiten in Bezug auf die Verwendung von Werken gibt. Neben diesen beiden Optionen der Lizenzierung ist noch die „Free Software Foundation“9 weit verbreitet.

4.1 Free Software Foundation

Im Vergleich zu Creative Commons, haben sich diese Lizenzanbieter direkt auf bestimmte Genres spezialisiert. Die „Free Software Foundation“ beispielsweise, hat ihr Hauptaugenmerk speziell auf den Bereich Software gelegt. Inzwischen gibt es mit der „Bremer Lizenz für freie Softwarebibliotheken“ auch den ersten auf das deutsche Recht zugeschnittenen Open Source- Lizenzvertrag.Im Gegensatz zu den CC- Lizenzverträgen, die keine ausdrückliche Erwähnung des Source- oder Object-Code enthalten, wurden diese existierenden Lizenzen speziell für die Einräumung von Rechten an Software konzipiert. Ein gutes Beispiel, welches hier zu nennen ist, ist die Betriebssystemsoftware Linux. Hier wird der so genannte „Source-Code“ zur Verfügung gestellt, auf dessen Grundlage die Software individuell veränderbar ist. Die FSF beteiligt sich zudem häufig an Kampagnen, die Nutzer gezielt über freie Betriebssysteme als Alternative zu den gebührenpflichtigen Closed-Code-Betriebssystemen aufklären sollen.

4.2 GEMA

In diesem Zusammenhang muss auch noch eine Organisation genannt werden, die Ihren Wirkungskreis besonders auf Deutschland beschränkt hat. Die Gesellschaft für musikalische Aufführungs- und mechanische Vervielfältigungsrechte (GEMA) bietet ein besonderes Verhältnis zwischen Urheber und Nutzer der Inhalte. 10 Urheber werden Mitglied bei der

9 Vgl.Wikipedia (Free Software Foundation, 2012) 10 Vgl.Wikipedia (GEMA, 2012)

Blockseminar - Software- und Service-Scout Seite 8 von 28 Dozent: Jo Tzschenscher CC & OSMF FH Schmalkalden - WS 2013/2014 Christian Fischer

GEMA und übertragen die Rechte an ihrem Gesamtrepertoire an die Organisation. Nutzer dieser Werke sind Hersteller von (Bild-/)Tonträgern, Rundfunk- und Fernsehsender, Veranstalter von Event usw. Diese erwerben bei der GEMA die jeweils notwendigen Nutzungsrechte gegen die Zahlung einer Vergütung, die dann nach Abzug einer Verwaltungsgebühr von ca. 15 % an die Berechtigten ausgezahlt wird. Diese Art der Verträge nennt man „Pay For Use Lizenzverträge“. Der Gesamtumsatz der GEMA betrug im Jahre 2010 immerhin 863 Mio. Euro. Erwähnenswert ist ebenso, dass die GEMA auch für Geräte und Medien eine Gebühr erhebt, die das Kopieren von Musik ermöglichen. (z.B. CD- Rohlinge). Damit nimmt die GEMA auch die "Rechte" an Werken war, deren Verwertung ihr niemals explizit übertragen wurde, quasi eine "Rechtsanmassung", die vermutlich eher durch eine weitläufige Rechtsauslegung als durch das Urheberrechtsgesetz geregelt ist. Diese Gebühr ist auch bereits im Kaufpreis enthalten. Auch im Online-Bereich nimmt die GEMA Rechte der Urheber wahr. Dabei lizenziert die Organisation den jeweils verantwortlichen Provider. Als Beispiele wären hier Musicload, Napster oder der iTunes Store von Apple zu nennen. Sowohl hier als auch bei Youtube werden Medieninhalte auch von solchen Künstlern pauschal mit Lizenzgebühren belegt, die überhaupt nicht in der GEMA organisiert sind, wie auch bei der neuesten DJ-Abgabe pro auf dem Speichermedium des DJs gespeicherten Musikstück. Es darf jedoch hinterfragt werden, ob es im digitalen Zeitalter noch im Interesse der Künstler ist, auf diese Art und Weise Geld zu verdienen. Es sollte doch freigestellt sein, einzelne Stücke unter ein flexibleres Lizenzsystem, wie das von Creative Commons zu stellen.

5. Technische Umsetzung

Natürlich ist es interessant auch einen Blick darauf zu werfen, wie Creative Commons versucht, die Lizenzverträge auch technisch umzusetzen. Hier wird ein Tool für alle Rechteinhaber zur Verfügung gestellt, durch dem betreffenden Inhalt (Bilder, Videos, etc.) mit Meta-Daten zur Lizenzierung mitgegeben werden. Suchmaschinen und andere Anwendungen sind hierdurch wie bereits beschrieben in der Lage, die unter Creative Commons-Lizenzverträgen stehenden Inhalte leichter aufzufinden und zu sortieren. Die Organisation nutzt hierfür das Ressource Description Framework Format – kurz RDF. Dies ist ein Standard des W3C (World Wide Web Consortium), und dient zur formalen Beschreibung von Informationen. In diesem Falle können die Inhalte durch ein Publishertool

Blockseminar - Software- und Service-Scout Seite 9 von 28 Dozent: Jo Tzschenscher CC & OSMF FH Schmalkalden - WS 2013/2014 Christian Fischer mit Meta-Daten wie Titel, Autor und die Bestimmungen der Copyrightverträge beschrieben werden.11 Von dem Datenmodell sind die möglichen Repräsentationsformate für RDF-Daten zu unterscheiden. RDF-Daten können in dem vom W3C spezifizierten XML-Format RDF/XML serialisiert werden, welches häufig verkürzend und irreleitend auch einfach nur als „RDF“ bezeichnet wird.

6. Praxisbeispiel

In der Praxis könnte ein Bespiel folgendermaßen aussehen12: Ein Fotograph macht Bilder und bietet die Aufnahmen unter der Bedingung an, diese nicht kommerziell zu nutzen. Eine Person, die gerne eine Website für besonders gelungene Aufnahmen erstellen will, könnte eines dieser Bilder nutzen. Kommt andererseits ein Redakteur einer Zeitschrift, der eine Aufnahme für die Titelseite verwenden möchte, ist dies nicht möglich. In solchen Fällen können jedoch immer noch separate Vereinbarungen zwischen dem Fotographen und dem Redakteur getroffen werden, die dann auch vergütet werden können. Im genannten Beispiel, wäre das Bild bzw. die Webseite, die diese Bilder anbietet wie folgt gekennzeichnet.

Zusammenfassend muss gesagt werden, dass Creative Commons ein sehr interessantes und zukunftsweisendes Produkt auf den Markt gebracht hat. Im digitalen Zeitalter in dem immer mehr „Selfmade-Künstler“ auf den Markt drängen, bietet CC ihnen eine Möglichkeit sich leichter darzustellen, um eigene Werke zu verbreiten.

11 Vgl.Wikipedia (Resource Description Framework, 2012) 12 http://creativecommons.org/choose/ ,Seitenabruf am 20.03.12

Blockseminar - Software- und Service-Scout Seite 10 von 28 Dozent: Jo Tzschenscher CC & OSMF FH Schmalkalden - WS 2013/2014 Christian Fischer

6. Quellenangaben: Wikipedia, o.V., Resource Description Framework, http://de.wikipedia.org/wiki/Resource_Description_Framework, Seitenabruf am 25.03.12 Wikipedia, o.V., Gema, http://de.wikipedia.org/wiki/GEMA,Seitenabruf am 25.03.12 Wikipedia, o.V., Free Software Foundation, http://de.wikipedia.org/wiki/Free_Software_Foundation, Seitenabruf am 25.03.12 http://www.w3.org/RDF/ ,Seitenabruf am 21.03.12 http://de.creativecommons.org/ ,Seitenabruf am 20.03.12 http://de.creativecommons.org/was-ist-cc/ ,Seitenabruf am 20.03.12 http://creativecommons.org/choose/ ,Seitenabruf am 20.03.12 http://creativecommons.org/licenses/by/3.0/de/, Seitenabruf am 20.03.12 http://creativecommons.org/licenses/by-nd/3.0/de/, Seitenabruf am 20.03.12 http://creativecommons.org/licenses/by-nc/3.0/de/, Seitenabruf am 20.03.12 http://creativecommons.org/licenses/by-nc-nd/3.0/de/, Seitenabruf am 20.03.12 http://creativecommons.org/licenses/by-nc-sa/3.0/de/, Seitenabruf am 20.03.12 http://creativecommons.org/licenses/by-sa/3.0/de/, Seitenabruf am 20.03.12

Blockseminar - Software- und Service-Scout Seite 11 von 28 Dozent: Jo Tzschenscher CC & OSMF FH Schmalkalden - WS 2013/2014 Christian Fischer

Open Source Media Framework (Open Source Media Framework (OSMF), http://www.opensourcemediaframework.com) simplifies the development of media players by allowing developers to assemble components to create high-quality, full-featured video playback experiences. This open framework enables development focused on web-based video monetization, with lower costs and faster turnaround.

Blockseminar - Software- und Service-Scout Seite 12 von 28 Dozent: Jo Tzschenscher CC & OSMF FH Schmalkalden - WS 2013/2014 Christian Fischer

1. Einleitung

„Das Internet ist wie eine Welle: Entweder man lernt, auf ihr zu schwimmen, oder man geht unter“ 13 (Bill Gates, Unternehmer)

Mit diesem Zitat von Bill Gates möchte ich diese Studienarbeit zum Thema „OSMF – Open Source Media Framework beginnen. In Zeiten des Internets, in denen quasi täglich mehr oder weniger sinnvolle Tools auf den Markt geworfen werden, um Arbeitsvorgänge zu beschleunigen fällt es schwer, einen Überblick zu behalten. Viele Tools und Computerprogramme sind dabei mit einem Kostenaufwand für die Erstellung verbunden. Meist gibt es aber zu jeder Software eine kostenlose Alternative. Diese muss nicht zwingend schlechter sein, sondern zeichnet sich häufig nur durch eine andere Usability oder andere Features aus. Im Grunde jedoch sind diese Alternativen mit kostenpflichtigen Tools und Computerprogramme auf einer Ebene. Ebenso gibt es viele Erweiterungen, die speziell für Programmierer und Entwickler ausgelegt sind. Eine solche Erweiterung bietet die Bibliothek des Open Source Media Frameworks, mit der Mediaplayer für den Onlinebereich erstellt werden können, die sich je nach Wunsch individuell gestalten und anpassen lassen. In dieser Studienarbeit, soll dieses Framework vorgestellt werden, und die Verwendung durch einige kurze Codebeispiele dokumentiert werden. Außerdem sollen die auf der Hand liegenden Vorteile des OSMF erörtert werden. Eine solch komplexe Bibliothek ist selbstverständlich nicht einfach so zu erlernen, weshalb sich ein Kapitel komplett den Möglichkeiten des Supports widmet. Doch zunächst sollte ein genauerer Blick auf die genaue Bedeutung des Open Source Media Frameworks geworfen werden.

2. Begriffsabgrenzung

Wie bereits festgestellt ist OSMF – eine Bibliothek, für die Erstellung für Mediaplayer. Doch was genau versteckt sich dahinter. Die sinngemäße Übersetzung ins Deutsche bringt Aufschluss.

13 Vgl. http://www.gergey.com/zitate/ Seitenabruf am 15.03.13

Blockseminar - Software- und Service-Scout Seite 13 von 28 Dozent: Jo Tzschenscher CC & OSMF FH Schmalkalden - WS 2013/2014 Christian Fischer

2.1 Open Source

Open – dt. offen / öffentlich Source - dt. Quelle / Ursprung

Open Source nennt man meist Software, die der Öffentlichkeit zur kostenlosen Nutzung zur Verfügung gestellt wird. Weiter ist von Open Source Software ist die Rede, wenn deren Lizenzverträge den folgenden drei charakteristischen Merkmalen entsprechen.14

1. Die Software liegt in einer für den Menschen lesbaren und verständlichen Form vor: In der Regel handelt es sich bei dieser Form um die Quelltexte in einer Programmiersprache die vor dem eigentlichen Programmablauf durch einen Compiler in die binäre Form (Zahlenkombinationen bestehend aus 0 und 1) gebracht werden, um vom Hauptrechner verarbeitet werden zu können. 2. Die Software darf beliebig kopiert, verbreitet und genutzt werden. Diese Charaktereigenschaft hat zur Folge, dass es keine Nutzungsbeschränkungen gibt, egal wie viele Nutzer die Software (auch mehrmals) installieren. Mit der Vervielfältigung und der Verbreitung von Open-Source-Software sind zudem keine Zahlungsverpflichtungen gegen einen Lizenzgeber verbunden. 3. Die Software darf verändert und in der veränderten Form weitergegeben werden. Dieses Charakteristikum ist ein Herzstück und Sinnesinhalt von Open – Source, da hier dazu animiert wird, durch bestehende Software zu lernen aber auch zu verbessern. So werden Nutzer aktiv in die (Weiter-)Entwicklung und Verbesserung von Software eingebunden.

Der Begriff Open Source beschränkt sich jedoch nicht ausschließlich auf Software, sondern schließt auch Wissen und Information ein, die der Öffentlichkeit kostenlos zur Weiterverarbeitung bereit gestellt werden.

14 Vgl.Wikipedia (Open Source, 2013)

Blockseminar - Software- und Service-Scout Seite 14 von 28 Dozent: Jo Tzschenscher CC & OSMF FH Schmalkalden - WS 2013/2014 Christian Fischer

2.2 Framework

Frame – dt. Rahmen to work - dt. arbeiten

Unter einem Framework versteht man wie die Übersetzung bestätigt, einen Rahmen. Dieser Rahmen ist ein Programmiergerüst, mit dessen Hilfe sich Software entwickeln lässt.15 Es ist zu beachten, dass ein Framework selbst noch kein fertiges Programm ist, sondern lediglich den Rahmen zu Verfügung stellt, innerhalb dessen der Programmierer eine Anwendung erstellen kann. Das Framework liefert bestimmte Struktur, Muster und Konstrukte (die sog. Anwendungsarchitektur), die die Erstellung sehr vereinfacht. Frameworks werden also im Allgemeinen mit dem Ziel einer Wiederverwendung „architektonischer Muster“ entwickelt und genutzt.

2.3 Frameworktypen

Prinzipiell kann man in viele verschiedene Frameworktypen unterschieden Zu den wichtigsten Typen zählen die Application Frameworks. Diese bilden ein Programmiergerüst für bestimmte Klassen innerhalb von Anwendungen. Die bereitgestellten Funktionen und Programmstrukturen sind hier bei allen Anwendungen der Klasse von Bedeutung. Bei den Domain Frameworks hingegen gilt das Gerüst nur innerhalb eines bestimmten Problembereichs. Außerhalb werden implementierte Funktionen nicht benötigt. Komponenten-Frameworks abstrahieren von der objektorientierten Ebene und bieten eine Umgebung zur Entwicklung und Integration von Software-Komponenten an. Webframeworks sind ausgelegt für die Entwicklung von dynamischen Webseiten, Webanwendungen oder Webservices. Um diese zu auf Funktionen zu prüfen, gibt es die sog. Test Frameworks, zur Ausführung von (automatisierten) Softwaretests dienen.16

Zusammenfassend bleibt also zu sagen, dass sich hinter dem Begriff Open Source Media Framework ein kostenloses Rahmenprogrammiergerüst versteckt. Welche Eigenschaften dieses Framework hat, und wie damit gearbeitet wird, soll in den folgenden Kapiteln genauer beleuchtet werden.

15 Vgl.Wikipedia (Framework, 2013) 16 Vgl.Wikipedia (Framework, 2013)

Blockseminar - Software- und Service-Scout Seite 15 von 28 Dozent: Jo Tzschenscher CC & OSMF FH Schmalkalden - WS 2013/2014 Christian Fischer

3. Open Source Media Framework

Das Open Source Media Framework (OSMF) bietet vorgefertigte Software-Komponenten bzw. Bibliotheken, aus denen sich voll funktionsfähige Medien-Player für hochwertige Wiedergabeerlebnisse erstellen lassen. Um das Framework verwenden zu können, ist es nötig, mindestens Adobe Flash Player 10 auf dem System installiert zu haben.17 Ansonsten muss von der Seite http://www.osmf.org/ nur die Bibliothek heruntergeladen und an geeigneter Stelle im Dateisystem gespeichert werden. Je nach System ist dieser Pfad unterschiedlich. Auf Rechnern mit dem Betriebssystem MS- Windows ist dies meist C:\ProgramFiles(x86)\Adobe\AdobeFlash CS4\Common\Configuration\ActionScript 3.0\libs. Das offene Framework unterstützt die gemeinsame Entwicklung von Videoinhalten zur Verwertung im Web mit kürzeren Bearbeitungszeiten und deutlichen Kosteneinsparungen, wie ein Blick auf die Vorteile des Frameworks zeigt.

3.1 OSMF Vorteile

Raschere Bereitstellung – Die Entwicklung von Online-Videos wird immer komplexer. Das wirkt sich auch auf die Technologien aus, die für die Wiedergabe verwendet werden. Mit OSMF möchte Adobe den Einsatz offener Standards fördern und die Entwicklung von Medien-Playern vereinfachen. OSMF wurde primär für Inhaltsanbieter und Entwickler konzipiert. Im Grunde ist das Framework aber für jeden geeignet, der Videos auf seiner Website veröffentlicht.

Umfassende Auswahl an Funktionalitäten und Plug-ins von Drittanbietern – Grundlegende Playerfunktionen werden durch das OSMF – Framework bereits bereitgestellt wie z.B. Wiedergabe/Pause, Suchen, Lautstärke, Stummschalten, Download-Fortschritt, und Pufferung. Außerdem ermöglich die flexible OSMF-Architektur die einfache Integration von erweiterten Flashfunktionen wie beispielsweise dynamisches Streaming. Zur einfacheren Entwicklung von Medien- Playern unterstützt das Framework die Plug-ins von Mitgliedern des Partnernetzwerks für die Adobe Flash- Plattform. Auf diese Weise können Entwickler neue Player aus vorgefertigten Komponenten zusammenstellen, statt jede neue Funktion von Grund auf programmieren zu müssen. So können z.B. Drittanbieterlösungen wie z. B. die

17 Vgl. Adobe, (Developer’s Guide, Seite: 4-5 2011)

Blockseminar - Software- und Service-Scout Seite 16 von 28 Dozent: Jo Tzschenscher CC & OSMF FH Schmalkalden - WS 2013/2014 Christian Fischer

Einbettung von Werbung, Rendering, Verfolgung, Auswertung und Analyse einfach eingebunden werden. Gerade heutzutage sind Analysewerkzeuge ein viel genutztes Instrument von Unternehmen um optimale Wertschöpfung aus den Inhalten zu ziehen. Dies gilt längst nicht mehr nur für Webseiten, sondern auch für deren Inhalte. So kann Erfolg zuverlässig gemessen werden, ohne ein spezielles Tool zur Verfolgung und Auswertung programmieren zu müssen.

Integration mit der Flash Media Server-Familie – Der fertige Playercode kann ohne weiteres mit anderen Produkten der Flash Media Server Familie wie beispielsweise Adobe Flash Media Streaming Server oder Adobe Flash Media Interactive Server kombiniert werden, um abwechslungsreiche und interaktive Mediaanwendungen zu erzeugen. Zusätzlich können weitere Entwicklungstools genutzt werden. Hierunter fallen z.B. Adobe Flash Builder, Adobe Flash Catalyst oder der Adobe Dreamweaver. Teilweise kann das OSMF- Framework auch mit Flashbuildern oder ActionScript-Editoren von Drittanbietern zusammenarbeiten.

Hohe Qualität – Um bestmögliche Wiedergabequalität unter allen Netzwerkbedingungen sicherzustellen, werden durch OSMF die Bit-Raten bei Veränderungen der Bandbreite automatisch angepasst. Außerdem wird die Verbindung nach dem Auftreten von Fehlern automatisch wiederhergestellt.

3.2 OSMF Grundstruktur

Prinzipiell besteht die Grundstruktur eines OSMF Mediaplayers aus drei Elementen.18

Das Mediaelement:

Jeder Inhalt der in einem Player angezeigt wird, wird als Mediaelement bezeichnet. Dies können beispielsweise Bilder, Videos, Audiofiles oder Flashinhalte sein. Es ist aber auch möglich, verschiedene Inhalte miteinander zu kombinieren.

Um das gewünschte Element aufzurufen, wird es nach Typ spezialisiert und sieht im Quellcode wie folgt aus:

var videoElement = new VideoElement(newURLRessource(„meinVideo.flv“));

18 Vgl.Rich Media (Getting Started with OSMF in Adobe Flash, 2013)

Blockseminar - Software- und Service-Scout Seite 17 von 28 Dozent: Jo Tzschenscher CC & OSMF FH Schmalkalden - WS 2013/2014 Christian Fischer

Sollte es sich um andere Medientypen handeln wird dies natürlich im Bezeichner vermerkt. z.B. ein Soundfile wäre ein audioElement ein Bild ein Imageelement. Die URLRessource wird am häufigsten verwendet, um Mediaelemente zu instanziieren. Im Zusammenhang hiermit wird auch oft von den sog. Mediafactories gesprochen. Diese sollten verwendet werden, wenn der genaue Typ des Mediaelements nicht bekannt ist, oder es sich um verschiedene Mediaelemente handelt.

Der Mediaplayer:

Der Mediaplayer ist schlicht und einfach das „Kontrollzentrum“ des Objektes. D.h. hier werden die Funktionen wie „Start“, „Stop“, „Pause“ und weitere Optionen hinterlegt und angewählt. Um also es Mediaelement nutzen zu können, muss ein Mediaplayer initialisiert werden und dem Mediaelement zugewiesen werden. Initialisiert wird der Mediaplayer mit folgendem Programmcode:

var mediaPlayer = new MediaPlayer();

Die Zuweisung auf ein spezielles Mediaelement ist im Code so verankert:

mediaPlayer.media = videoElement;

Der Mediacontainer:19

Der Mediacontainer ist das entscheidende Objekt, welches dafür sorgt, dass der Player auch angezeigt wird. Initialisiert wird er mit einer einfachen Zeile die wie folgt aussieht.

var container = new MediaContainer();

Zusammenfassend gilt somit folgender Leitsatz: Ein Mediaelement wird über einen Mediaplayer kontrolliert und durch einen Mediacontainer angezeigt. Theoretisch wäre durch diese Elemente schon ein funktionierender und sichtbarer Mediaplayer definiert, der selbstverständlich noch nicht viel macht, außer ein Video abzuspielen. Hierzu wird aber im Punkt 3.4 noch genauer eingegangen.

3.3 OSMF Dateiformate

Hier ein soll zunächst ein Überblick gegeben werden, welche Dateiformate mithilfe des OSMF-Frameworks verarbeitet werden können:20

19 Vgl. Rich Media (Getting Started with OSMF in Adobe Flash, 2013)

Blockseminar - Software- und Service-Scout Seite 18 von 28 Dozent: Jo Tzschenscher CC & OSMF FH Schmalkalden - WS 2013/2014 Christian Fischer

Streaming Audio MP3, AAC, , Nellymoser Streaming Video FLV, F4V, MP4, MPEG-4: MP4, M4V, F4V, 3GPP Progressive Audio MP3 Progressive Video FLV, F4V, MP4, MP4V-ES, M4V, 3GPP, 3GPP-2, Quicktime Images PNG, GIF, JPG SWF- Files All SWF- Files

Für Dateiformate, die nicht explizit aufgeführt sind und standartmäßig abgespielt werden, bietet OSMF eine Reihe von Plug-ins an, die das Abspielen - beispielsweise von .ogg Dateien, möglich machen.

3.4 OSMF Funktionen – Codebeispiele

Wie bereits in Punkt 3.2 angesprochen gibt es Mediaplayer, die eine sehr einfache Grundstruktur aufweisen können. Der im oben beschriebene MP würde damit folgenden Quelltext aufweisen.21

package { import flash.display.Sprite; import org.osmf.containers.MediaContainer; import org.osmf.media.DefaultMediaFactory; import org.osmf.media.MediaElement; import org.osmf.media.MediaFactory; import org.osmf.media.MediaPlayer; import org.osmf.media.URLResource;

public class MeinPlayer extends Sprite { public function MeinPlayer ()

{ var container:MediaContainer = new MediaContainer(); addChild(container); var resource:URLResource = new URLResource("http://myserver.com/ meinVideo.flv");

20 Vgl. Adobe, (Developer’s Guide, Seite: 4 2011 ) 21 Vgl. Adobe, (Developer’s Guide, Seite: 7 2011 )

Blockseminar - Software- und Service-Scout Seite 19 von 28 Dozent: Jo Tzschenscher CC & OSMF FH Schmalkalden - WS 2013/2014 Christian Fischer

var videoElement = new VideoElement(newURLRessource(„meinVideo.flv“));

container.addMediaElement(mediaElement);

var mediaPlayer:MediaPlayer = new MediaPlayer(); mediaPlayer.media = mediaElement; } } }

Aus diesen Elementen lässt sich also bereits ein fertiger Player erstellen. Es wurde ein Mediaelement, ein Mediaplayer und ein Mediacontainer erstellt, und diese Objekte miteinander verknüpft. Dieser Player hat wie beschrieben noch keine Funktionen, außer das verlinkte Mediaelement abzuspielen.

Abbildung 1 Einfacher Mediaplayer Der so erstellte Standard-MP bedarf also noch weiterer Anpassung, hinsichtlich Layout und Features, da der Standardplayer wenig attraktiv ist. Für den Erfolg eines Video aus Marketingsicht ist aber oft das Layout bzw. die Skalierung entscheidend. Hier besteht die Möglichkeit direkt auf die Bildgröße durch die Angabe von x/y Koordinaten oder Seitenangaben einzuwirken. Mithilfe von Metadaten wird so der Bildausschnitt auf die gewünschte Größe skaliert.22 var layout = new LayoutMetadate(); layout.width=640; layout.height=480; mediaElement.addMetadata (LayoutMetadata.LAYOUT_NAMESPACE, layout);

22 Vgl. Rich Media (Getting Started with OSMF in Adobe Flash, 2013)

Blockseminar - Software- und Service-Scout Seite 20 von 28 Dozent: Jo Tzschenscher CC & OSMF FH Schmalkalden - WS 2013/2014 Christian Fischer

Abbildung 2 Geänderte Größenverhältnisse des Layouts durch Eingabe von Metadaten

Die Skalierung lässt sich mit OSMF aber auch mit Einbindung einer sog. Mediaplayer Sprite kontrollieren. Diese Klasse kombiniert die bisher erwähnten Objekte MediaFactory, MediaPlayer, und MediaContainer. public class MeinPlayer extends Sprite { public function MeinPlayer () { var sprite:MediaPlayerSprite = new MediaPlayerSprite(); addChild(sprite); sprite.resource = new URLResource("http://myserver.com/ meinVideo.flv "); } } Um die Skalierung mithilfe der Spriteklasse zu kontrollieren besteht die Möglichkeit die

Funktion MediaPlayerSprite.scaleMode mit einer gewünschten Konstante zu versehen. Hier wählt man aus den gängigen Formaten aus23: LETTERBOX Legt den Inhalt so wie gut wie möglich abgestimmt die auf die Originalgröße und den Container fest NONE Keine weitere Skalierung. Anzeige in Originalgröße STRECH Legt Inhalt so fest, dass Container ausgefüllt ist. Dabei können sich die Seitenverhältnisse ändern ZOOM Container wird so weit wie möglich gefüllt, sodass kein Hintergrund zu sehen ist. Evtl. können Teile des Inhaltes nicht sichtbar sein

Ein Player ist weiterhin auch von seinen Features abhängig. Hierzu bietet OSMF zahlreiche Funktionen an, wie die Player individuell erweitert werden können. Meist sind die Funktionen

23 Vgl. Adobe, (Developer’s Guide, Seite:8, 2011 )

Blockseminar - Software- und Service-Scout Seite 21 von 28 Dozent: Jo Tzschenscher CC & OSMF FH Schmalkalden - WS 2013/2014 Christian Fischer wie „Stop/Play“ mit einem Mouseevent verbunden, der mit einer Schaltfläche (Button) verbunden ist, und erst bei einem Klick aktiv wird. Im folgenden Beispiel wird verhindert, dass der Mediaplayer direkt zu starten beginnt.

mediaPlayer.autoPlay=false;

Mit dieser kleinen if/else Funktion wird geprüft, ob der Player läuft oder pausiert. Außerdem wird ein Event gestaltet, das besagt, dass ein Mausklick irgendwo im Feld diese Funktion aufruft.24

stage.addEventlistener(Mouseevent.Click, Mausklick); function Mausklick (evt):void { if (mediaPlayer.playing) { mediaPlayer.pause (); { else { mediaPlayer.play(); } }

Der Aufbau eines Buttons würde wie folgt aussehen. Selbstverständlich ist es machbar, die Mouseclickevents nur auf den für den Button definierten Bereich zu legen, sodass das Einfügen mehrerer Buttons mit unterschiedlichen Funktionen möglich ist.25 private function constructPlayButton():Sprite { var result:Sprite = new Sprite(); var g:Graphics = result.graphics; g.lineStyle(1, 0, 0.5); g.beginFill(0xA0A0A0, 0.5); g.moveTo(X - SIZE / F, Y - SIZE); g.lineTo(X + SIZE / F, Y); g.lineTo(X - SIZE / F, Y + SIZE); g.lineTo(X - SIZE / F, Y - SIZE); g.endFill(); return result; } private static const SIZE:Number = 100; private static const X:Number = 320; private static const Y:Number = 180; private static const F:Number = 1.2; var playButton:Sprite = constructPlayButton(); addChild(playButton);

24 Vgl.Rich Media (Key MediaPlayer Properties And Events in OSMF, 2013) 25 Vgl. Adobe, (Developer’s Guide, Seite:11-13, 2011 )

Blockseminar - Software- und Service-Scout Seite 22 von 28 Dozent: Jo Tzschenscher CC & OSMF FH Schmalkalden - WS 2013/2014 Christian Fischer

playButton.addEventListener ( MouseEvent.CLICK, function():void{ mediaPlayer.play(); } ) Weiterhin ist die Handhabung von Timeevents ein wichtiger Faktor. User wollen gerne die aktuelle Abspielzeit, sowie die gesamte Länge eingeblendet haben. Außerdem ist es möglich im Video an eine bestimmte Stelle zu spulen. Hier bieten die OSMF viele Fähigkeiten an, die 26 hier nur angeschnitten werden sollen.

mediePlayer.addEventlistener (TimeEvent.CURRENT_TIME_CHANGE, TimeChange); Function TimeChange (evt : Timeevent) : void { Trace (“TimeChange(), evt.time” +evt.time); }

Abbildung 3 Beispiel eines Players mit Funktionen

In OSMF sind die Features vielfältig einen Player so zu erweitern, dass er individuell auf eigene / oder Kundenwünsche angepasst werden kann. Um sich in der Vielfalt aller Funktionen und Klassen zurechtzufinden, bietet Adobe einige Wege an, sich Rat zu holen. Dies wird im folgenden Kapitel beleuchtet.

26 Vgl.Rich Media (Key MediaPlayer Properties And Events in OSMF, 2013)

Blockseminar - Software- und Service-Scout Seite 23 von 28 Dozent: Jo Tzschenscher CC & OSMF FH Schmalkalden - WS 2013/2014 Christian Fischer

3.4 OSMF Streaming

Ein Feature, welches OSMF markant macht ist das Streaming über einen Netloader. Hier wird von Beginn an auf die Stärken und Limitierungen bei der Bereitstellung der Daten mit verschiedenen Protokollen geachtet.

Grundsätzlich unterscheidet man bei den Liefermethoden zwischen HTTP- Streaming, RTMP- Streaming und RTMP- Multicasting.

HTTP Streaming

HTTP- Streaming war bisher das Standardprotokol wenn es um Liefermethoden geht. Hier konnten Videodateien abgespielt werden, indem eine einfache Anfrage auf einen Webserver erfolgt, auf dem die Datei hinterlegt ist.27 Immer größer werdende Dateiformate, der Wunsch nach Livestreaming und die vergleichsweise geringe Bandbreite ließen diese Methode aber schnell an ihre Grenzen kommen.

RTMP Streaming

Abhilfe schafft hier das sog. RTMP- Streaming, welches gegenüber dem HTTP- Streaming einige Vorteile hat. Dazu gehört die Unterstützung sowohl von aufgezeichneten bzw. hinterlegten, von live Streams, Multi-Bitrate Streams und DVR-Funktionen, wie beispielsweise anhalten und zurückspulen.

Zusammen mit OSMF können hier alle Features ausgenutzt werden, auch beispielsweise das Feature eines erneuten und automatischen Verbindungsausbaus nach Verbindungsunterbrechung. Sollte dabei der Puffer ausreichend gefüllt sein, bekommt der Nutzer des Videos zu keiner Zeit mit, dass die Verbindung abbrach.28

RTMFP Multicasting

Beim Multicasting wird nicht auf das verwendete TCP zurückgegriffen, welches sehr viel Bandbreite benötigt. Bei Bereitstellungen wie Livestreams, die eine geringe Latenzzeit benötigen, wird das UDP (User Datagramm Protocol) Protokoll genutzt. Dies garantiert

27 Vgl. Adobe, (Developer’s Guide, Seite: 14 2011 ) 28 Vgl. Adobe, (Developer’s Guide, Seite: 15 2011 )

Blockseminar - Software- und Service-Scout Seite 24 von 28 Dozent: Jo Tzschenscher CC & OSMF FH Schmalkalden - WS 2013/2014 Christian Fischer schnellere Lieferzeiten durch das Senden von Paketen zu Netzpunkten. Hier ist Adobe ein entscheidender Schritt gelungen, OSMF auch für Live Streamings zu nutzen.

Das Multicasting unterstützt drei grundlegende Formen: IP Multicast:

Hier wird eine Adresse mit einer Gruppe interessierter Empfänger verbunden. Einzelne Daten werden an die Multicastadresse gesendet. Diese werden von dort aus als Kopien an alle registrierten Interessenten geschickt.

P2P Multicast:

Beim P2P Multicasting werden die Daten zwischen den Mitgliedern der Multicastgruppe versendet. Hierfür werden Flashplayer Applicationen genutzt um Daten zu transportieren und weiterzuleiten.

Fusion Multicast:

Hier können die beiden bereits vorgestellten Arten kombiniert werden. Dies ist sinnvoll, wenn IP Multicasting einmal nicht verfügbar ist.

OSFM bietet also Streamingarten an, die dynamisch auf jede Art der Internetconnection und Bandbreite abgestimmt sind, um optimale Lade- / Wartezeiten zu erreichen und ein störungsfreies Abspielen der Videos zu garantieren.

3.5 OSMF Support & Diskussionsmöglichkeiten

Die Nutzung einer neuen Software ist immer mit einer Einarbeitungszeit verbunden und nicht selten stehen Entwickler vor schwierigen Problemstellungen, die es zu lösen gilt. Doch um sich wie in unserem Falle in das OSMF einzuarbeiten und Hilfe zu erhalten wurden durch Abobe mehrere Hilfestellungen eingeräumt.

Developer’s Guide

Das von Adobe bereitgestellte Dokument im PDF Format, lässt sich von der OSMF.org Seite herunterladen. Hier erhalten Nutzer ausführliche Informationen zum Einstieg in das Framework. Aufbauend auf allgemeine Informationen werden im Developer´s Guide auch erste Codebeispiele für einen einfachen Player genannt, der mit weiteren Features erweitert werden kann. Ein großes Kapitel widmet sich auch der Bereitstellung der Inhalte im Netz.

Blockseminar - Software- und Service-Scout Seite 25 von 28 Dozent: Jo Tzschenscher CC & OSMF FH Schmalkalden - WS 2013/2014 Christian Fischer

Hier wird auf die verschiedenen Internetprotokolle und Streamingarten eingegangen, die in dieser Studienarbeit nur minimal angeschnitten wurden. Ein weiteres Kapitel beschäftigt sich ausschließlich mit Content- und Layoutgestaltung in dem erlernt werden kann, wie der Player optimal auf die eigenen Bedürfnisse ausgerichtet werden kann. Abschließend werden in diesem Dokument noch sinnvolle Plug-ins vorgestellt. Für Entwickler, die nun so einen Einstieg gefunden haben, und tiefer in die Materie eindringen wollen, stellt Adobe ein ActionScript 3.0 Referenzhandbuch 29 zur Verfügung, in dem nach einzelnen Funktionen, Objekten und Klassen gesucht werden kann.

Adobe Forum30

Eine Option zum Stellen von Fragen bietet das Adobe Forum unter http://forums.adobe.com/. Hier können Informationen für alle Produkte der Adobe Reihe abgerufen werden, d.h. auch Artikel aus der Mastercollection wie Photoshop, Dreamweaver usw. Hier besteht die Option, direkt eine Frage zu formulieren und diese in der Suche einzugeben, oder eines der Unterforen zu besuchen. Desweiteren bietet Adobe neben seinen Produktforen auch Designforen und Marktplatzforen an. Begibt man sich nun in eines der Unterforen, wird sofort eine Übersicht über letzte Updates und Ankündigungen angezeigt. Auch eine Liste der am häufigsten gestellten Fragen (FAQs) ist zu finden. Die Option hier auch seine Fragen zu stellen und von anderen Nutzern beantworten zu lassen, bietet die Chance einer Communitybildung, wie sie sonst beispielsweise aus Social Networks bekannt ist. Auf diese Art und Weise können verschieden Lösungsansätze für eine gestellte Frage angeboten und vor allem diskutiert werden. Als weiteres Feature bietet das Forum ein Link zu einem Blog an, der sich explizit mit dem Produkt beschäftigt. Auch hier finden wir Verlinkungen zu diversen Handbüchern etc.

Adobe Marketplace

Der Adobe Marketplace wurde eben schon angesprochen, dennoch soll hier nochmal auf die besondere Stellung und Bedeutung hingewiesen werden. Explizit für das Open Source Media Framework erreicht man den Marktplatz unter der

29Vgl.http://help.adobe.com/de_DE/FlashPlatform/reference/actionscript/3/org/osmf/media/Media Player.html#includeExamplesSummary, Seitenabruf am 24.04.13 30 http://forums.adobe.com/ , Seitenabruf am 24.04.13

Blockseminar - Software- und Service-Scout Seite 26 von 28 Dozent: Jo Tzschenscher CC & OSMF FH Schmalkalden - WS 2013/2014 Christian Fischer

URL http://www.adobe.com/cfusion/marketplace/index.cfm?event=marketplace.home&marketpla ceid=3

Dies ist eine perfekte Plattform 31 für alle Entwickler, die Ihre erschaffenen Werke präsentieren wollen. Wiederum andere Nutzer können so von vorgefertigten Werken profitieren, die sie nur noch nach ihren eigenen Wünschen modifizieren müssen. Userbewertungen, ausführliche Berichte und Kommentare helfen dabei, geeignete Informationen zu erhalten. Auch Angebote für Tutorials, sogar ganze Webseiten, die sich mit der Hilfe zum OSMF beschäftigen werden auf dem Marktplatz veröffentlicht. Entwickler, die Zeit investieren und sich mit diesem Marktplatzforum intensiv auseinandersetzen, werden einen hohen Nutzen daraus ziehen.

4. Fazit

Das OSMF stellt zweifellos eine starke Alternative dar, um Mediaplayer individuell nach Maß zu entwerfen. Gerade die vielen Alternativen im Bereich der Gestaltung lassen auch wirklich den Player erstellen, der gewünscht ist. Für Entwickler, die die Verwendung von OSMF perfekt beherrschen, ein weiteres Angebot, um Unternehmen, die sehr viel Wert auf ihren Marketingauftritt legen, für sich zu gewinnen, denn gerade heute wird „Individualität“ und „Auffallen“ groß geschrieben. Die Möglichkeiten die Player direkt in die Webseiten zu integrieren oder auf Wunsch sogar zu streamen runden das Angebot von OSMF zu einem Allroundpaket ab. Einziger Wehrmutstropfen dabei ist, dass für die Verwendung einige Vorkenntnisse erforderlich sind, und man bereits ein gewisses Level im Umgang mit solchen Frameworks erreicht haben sollte. Für Anfänger gibt es recht wenige Möglichkeiten sich durch Tutorials die Erstellung von Playern anzueignen. Es hilft also nur, sich nach dem Motto „Learning by doing“ in mühsamer - aber auf alle Fälle lohnenswerter – Kleinarbeit mit den einzelnen Features und Klassen vertraut zu machen, um irgendwann professionelle Mediaplayer mit Lösungen, die auf Kundenwünschen basieren, erstellen zu können.

31 .http://www.adobe.com/cfusion/marketplace/index.cfm?event=marketplace.home&marketplaceid=3, Seitenabruf am 24.04.13

Blockseminar - Software- und Service-Scout Seite 27 von 28 Dozent: Jo Tzschenscher CC & OSMF FH Schmalkalden - WS 2013/2014 Christian Fischer

5. Quellenangaben

Adobe Systems Incorporated, OPEN SOURCE MEDIA FRAMEWORK Developer’s Guide, 2011

Rich Media Getting Started with OSMF in Adobe Flash , (2010). http://www.youtube.com/watch?v=JwO7-xYG_t0 [Video] Seitenabruf am 23.04.13

Rich Media, Key MediaPlayer Properties And Events in OSMF, (2010). http://www.youtube.com/watch?v=vUGZmzoEcag [Video] Seitenabruf am 23.04.13 Wikipedia, o.V., Open Source, http://de.wikipedia.org/wiki/Open_Source, Seitenabruf am 21.04.13 Wikipedia, o.V., Framework, http://de.wikipedia.org/wiki/Framework, Seitenabruf am 21.04.13 http://www.adobe.com/cfusion/marketplace/index.cfm?event=marketplace.home&marketplac eid=3, Seitenabruf am 24.04.13 http://help.adobe.com/de_DE/FlashPlatform/reference/actionscript/3/org/osmf/media/MediaPl ayer.html#includeExamplesSummary, Seitenabruf am 24.04.13 http://forums.adobe.com/ , Seitenabruf am 24.04.13 http://www.gergey.com/zitate/ Seitenabruf am 15.03.13 http://www.osmf.org/ , Seitenabruf am 26.03.13

Blockseminar - Software- und Service-Scout Seite 28 von 28 Dozent: Jo Tzschenscher