Back to the Future - Python 3 und Plone 5.2 - ein Erfahrungbericht am Beispiel "Onkopedia"

Mit Ende der offiziellen Unterstützung von Python 2.7 durch die Python Entwicklergemeinschaft zum 31.12.2019 endet eine Ära. Das CMS Plone und der Applikationsserver Zope wurden in jahrelanger Arbeit auf die Python 3 portiert. Das Ergebnis der Arbeit ist manifestiert sich in Zope 4 und Plone 5.2 mit voller Unterstützung von Python 3.6 oder höher.
  • Wann 26.02.2019 von 09:00 bis 09:45 (Europe/Berlin / UTC100)
  • Termin zum Kalender hinzufügen iCal

Vortrag (45 min)

Raum: B U101

Zielgruppe: Entwickler, Einsteiger, Universitäten

Für eigene strategische Kundenprojekte haben wir uns entschlossen ab sofort jeglichen Python 2 Unterstützung zu streichen und konsequent auf Python 3 zu setzen. In dem Vortrag berichte ich über die Portierung des Portals "Onkopedia" auf Python 3 und Plone 5.2.

Mit der Verfügbarkeit von Python 3.6/3.7 in der aktuellesten Plone Version 5.2 ergeben sich für Integratoren und Plone Entwickler neue Optionen aber auch neue Pflichten. Generell müssen produktive Plone Installationen und Add-ons mittelfristig auf Python portiert werden, um nicht in der Python 2.7 Falle (keine offizielle Unterstützung mehr ab 31.12.2019 bei Securitypatches) zu laden.

Der Vortrag ist ein Erfahrungsbericht über die Portierung und Migration des Plone 4 Portals "Onkopedia" auf Plone 5.2 und Python 3. Onkopedia (www.onkopedia.com) ist ein seit 2010 bestehendes Leitlinienportal der Deutschen Gesellschaft für Hämatologie & Medizinische Onkologie. Im Rahmen des Onkopedia Projekts wurde eine Publishing Plattform realisiert, welches den Leitlinienautoren (Mediziner) erlaubt Dokumentmanuskripte (DOCX) in medienneutrales XML zu konvertieren und in verschiedene Ausgabeformate (HTML, XML, PDF, EPUB) und Ausgabekanäle (Web, Print, App, Mobile) zu publizieren.

Der Kern der Applikation beruht auf den eigenen Plone Add-ons "XML Director" und "Product & Publish".

Im Vorfeld wurden diese Add-Ons und deren Abhängigkeiten auf Python 3 migriert bevor die Portierung der eigentlichen Onkopedia Applikation und deren Inhalte erfolgen konnte.

Aspekte des Vortrags:

  • wie gehe ich bei der Migration einer komplexen Applikation vor?
  • was ist bei der Portierung von Plone Add-Ons zu beachten - Patterns und Anti-Patterns?
  • welche Auswirkungen hat Python 3 auf das Deployment?
  • wann macht Code Kompatibilität mit Python 2 und 3 Sinn?

Andreas Jung

ZOPYX

Andreas Jung entwickelt seit 25 Jahren mit Python als Hauptprogrammiersprache Lösung im Bereich Web, Content Management, Electronic Publishing bis hin zu Robotik und Industrie 4.0. Interessenschwerpunkte sind skalierbare Lösungen mit der Integration von beliebigen Drittsystemen, Publishing Lösungen im Bereich der technischen Dokumentation, Industrie, Medizin und Healthcare sowie thematisch komplexe Projekte mit einem herausfordernden Anforderungsmanagement. Andreas Jung realisiert Plone Lösungen seit 2001 und arbeitet u.a. mit Universitäten, Verbänden und NGOs zusammen.

Twitter: @MacYET
Github: zopyx
Email: