Detail-Informationen

Autor

Casey Frechette

verfasst am

29.10.2013

Mehr zum Thema auf journalist.de

Mehr Texte aus der Redaktionswerkstatt gibt es hier

Redaktionswerkstatt

Welche Programmiersprachen für Journalisten relevant sind

Müssen Journalisten programmieren können? Darüber gehen die Meinungen auseinander. Für die Journalisten, die sich für Programmiertechniken interessieren, hat Journalismusprofessor und Web-Stratege Casey Frechette vom Poynter-Institut eine Übersicht erstellt.

Redaktionen im ganzen Land verwenden Programmiersprachen, um ihre Berichterstattung anders zu gestalten, neue Storytelling-Formate zu entwickeln und das Publikum auf ungewohnte Art und Weise einzubinden. Es gibt immer mehr Möglichkeiten, Geschichten mit Hilfe von Programmierkenntnissen spannender zu erzählen. Darum wird auch immer häufiger gefordert, dass Journalismusstudenten neben Schreiben, Redigieren und Berichten auch Programmieren lernen sollten.

Viele Journalistenschulen erkennen den Wert der technischen Ausbildung zwar an, wissen aber nicht so recht, wie sie das Programmieren in ihre Lehre aufnehmen wollen. Welche Techniken stehen zur Auswahl, und wann setzt man sie ein?

Journalisten, die ihre technischen Fähigkeiten verbessern wollen, stehen vor ähnlichen Problemen. Es gibt viele Möglichkeiten, Programmieren zu lernen – aber es ist nicht leicht zu erkennen, womit man anfangen sollte und welche Techniken so zusammenpassen, dass sie journalistisch nutzbar sind.

Um diese Probleme anzugehen, hier eine Übersicht der gängigsten Programmiersprachen (und der dazugehörigen Tools), die Redaktionen einsetzen, die im Journalismus und im Programmieren ganz weit vorne sind.

Ich habe die Liste thematisch unterteilt. Die einzelnen Bereiche bieten sich für Module an, zum Beispiel zum Datenjournalismus. Oder sie können selbst Thema eines Kurses sein.

 

 

Frontend-Technologien

Nachrichten-Apps, interaktive Infografiken und alle anderen möglichen Tools im Internet basieren in der Regel auf zwei grundlegenden Programmiertechniken: HTML und CSS. In Kombination mit dem Inhalt bieten sie alles, was wir brauchen, um Geschichten und Grafiken auf verschiedenen Geräten zu veröffentlichen. Und sie sind auch die Grundlage für technisch komplexere Anwendungen.

  • HTML (Hypertext Markup Language). Als das Internet erfunden wurde, war HTML die grundlegende Technik. Es ist ein wesentliches Instrument für Veröffentlichungen im Netz geblieben. HTML strukturiert den Inhalt und gibt ihm semantische Bedeutung, so dass Browser und andere Programme (von Suchmaschinen bis zum Screenreader) verstehen, was wir veröffentlichen wollen. Obwohl es im engeren Sinne keine Programmiersprache ist, kommt man kaum um HTML herum – weder bei simplen Geschichten noch bei anspruchsvollen Anwendungen. Und komplexere Programmiersprachen, von JavaScript bis Ruby on Rails, sind eng mit HTML verbunden.
  • CSS (Cascading Style Sheets). Wie HTML ist auch CSS eine grundlegende Technologie, die durch nichts ersetzt werden kann. HTML gibt Inhalten Struktur, CSS gestaltet sie. Typografie, Farbe und Layout können mit CSS bestimmt werden. Ebenso wie HTML durch einen neuen Standard wiederbelebt wurde, hat auch CSS im Laufe der Zeit durch Weiterentwicklung an Bedeutung gewonnen. Es ist das wichtigste Werkzeug von Designern, die damit Web-Designs umsetzen, die auf verschiedenen Geräten funktionieren.

 

JavaScript

