BBC News – Alle Nachrichten, jederzeit, überall und für jeden, dank Symfony
John Cleveley, Technischer Leiter von BBC News, sagt uns: "Die Stärke von Symfony ist seine Architektur." Er erklärt uns auch, warum und wie sich das technische Team von BBC News dazu entschieden hat, für seine Website auf das Symfony-Framework umzusteigen.
Das Projekt
Ursprünglich 1997 eingerichtet, sah sich die BBC News-Website mit zunehmenden Problemen konfrontiert, als die Zeit verging und sich die Technologie weiterentwickelte. Ihre Website stieß an ihre Grenzen, als das Besucheraufkommen zunahm und die Vielfalt der Geräte (PCs, Mobiltelefone, Tablets, Fernseher usw.) immer mehr Anforderungen stellte. Um diesen neuen Anforderungen gerecht zu werden, entschied sich BBC News für das Symfony2-Framework und viele seiner Komponenten für eine umfassende Überarbeitung ihrer Website. Basierend auf einem „Responsive“-Ansatz entwickelte BBC News eine Website, die sich automatisch an die Bedürfnisse jedes Geräts anpasst und gleichzeitig den Entwicklungsprozess, Updates und die regelmäßige Wartung optimiert.
Hauptvorteile:
Ein responsiver Ansatz: Aufbau einer anpassungsfähigen Website zur Optimierung der Benutzererfahrung, unabhängig vom verwendeten Gerät (PCs, Mobiltelefone, Tablets, Fernseher…)
Eine vereinfachte und flexible Architektur: durch die Kombination mehrerer unabhängiger und entkoppelter Symfony2-Komponenten
Eine einzigartige Codebasis: Funktionen werden nur einmal integriert, ohne sie für verschiedene Plattformen zu duplizieren
Verbesserung der Fähigkeiten der Entwickler: durch das Erlernen der besten Programmierpraktiken
Die Herausforderungen
Die britische BBC News-Website, die Ende der 1990er Jahre ins Leben gerufen wurde, entwickelte sich allmählich zu einer wichtigen Nachrichtenquelle in den Weltmedien und zog fast 30 Millionen einzelne Besucher pro Woche an. Angesichts dieses Erfolgs begann die Website alt und veraltet zu wirken. Statische, altmodische Grafiken und lange, mühsame Veröffentlichungsprozesse wurden in einer Internetumgebung, die sofortige, schnelle und reaktionsfähige Seiten erfordert, die den Benutzer sofort zufriedenstellen, untragbar.
Ihr Bedürfnis, die Website zu revitalisieren, wurde durch die Explosion neuer Geräte, die auf das Web zugreifen, beschleunigt. „Noch vor Kurzem war alles einfach“, erinnert sich John Cleveley, technischer Manager bei BBC News. „Wir hatten die Computer auf der einen Seite und die Mobiltelefone auf der anderen. Zwei verschiedene Anwendungen waren ausreichend.“ Aber die Dinge haben sich schnell entwickelt. PCs, Mobiltelefone, Tablets, Fernseher… Innerhalb weniger Jahre hat die Zunahme und Diversifizierung dieser Geräte nicht nur den Entwicklungsprozess erheblich verkompliziert, sondern auch neue Probleme und Herausforderungen geschaffen.
BBC News konnte die Bedürfnisse und Erwartungen seiner Leser nicht länger ignorieren, die nicht nur geografisch weit verstreut sind, sondern auch unterschiedlich ausgestattet, sowohl in Bezug auf Geräte als auch auf Verbindungsgeschwindigkeit. „Wir brauchten eine Lösung, die die Entwicklungszeit optimiert und gleichzeitig jedem Benutzer das gleiche Serviceniveau garantiert, unabhängig vom verwendeten Gerät. Das Wichtigste für uns war, unsere Inhalte sofort verfügbar zu machen“, erklärte John Cleveley.
Die Stärke von Symfony liegt in seiner Architektur. Mit diesen gut entwickelten, unabhängigen Komponenten konnten wir die interessantesten Bausteine für unsere Bedürfnisse auswählen, ohne unter der Starrheit eines traditionellen, „monolithischen“ Frameworks zu leiden.
John Cleveley, Technischer Manager, BBC News
Die Lösung
Die BBC News-Website litt unter einem Code, der zu alt war, um ordnungsgemäß gewartet zu werden, und an dem niemand mehr arbeiten wollte oder konnte. Die Überarbeitung der Website bedeutete nicht, alles Bestehende wegzuwerfen. Im Gegenteil, es war entscheidend, den Zugriff auf archivierte Artikel der letzten 15 Jahre zu erhalten. Genau aus diesem Grund wandte sich BBC News an das Symfony2-Framework.
Kombiniert mit Varnish zur Optimierung des Cache-Managements und Pimple zur Vereinfachung der Abhängigkeitsinjektion ermöglichte Symfony es der BBC News-Website, ihre Leistung zu verzehnfachen und gleichzeitig die Entwicklung erheblich zu vereinfachen. Und während des gesamten Prozesses wurde der von BBC News übernommene „Responsive“-Ansatz respektiert…
Dieser nutzerzentrierte Ansatz zielt darauf ab, Inhalte automatisch an jedes Gerät anzupassen, ohne zusätzliche Entwicklung zu erfordern. BBC News ist jetzt in der Lage zu erkennen, welches Gerät auf ihre Website zugreift, und den Inhalt / das Bildschirmverhältnis automatisch zu formatieren und bei Bedarf zusätzlichen Inhalt hinzuzufügen. „Das „Responsive Design“ war ideal für uns“, erklärt John Cleveley, „da es das bestmögliche Ergebnis für jedes Gerät schafft.“
Die Vorteile
Die Gestaltung einer Website, die sich automatisch an jeden Gerätetyp anpasst, verkompliziert die Wartung nicht. Im Gegenteil, die neue „Responsive“-Architektur der BBC News-Website ermöglicht den Entwicklern mehr Flexibilität und Effizienz, da das gesamte System eine einzige Codebasis verwendet. „Das vereinfacht das Backend natürlich erheblich“, sagt John Cleveley. „Die Funktionen werden nur einmal integriert, ohne notwendige Duplizierung nach Plattformtyp.“ Und da die Website in einem einzigen URL-Bereich gehostet wird, gibt es keine Subdomain zu verwalten.
Diese Neugestaltung hatte Auswirkungen auf die Organisation der Entwicklungsteams. Vor der Überarbeitung waren die Teams je nach Plattform segmentiert und getrennt. Jetzt arbeiten sie alle zusammen und verbessern kontinuierlich ihre Fähigkeiten und Kompetenzen unter Verwendung der besten Programmierpraktiken. „Unsere Entwickler haben Symfony relativ schnell verstanden und übernommen, dank sehr vollständiger Dokumentation und einer fantastischen Community. Unabhängig von unseren Problemen haben wir immer eine Antwort in der Symfony-Community gefunden“, erinnert sich John Cleveley.
Die nächste Herausforderung für BBC News: die Verbesserung der Werbung, insbesondere für internationale Nutzer, eine Herausforderung, für die die britischen Medien zweifellos erneut auf Symfony2 und seine Komponenten zurückgreifen werden.