Warum wir bei t3n.de auf das Flow Framework setzen

Warum wir bei t3n.de auf das Flow Framework setzen

Ein Einblick in die Nutzung des Flow Framework bei yeebase media - dem Medienhaus hinter t3n.de und dem t3n Magazin.

08f7b6cdcb18cdf9a2f025119807f0a0?s=128

Martin Brüggemann

April 14, 2016
Tweet

Transcript

  1. Warum wir bei t3n.de auf das Flow Framework setzen Martin

    Brüggemann, Co-Founder & CTO yeebase media GmbH
 #meetneos Nürnberg 14.04.2016
  2. INHALT ‣ Über t3n & meine Person ‣ Unsere Anforderungen

    an ein PHP-Framework ‣ Flow Framework als Default-Lösung ‣ Umgesetzte Projekte ‣ Showcase Gurumanage (ERP) ‣ Ausblick ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP AUSBLICK
  3. ÜBER T3N & MEINE PERSON Martin Brüggemann ‣ verheiratet, 2

    Kinder, Dipl. Inf-wirt. (FH) ‣ Co-Founder & CTO yeebase media GmbH/ t3n Magazin ‣ 16 Jahre PHP- & Webentwicklung ‣ Schwerpunkte: Kanban, Scrum, Business- Anwendungen, PHP-Entwicklung, DevOps, R&D ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP AUSBLICK
  4. ÜBER T3N & MEINE PERSON yeebase media GmbH ‣ Firma

    hinter t3n, gegründet 2005 ‣ Gründer: Andy Lenz, Jan Christe, Martin Brüggemann ‣ Firmensitz Hannover ‣ >40 Mitarbeiter ‣ 100% inhabergeführt ‣ Produkte: t3n Magazin und t3n.de ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP AUSBLICK
  5. ÜBER T3N & MEINE PERSON t3n Magazin (Print) ‣ Printmagazin

    für digitales Business ‣ 4 Ausgaben pro Jahr ‣ Druckauflage: 38.000 ‣ >12.000 Abonnenten ‣ Vertrieb online & im Handel DE/AT/CH ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP AUSBLICK
  6. ÜBER T3N & MEINE PERSON t3n.de (Online) ‣ Newsticker mit

    ca. 30 News/Tag ‣ ca. 3 Mio Visits/Monat ‣ Jobbörse & Firmenverzeichnis ‣ Heftarchiv mit allen Artikeln aus dem t3n Magazin ‣ Suche, Themen-Seiten, Userprofile,… ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP AUSBLICK
  7. ca. 3 Mio+
 Visits/Monat
 Website ca. 1 Mio+
 Visits/Monat
 Website

    Mobile 60.000+
 Empfänger
 Newsletter 42.000+
 Views/Monat
 Video 35.000+
 Druckauflage
 Magazin 105.000+
 Follower 115.000+
 Fans 95.000+
 Follower ÜBER T3N & MEINE PERSON ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP AUSBLICK
  8. ÜBER T3N THEMEN POSITIONIERUNG LESER REICHWEITE LEISTUNGEN PREVIEW Unsere Anforderungen

    an ein 
 PHP-Framework ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP AUSBLICK
  9. UNSERE ANFORDERUNGEN ‣ viele PHP-Projekte auf unterschiedlicher technischer Basis ‣

    „Historische Projekte“ aus Gründerzeiten ‣ hoher Wartungsaufwand (Stabilität, Updates, Security,..) ‣ starkes Wachstum im Unternehmen ‣ neue Mitarbeiter, hoher Schulungsaufwand, wenig Konventionen ‣ keine gemeinsame Sprache ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP AUSBLICK Ausgangssituation:
  10. UNSERE ANFORDERUNGEN ‣ Stabilität & Skalierbarkeit ‣ Standardisierung ‣ Qualität

    ‣ Erweiterbarkeit ‣ Community, Support, Events in DE ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP AUSBLICK Suche nach dem neuen Framework:
  11. UNSERE ANFORDERUNGEN Das neue Framework sollte: Durch klare Konventionen und

    geschickte Abstraktion dafür sorgen, dass wir als Team komplikationsfrei und schnell hochwertige Projekte umsetzen können. Beispiel: ORM vs. SQL ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP AUSBLICK
  12. UNSERE ANFORDERUNGEN ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP

    AUSBLICK ‣ Maintenance-Last im Entwickler-Alltag verringern ‣ Wissensaustausch im Team fördern ‣ Freiräume für Features & neue Projekte ‣ weniger „Lowlevel-Kram“ diskutieren ‣ besseres Gefühl im Entwicklerteam Übergeordnete Ziele:
  13. ÜBER T3N THEMEN POSITIONIERUNG LESER REICHWEITE LEISTUNGEN PREVIEW Flow Framework

    als Default-Lösung ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP AUSBLICK
  14. FLOW FRAMEWORK ALS DEFAULT-LÖSUNG FLOW3 (seit 2007) wird zu TYPO3

    Flow (seit 2013) wird zu Flow Framework (seit 2015) Inzwischen ein Produkt des Neos Projekts 
 und technische Basis des Neos CMS ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP AUSBLICK Die Sache mit dem Namen:
  15. FLOW FRAMEWORK ALS DEFAULT-LÖSUNG ‣ seit 2009 in Entwicklung ‣

    Grundgerüst für komplexe Business-Projekte ‣ hoher Qualitätsanspruch (RFCs, Core-Migrations,..) ‣ modern & zukunftssicher (PHP7, DDD, AOP, DI, JobQueue,..) ‣ gute Packages (z.B. Media-Package, Amazon S3, Beanstalk..) ‣ mit Neos CMS kombinierbar (z.B. für Content Commerce,..) ‣ TOP-Community aus Entwicklern, Core-Support & Agenturen in DE PRO Flow Framework: ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP AUSBLICK
  16. FLOW FRAMEWORK ALS DEFAULT-LÖSUNG ‣ nichts, um schnell mal was

    „dreckig hinzubauen“ ‣ aktuell noch relativ unbekannt, kein Logo, kein Marketing,… ‣ erfordert Einhaltung von Konventionen ‣ bei geringen Anforderungen vergleichsweise langsam (z.B. in Benchmarks) ‣ mächtiges Werkzeug, schwieriger Einstieg CONTRA Flow Framework: ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP AUSBLICK
  17. FLOW FRAMEWORK ALS DEFAULT-LÖSUNG „Da hat Flow wieder irgendeine heftige

    Magic im Hintergrund gemacht“ Entwickler bei t3n ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP AUSBLICK
  18. FLOW FRAMEWORK ALS DEFAULT-LÖSUNG ‣ versucht es dem Entwickler so

    einfach wie möglich zu machen ‣ generiert viele Klassen im Hintergrund ‣ erlaubt allen möglichen „fancy Stuff“ (Fluch & Segen zugleich) Die „Magic“ des Flow Framework: ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP AUSBLICK
  19. FLOW FRAMEWORK ALS DEFAULT-LÖSUNG ‣ Eine Aufgabe (z.b. PDF-generieren) soll

    nicht synchron sondern asynchron im Hintergrund ausgeführt werden. Beispiel für den Einsatz von AOP: ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP AUSBLICK /** * PDF generation for the $user * @Job\Defer(queueName="pdf") * @return void */ public function generatePdfForUser($user) { … } Durch Hinzufügen der Annotation @Job\Defer wird die PDF-Generierung automatisch asynchron ausgeführt. #magic
  20. ÜBER T3N THEMEN POSITIONIERUNG LESER REICHWEITE LEISTUNGEN PREVIEW Umgesetzte Projekte

    ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP AUSBLICK
  21. UMGESETZTE PROJEKTE Shipr - Versandhandling ‣ webbasiert + REST-API ‣

    DHL Intraship-Schnittstelle ‣ mandantenfähig ‣ PDF-Generierung (Apache FOP):
 - Packlisten
 - Anschreiben
 - Paketaufkleber ‣ >15.000 Sendungen seit Launch ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP AUSBLICK
  22. UMGESETZTE PROJEKTE Bookr - Buchungssystem ‣ webbasiert Buchungen für t3n.de

    und t3n Magazin verwalten ‣ Werbezonenplanung ‣ Auslastungsanzeige ‣ Daten-Workflows (z.B. Banner) ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP AUSBLICK
  23. UMGESETZTE PROJEKTE t3n.de/firmen ‣ Firmenverzeichnis ‣ Live-Editing ‣ Elasticsearch &

    Filter ‣ Kopplung mit t3n.de/store ‣ Kopplung mit t3n.de-SSO ‣ Amazon S3 Integration ‣ JobQueue für aufwendige Tasks ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP AUSBLICK
  24. UMGESETZTE PROJEKTE t3n.de/store ‣ dediziertes Shop-Frontend-Projekt ‣ keine Backend-Logik (kommt

    per HAL-API vom ERP) ‣ maximaler Fokus auf UX & Conversions ‣ Aussteuern von Landingpages & Kampagnen ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP AUSBLICK
  25. ÜBER T3N THEMEN POSITIONIERUNG LESER REICHWEITE LEISTUNGEN PREVIEW Showcase Gurumanage-ERP

    ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP AUSBLICK
  26. SHOWCASE GURUMANAGE-ERP ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP

    AUSBLICK ‣ 7 Jahre altes Shop-System (Eigenentwicklung, TYPO3 FE-Plugin):
 16.383 Zeilen PHP-Code in einer Datei ‣ kritisches System ‣ hoher Truck-Faktor ‣ Refactorings & neue Features nahezu unmöglich Ausgangssituation (2012):
  27. SHOWCASE GURUMANAGE-ERP ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP

    AUSBLICK Wie sollte das neue (coole) ERP aussehen?
  28. SHOWCASE GURUMANAGE-ERP ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP

    AUSBLICK
  29. SHOWCASE GURUMANAGE-ERP ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP

    AUSBLICK „Das haben schon ganz andere Leute versucht und sind gescheitert!“ Feedback eines anderen Verlegers
  30. SHOWCASE GURUMANAGE-ERP ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP

    AUSBLICK „Wir haben unseren ERP-Eigenlösungsversuch nach 3 Jahren eingestampft.“ Noch ein Feedback eines Verlegers
  31. SHOWCASE GURUMANAGE-ERP Gurumanage - ERP ‣ mandantenfähig ‣ sämtliche Kunden-,

    Produkt- und Backend-Logik ‣ Payment & Versand ‣ Fakturierung & Mahnwesen ‣ Buchungsverwaltung (z.B: Abos) ‣ Kopplung mit t3n.de-SSO ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP AUSBLICK
  32. SHOWCASE GURUMANAGE-ERP ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP

    AUSBLICK ‣ Flow Framework als PHP-Grundgerüst ‣ nginx, PHP 5.6, MySQL-Server, Memcache, Redis,… ‣ Elasticsearch ‣ Beanstalk & Supervisor ‣ Pjax für maximalen Frontend-Speed (UX) ‣ Apache FOP für PDF-Generierung Verwendete Technologie:
  33. SHOWCASE GURUMANAGE-ERP ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP

    AUSBLICK Einblicke in Gurumanage
  34. SHOWCASE GURUMANAGE-ERP ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP

    AUSBLICK Kundenverwaltung: ‣ Alle Aktionen eines Kunden auf einen Blick:
 Abos, Aufträge, Rechnungen,… ‣ Adressverwaltung, Zahlungsarten, weitere Kundendaten ‣ Kopplung mit t3n.de-Account und t3n.de-Store ‣ Audit-Log
  35. SHOWCASE GURUMANAGE-ERP ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP

    AUSBLICK Produktverwaltung: ‣ intelligente Produkttypen (Standard, Intervall, Subscription) ‣ Produkt-Zyklen & Hierarchien ‣ virtuelle und echte Produkte ‣ Default-Prämien für Produkte ‣ MwSt-Handling, XML-Export,…
  36. SHOWCASE GURUMANAGE-ERP ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP

    AUSBLICK ProductRemoteObjects: ‣ etwas, das geschaltet werden soll: z.B.„PHP- Developer“ (id=20893, product=Stellenanzeige) ‣ Gurumanage kennt alle ProduktRemoteObjects inkl. Metadaten ‣ neue Portale/Produktideen einfach integrierbar
  37. SHOWCASE GURUMANAGE-ERP ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP

    AUSBLICK Kampagnenmodul: ‣ Verwalten von Marketing- Kampagnen ‣ Landingpages (inkl. Grafiken) ‣ Gutscheincodes ‣ individuelle Rabatte und Prämien ‣ Produkt-Whitelist, Conversion- Tracking,..
  38. SHOWCASE GURUMANAGE-ERP ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP

    AUSBLICK Auftragsmodul: ‣ Auftragserfassung über HAL-API ‣ manuelle Auftragserfassung ‣ Gutscheine, Rabatte, Prämien ‣ Zahlungstypen (gratis, direct, extern abgerechnet,..) ‣ Audit-Log & Kommentare
  39. SHOWCASE GURUMANAGE-ERP ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP

    AUSBLICK Buchungsmodul: ‣ Abos & Online-Subscriptions ‣ Produkte mit individuellen Addons (z.B. Tweet zur Stellenanzeige, Printeintrag,..) ‣ einmalige Laufzeit (z.B. ein Jahr) ‣ Gratis-Buchungen ‣ Upgrades & Downgrades
  40. SHOWCASE GURUMANAGE-ERP ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP

    AUSBLICK HAL-API (REST-API + Magic): ‣ optimale Erweiterbarkeit ‣ Integration von Fremdsystemen ‣ Definition per Settings.yaml ‣ integrierter API-Browser in Gurumanage ‣ modulares HAL-API-Client-Package
  41. SHOWCASE GURUMANAGE-ERP ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP

    AUSBLICK ‣ t3n.de-Portale über HAL-API und Webhooks ‣ Payone als Payment-Provider ‣ Mailjet für Mailversand ‣ Exception-Tracking an Graylog-Server ‣ Helpscout-Integration ‣ CSV-Exporte (Buchhaltung, Versand,…) ‣ Shipr für Nachversandhandling Integrationen:
  42. SHOWCASE GURUMANAGE-ERP ÜBER T3N ANFORDERUNGEN FLOW FRAMEWORK PROJEKTE BEISPIEL ERP

    AUSBLICK ‣ Entwicklung seit 2012, Livegang 2014 ‣ größter Schmerz = Altdatenmigration ‣ zahlreiche Refactorings seit Launch ‣ Truck-Faktor deutlich verbessert ‣ Flow-Framework-Updates erstaunlich schmerzfrei ‣ oft schlecht gebautes Domain Model/Doctrine2 als Flaschenhals Projektfakten & Learnings:
  43. ÜBER T3N THEMEN POSITIONIERUNG LESER REICHWEITE LEISTUNGEN PREVIEW Ausblick

  44. AUSBLICK ‣ Gurumanage weiter modularisierten & refactoren (Microservices, Event-Sourcing). ‣

    Weitere t3n.de-Projekte mit Flow Framework umsetzen:
 - t3n.de/jobs Rewrite
 - t3n.de/firmen v2 ‣ Flow Framework in Verbindung mit Neos CMS testen (z.B. für t3n.de/store) ‣ Noch mehr unserer Flow-Packages veröffentlichen ‣ Showcases, Howtos & Erfahrungen teilen ÜBER T3N ANFORDERUNGEN PROJEKTE FLOW FRAMEWORK BEISPIEL ERP AUSBLICK
  45. ÜBER T3N THEMEN POSITIONIERUNG LESER REICHWEITE LEISTUNGEN PREVIEW Vielen Dank.

    Bei Fragen zu Flow Framework & Neos: http://slack.neos.io/ (Chat)
 http://discuss.neos.io/ (Forum)