JavaScript ist ebenfalls eine weit verbreitete Technologie. Im Gegensatz zu HTML und CSS ist es eine vollwertige Programmiersprache mit vielen komplexen Funktionen. Auf Nachrichtenseiten sorgt JavaScript in der Regel für Interaktivität, die es den Nutzern möglich macht, durch ein komplexes Interface zu navigieren. Viele dazugehörige Technologien machen JavaScript zu einem wichtigen Ausgangspunkt für Journalisten, die Programmieren lernen wollen.

  • jQuery. jQuery ist eine der beliebtesten JavaScript-Bibliotheken. In der Informatik ist eine Bibliothek eine Sammlung von vorgefertigtem Code, die übliche Probleme löst und dadurch den Entwicklungsprozess beschleunigt. In diesem Fall macht jQuery JavaScript einfacher und schneller zu schreiben und standardisiert Uneinheitlichkeiten in verschiedenen Browsern. jQuery macht Websites dynamisch, indem es die DOM-Schnittstelle (Document Object Model) manipuliert. Das macht es möglich, Teile einer Website im laufenden Betrieb zu ändern, beispielsweise als Reaktion auf die Aktion eines Nutzers. Diese Änderung eines Dokumententeils, nachdem ein Nutzer damit interagiert hat, ist die Grundlage eines Großteils der heutigen Interaktivität im Internet.
  • CoffeeScript. CoffeeScript ist eine andere Möglichkeit, JavaScript zu schreiben. Es ist sehr eng an die JavaScript-Sprache angelehnt, aber es vereinheitlicht und vereinfacht die komplizierte Syntax an einigen Stellen. Zum Schluss wird CoffeeScript in JavaScript-Code übersetzt – es geht also um die Optimierung des Workflows. Das National Public Radio nutzt diese Technik für einige seiner Projekte.
  • JSON. JavaScript Object Notation ist ein Standard, der Daten formatiert und sie von einer Anwendung zur anderen überträgt. JSON macht es möglich, Daten so zu präsentieren, dass sie sowohl hochstrukturiert (gut für Computer) als auch leicht zu lesen sind (gut für Menschen). Mit der Verbreitung von Programmierschnittstellen, sogenannten APIs (Application Programming Interfaces), die es erlauben, dass Systeme Informationen miteinander austauschen können, ist JSON zu einem wichtigen Teil vieler News-Anwendungen geworden.

 

Datenbanken

Datenbanken setzt man ein, um Informationen strukturiert zu speichern – in der Regel in vielen einzelnen Datensätzen, die den gleichen Aufbau haben. Stellen Sie sich eine Liste vor, auf der die Namen von Organisationen stehen, dazu ihre Standorte, E-Mail-Adressen und Telefonnummern. Eine starke Strukturierung macht es möglich, Informationen wie gewünscht abzurufen. Sie könnten beispielsweise eine Liste mit allen Telefonnummern einer Organisation zusammenstellen oder mit allen anderen Kontaktinformationen.

Welche Datenbanken nutzen Nachrichtenmedien?

  • CSV. CSV-Dokumente sind eine Art Klartext-Datenbank. Sie sind einfach zu erstellen und zu übertragen, aber für große oder komplexe Datensätze eignen sie sich nicht besonders gut. Dennoch: Manche Quellen (US-Regierungswebsites zum Beispiel) bieten Daten nur in diesem Format an, CSV ist also ein notwendiger Ausgangspunkt.
  • Tabellenkalkulation. Die guten alten Tabellenkalkulationen können überraschend effektive Werkzeuge zur Erfassung von Daten sein und spielen eine wichtige Rolle im Datenjournalismus.
  • MySQL. Das Open-Source-Datenbanksystem MySQL ist in einige der meistgenutzten Content-Management-Systeme integriert, von WordPress bis Drupal. Im Fall von WordPress ist MySQL sogar die einzige unterstützte Datenbank.
  • PostGreSQL. Postgres ist ein weiteres Open-Source-Datenbanksystem. In Funktionsumfang und Leistung ist Postgres MySQL sehr ähnlich. Die Chicago Tribune verwendet es für einige ihrer Projekte.

 

Serverseitige Programmiersprachen

Im Bereich der Newsroom-Programmierung sind drei Sprachen immer wichtiger geworden: Python, Ruby und PHP. Jede davon ist eine objektorientierte Sprache und ein gutes Werkzeug, um komplexe Web-Anwendungen zu erstellen. Bei der objektorientierten Programmierung werden Objetkttypen oder Klassen verwendet, in einer Art Schablonen-System. Klassen erlauben es, den Code in einzelne Teile aufzusplitten und wiederzuverwenden, was zu schnellerem Schreiben und einfacherer Wartung führt – sehr wichtig, wenn man in der Redaktion mit der Deadline im Nacken etwas programmieren will. Diese Sprachen gibt es als Open-Source-Lizenzmodelle. Man kann sie also nutzen, ohne Lizenzgebühren dafür zahlen zu müssen.

Verschiedene serverseitige Sprachen werden von unterschiedlichen Entwicklern angewendet – im Gegensatz zu einigen anderen der hier vorgestellten Technologien. Das liegt zum Teil daran, dass jede Sprache ihre eigenen Stärken und Schwächen hat und ihr eigenes Set ergänzender Tools. Bei einer Sprache zu bleiben, verbessert den Workflow bei der Entwicklung.

  • Python. Die Chicago Tribune, das National Public Radio und andere Medien verwenden Python, um dynamische Projekte umzusetzen. Python wurde in den 90er Jahren erfunden und gilt als Sprache, die Leistung mit einfacher Bedienbarkeit verbindet. Python bietet sich für viele Aufgaben an (online wie offline), und es lässt sich problemlos mit anderen Technologien kombinieren. Google verwendet Python für viele seiner Projekte.
  • Ruby. ProPublica verwendet Ruby für einige Projekte. Ruby ist in vielerlei Hinsicht mit Python vergleichbar, obwohl einige finden, dass es schwieriger zu lernen ist. Für manche Probleme bietet Ruby allerdings elegantere Lösungen, und die sogenannten Blöcke in Rubys Syntax sind ein oft zitierter Vorteil. Viele Websites basieren auf Ruby – wie zum Beispiel Twitter, wobei sich das soziale Netzwerk zunehmend auf Java stützt, um seine Infrastruktur zu verbessern.
  • PHP. Viele der größten Websites basieren auf PHP, darunter Wikipedia und Facebook. PHP ist auch leicht verfügbar – bei den meisten Web-Hosting-Accounts ist es vorinstalliert, so dass es eine der am besten zugänglichen serverseitigen Sprachen ist. PHP lässt sich mit anderen gängigen Tools kombinieren, einschließlich Datenbanken wie MySQL und SQL Server und Content-Management-Systemen wie Drupal und Joomla.

 

Serverseitige Frameworks

Mit Hilfe von Frameworks lassen sich serverseitige Sprachen einfacher bedienen und Probleme besser lösen. Verschiedene Frameworks bauen auf verschiedene Sprachen auf, und einige Sprachen profitieren von einer Gruppe von Frameworks, jedes mit seinen eigenen Vorteilen. Hier sind die, die in Redaktionen beliebt sind.

  • Django. Die Chicago Tribune und die New York Times gehören zu den Nachrichtenmedien, die Django benutzen, um Web-Anwendungen in Python umzusetzen. Von den hier vorgestellten Techniken ist Django die einzige, die in einer Redaktion entstanden ist. Das macht Django zu einer guten Wahl für die Entwicklung dynamischer Nachrichten-Websites. Django verwendet das Model-View-Controller- oder MVC-Konzept, um Web-Anwendungen zu erstellen. MVC-Anwendungen trennen Datenspeicherung (Model) -anzeige (View) und -manipulation (controller) in logische Unterteile, die leicht miteinander zu kombinieren sind.
  • Ruby on Rails. ProPublica verwendet Rails, um die Ruby-Programmierung zu vereinfachen. Wie Python ist Ruby eine Allzwecksprache, die zur Lösung aller Arten von Problemen herhalten kann. Das Rails-Framework macht Ruby vor allem für die Web-Entwicklung geeignet. Rails verwendet auch ein MVC-Ansatz zum Programmieren.
  • WordPress. Obwohl es kein Framework im engeren Sinn ist, kann WordPress (die .org-Version – nicht das gehostete Tool, das Bloggen zum Kinderspiel macht) verwendet werden, um die PHP-Programmierung einfacher und produktiver zu machen. Als Content-Management-System bietet WordPress eine umfangreiche Schnittstelle, um Seiten, Blog-Beiträge und andere Inhalte zu erstellen und zu verwalten. Yuri Victor von der Washington Post hat darüber geschrieben, warum seine Redaktion WordPress nutzt.

 

Native Mobile Apps

Einige Nachrichtenmedien bieten Native Mobile Apps an – also Apps, die in einem Onlineshop gekauft und direkt auf dem tragbaren Gerät installiert werden. Solche Apps benötigen andere plattformspezifische Technologien als die oben aufgelisteten. Objective-C ist beispielsweise die Programmiersprache für iOS, das Betriebssystem von iPads und iPhones. Android-Geräte nutzen Java. Es gibt auch Web-Apps, also mobile Anwendungen, die mit Web-Tools gebaut und über den Browser bedient werden – und sogenannte hybride Apps, die mit Web-Techniken gebaut, aber wie Native Mobile Apps genutzt werden. (Ich habe über Native Mobile Apps und Web-Apps geschrieben – und darüber, warum Journalisten den Unterschied kennen sollten.)

 

Lernen Sie mehr

Am besten lernt man, wie Redaktionen Programmiersprachen verwenden, um ihre journalistischen Produkte zu verbessern, wenn man den Entwicklern aus der Redaktion zuhört. Praktischerweise bloggen das National Public Radio, die Chicago Tribune, ProPublica und die New York Times darüber, wie sie ihren digitalen Journalismus vorantreiben.

Wenn Sie lernen wollen, wie diese Teams ihre Projekte umsetzen, können Sie sich deren Arbeit auf GitHub ansehen, einer Website, die Programmierer (und andere) nutzen, um ihre Arbeit zu speichern, zu teilen und zu pflegen. Dort können Sie sich zum Beispiel den Code hinter einigen der Projekte von ProPublica, National Public Radio und Chicago Tribune ansehen.

Dieser Beitrag stammt im Original von der

Website des Poynter-Instituts.

Poynter ist eine gemeinnützige Journalistenschule und Medienforschungs-Einrichtung aus St. Petersburg in Florida. Dem Institut gehört die Tampa Bay Times, die größte Zeitung in Florida, deren Verleger Nelson Poynter die Journalistenschule 1975 gegründet hat.

Mehr Texte aus der Redaktionswerkstatt gibt es hier. journalist-Abonnenten lesen die Texte aus der Redaktionswerkstatt im Heft acht Wochen früher.

Aktuelle Kommentare zu diesem Text

10.05.2014 18:27

Fabian Oestreicher

Danke für die Übersetzung dieser Zusammenstellung, genau was ich gerade gesucht habe!

 
Anzeige: 1 - 1 von 1.