Ralf Hendel, Geschäftsführer
Drupal Enthusiast und Freizeit-Pianist.

Erfahrungen DrupalCon Denver

DrupalCon Denver Tag2: Panels direkt vom Schöpfer und Wilburs Rache

Vor der Party hatte ich gestern noch die Session "The Risks of Dumping Your Old CMS for Drupal and How to Manage Them" von Nicole Lind besucht. Sie ist Projektmanagerin bei Phase2.

Anhand des Titels hatte ich eher technische Fragen bei der Migration externer Websites zu Drupal erwartet. Stattdessen drehte sich die Session um den Umgang mit Risiken bei der Umsetzung von Projekten.

Nicole hat häufige auf Kundenseite vorkommende psychologische Rollenmuster identifiziert und Tipps gegeben, wie damit umgegangen werden kann. So kann der "Evangelist", der bedingungslose (Drupal-)Befürworter, der jedoch keine substantiellen Kenntnisse besitzt, dem Projekt durchaus schaden, indem er unrealistische Erwartungen weckt.

Den Alles-(Besser-)Wisser sollte man frühzeitig schulen, damit er kein "dummes Zeug" verbreitet. Und mit dem "Protector", dem Budget-Wächter, geht man am besten Essen und sorgt für eine gute Stimmung.

Insgesamt hat sie rund sieben Rollen identifiziert, denen vermutlich jeder schon einmal begegnet ist, der für größere Firmen Projekte umgesetzt hat. Leider habe ich nicht schnell genug mit-stenographieren können. Wie man mit dem Agressiven, dem "Open-Hostile" umgeht, habe ich leider nicht behalten. Wichtig ist, den "Apathischen" frühzeitig abzuholen, damit er sich nicht im Laufe des Projekts zum Open-Hostile wandelt...

Wer das noch einmal nachlesen möchte, dem empfehle ich die sehr gute Aufbereitung der Session von Fabian Lorenzen im erdfisch-Blog.

Im Grunde genommen hat sie nur Dinge erzählt, die jeder mehr oder weniger schon kennt. Dies hat sie aber dermaßen treffend auf den Punkt gebracht, dass man sich diese Session vor jedem Kundentermin noch einmal vergegenwärtigen sollte.

Es ist wichtig, die Projekt-Risiken zu kennen:

  • Fehlende Drupal Erfahrung auf Kundenseite und damit verbundene unrealistische bzw. unzutreffende Anforderungen an das Projekt.
  • Unbekannte Abhängigkeiten von was-auch-immer.
  • Zeitpläne nicht einhalten.
  • Duplizierte Inhalte bzw. redundante Strukturen, die sich in dieser Form nicht 1:1 im neuen System abbilden lassen.
    "Lack of clear content mapping"
  • Undokumentiertes Verhalten von Block-Elementen.
    Grafiker denken sich in Mockups tolle Bedienelemente aus, deren Funktionsweise nirgendwo festgelegt ist, und bestimmen damit Workflows.
  • Die Inhalte des alten Systems lassen sich nicht exportieren

Schulung, Kommunikation und Präzisierung der Anforderungen sind die Mittel, mit denen sich die Risiken eingrenzen lassen.

  • Formulierung klarer und erreichbarer Projektziele.
  • Transparenz herstellen.
    "conduct a project discovery": fortlaufend den Projektstand ermitteln und kommunizieren.
  • So viel Dokumentation und Training anbieten, wie das Budget nur hergibt.

Darf ich machen Image von Sie für unser Website?

Gestern abend begann um 20:00 Uhr die Party. Vorher hatten wir noch etwas Zeit und sind ins nahe gelegene Hyatt-Hotel gegangen, um bei schönem Wetter und untergehender Sonne Panoramabilder aus dem 37. Stock von Denver zu machen.

Mit dem Cowboy-Hut und meinem exzellenten Englisch habe ich auf der Party und auch sonstwo auf der Con immer sofort das Eis brechen können. Die Leute merken gleich, dass von mir keine Gefahr ausgeht und ich nicht ganz dicht bin. ;-) So waren alle immer bereitwillig damit einverstanden, sich für unser Blog ablichten zu lassen.

Inzwischen habe ich rund fünf bis sechs Promille aller anwesenden DrupalerInnen kennengelernt. Gestern abend habe ich mich sehr angeregt mit Cathy Theys, einer Amerikanerin aus Colorado, Alina Mackenzie, einer aus Polen stammenden Amerikanerin, und einer Schwedin über Freelancing, Schulsysteme und Durchlässigkeit sozialer Schichten unterhalten. Das war sehr spannend! Man erfährt eine Menge über die unterschiedlichen Systeme und lernt die Menschen besser kennen.

Den oberflächlichen und bis an die Zähne bewaffneten Amerikaner, der - erst schießen, dann fragen - die gängigen Klischees bedient, habe ich hier noch nicht angetroffen. Obwohl ich mir leider sicher sein kann, dass es ihn gibt. Vermutlich interessieren die sich einfach nicht für Drupal...

Ich freue mich auf jeden Fall schon auf die nächste DrupalCon in München und hoffe, dass wir dort viele von den ausgesprochen netten Menschen wieder treffen!

Das Highlight am Mittwoch: Eine Panels-Session mit Earl Miles persönlich

Heute morgen hat der Erfinder (nicht nur) von Panels höchstpersönlich, Earl Miles aka merlinofchaos einen Überblick über die neuen Entwicklungen und Features rund um das Öko-System "Panels" vorgestellt. In der Community ist Earl dermaßen beliebt, dass die Teilnehmer sogar schon vor seiner Session Beifall geklatscht haben, als er sich vorgestellt hat. :-)

Er hat neue Features vorgestellt: Mit dem überarbeiteten IPE (In Place Editor) lassen sich Layout und Pane-Styles ändern. Panes lassen sich zukünftig auch gegen Verschieben in andere Regionen oder sogar vollständig gegen Veränderungen sperren. Neu ist auch, dass sich sogenannte "Panel Pane Entities" direkt in der Panels-Inhaltsverwaltung wie Custom-Content-Panes hinzufügen lassen.

Es gibt eine Menge neuer Module:

Panelizer

Den Panelizer haben wir auch schon in Projekten eingesetzt und damit gute Erfahrungen gemacht:

  • Das Modul bietet das selbe wie Panel-Nodes, bringt zusätzlich aber Kontext mit.
  • Mit Panelizer lassen sich nicht nur Nodes um Panel-Panes erweiteren, sondern alle Entities, wie User, Taxonomie-Terms etc.
  • Der Zugriff lässt sich über die Rechteschicht steuern. Damit können Redakteure weitergehende Möglichkeiten über die reine Content-Erstellung hinaus eingeräumt werden.

Panelizer bringt eine neue GUI mit, die unter "Content Editing" erreichbar ist.

Wenn ich es richtig verstanden habe, sind damit auch Panelizer-Default-Einstellungen für Nodetypes möglich, mit denen sich u.a. vordefinierte Layout-Schemata einrichten und für Redakteure zur Verwendung freischalten lassen.

Fieldable Pane Panes

Die folgenden drei Module sind für mich gänzlich neu. Insofern gebe ich die Topics von Earls Folie sicherheitshalber direkt in Englisch wieder, bevor ich möglicherweise Unwahrheiten in Umlauf bringe:

  • An entity that can be added as a pane
  • Create on the fly or in administrative UI
  • Full access control
  • Supports bundles through a hook (no UI)
  • Like BEAN module for blocks
    [Anmerkung: was zur Hölle ist eigentlich das BEAN-Modul? Das ist mir heute schon zwei Mal begegnet. Muss ich mir unbedingt anschauen...]

Field API Pane Editor

  • Form to edit a single field on a single entity
  • Contextual link on a panel to hit that form in the overlay.
  • that's it

Entity Revision Scheduler

  • Create a draft revision that is not the normal revision used.
  • Schedule when a revision is set to the current revision.
  • Works for nodes as well as fieldable panel panes.
  • Still need a couple more features and a big valuable patch by recidive needs review!

Panopoly

"Panopoly" ist eine Panels-basierte Site-Builder-Distribution, die übrigens nicht von Earl Miles erschaffen wurde, wie ich zwischendurch irrtümlich getwittert hatte. Panopoly basiert auf der "Open Academy"-Distribution, ist aber allgemeiner angelegt und sollte für Site-Builder ideale Ausgangsvoraussetzungen mitbringen. Sie befindet sich allerdings noch in einer sehr frühen Phase, in der Kinderkrankheiten nicht auszuschließen sind.

Wir planen bei comm-press schon seit längerem für eine Kontext-Management Distribution speziell für Content-Portale. Panopoly könnte ein Geheimtipp sein, mit dem wir uns unbedingt näher beschäftigen müssen!

Nach der Session hatte ich mich noch etwas mit Earl unterhalten. Letztes Jahr hatten wir ihn als Coach zu unserem Views Codesprint anlässlich unserer Büroeinweihung eingeladen. Er fand das toll, hatte wegen seiner beiden kleinen Kinder aber nicht mal eben so über den Großen Teich kommen können. Er hat mir aber versprochen zu kommen, wenn seine Kinder - das kleine der beiden ist 15 Monate alt - etwas älter sind. Also in drei Monaten ;-)

Drupal für den Wettbewerb mit den Giganten fit machen

Danach habe in die Session "Competing with Giants" von Bryan House besucht, dem Marketing-Direktor von Acquia. Er hat Umsatzzahlen der Big-Player und verschiedene Perspektiven von Markt-Analysten präsentiert.

Interessant fand ich, wo Analysten die Stärken und Schwächen von Drupal lokalisieren:

Als Stärken werden angesehen

  • die Community-orientierte Kommunikation,
  • der schlanke Core in Verbindung mit der Breite an unterschiedlichen Modulen,
  • das Entwicklungs-Framework für dynamische Web-Anwendungen, sowie
  • die "placeless delivery", d.h. der Geräte-unabhängige Zugriff auf den Content über Web-Services.

Als Schwächen bewerten die Analysten

  • das Defizit an Configuration-Management-Tools
  • fehlende Unterstützung für Content-Staging
  • unausgereifte redaktionelle Workflows
  • zu wenig Referenzen im Enterprise-Bereich

Die Liste der Schwächen wirkt auf mich genau wie eine Image-Kampagne für Drupal 8: Zumindest bei den ersten beiden Punkten werden wir mit Drupal 8 mächtig nachlegen. Und die Möglichkeit für universelle Content-Services wurde als starker Wettbewerbsvorteil gegenüber anderen Systemen angesehen. Vor dem Vergleich mit anderen Systemen sollten wir uns nicht scheuen und sollten die Dinge, die wir bereits mit Drupal erfolgreich umgesetzt haben, in den Fokus der Aufmerksamkeit rücken. Also: baut weiter so "geile Scheiße" und sprecht (bloggt oder twittert) darüber!!

Nie wieder Field-Views - ab jetzt nur noch View Modes

Nach der Business-Session habe ich mich in die Site-Building Session "View Modes: The Many Faces of Your Content" von Tim Cosgrove gesetzt, einem Konzepter von Phase2.

Selbst wenn sich viele dessen vielleicht gar nicht bewusst sind, arbeiten dennoch alle mit "View Modes". Jeder hat die beiden Views Modes "Detail-Darstellung" und "Teaser" von Nodes schon einmal gesehen. Nicht jeder aber weiß, dass sich mit Drupal beliebig viele dieser View Modes für unterschiedliche Teaser-Funktionen erstellen lassen.

Warum soll man View Modes verwenden und nicht spezielle Templates bauen oder Felder mit Hilfe von Views gezielt selektieren?

View Modes bieten eine zentralisierte Organisation für alle Teaser- und Ausgabeformen. Mit View-Modes haben wir weniger PHP-Code im System, View Modes sind im Core enthalten und einfacher zu themen. Sämtliche Typen von Entities unterstützen View-Modes.

Das Schlimmste, wofür man Views verwenden kann, ist mit View zu themen, indem man die Felder-Views baut, und für jeden View eigene Templates entwickelt. So entsteht irgendwann die berüchtigte tpl-itis im System: Hunderte von Template-Dateien, durch die niemand mehr durchsteigt.

Noch ein Grund, nicht mit Hilfe von Views zu themen, ist der Umstand, dass sich Views-Displays nicht zwischen verschiedenen Views portieren lassen.

Bisher war mir auch nicht klar, dass ich auf der Anzeige-Konfigurationsseite eines Node-Types unter "Benutzerdefinierte Anzeigeeinstellungen" die weiteren systemseitig vordefinierten View-Modes wie Suche und RSS für die Konfiguration freischalten kann.

Ganz nebenbei hat Tim noch gezeigt, dass sich auch die beiden non-field Informationen "Autor" und "Post Date" Felder über einen Hook für View Modes zugänglich machen lassen. Eine Anleitung befindet sich unter bit.ly/view-modes.

Display Suite

Ein mächtiges Tool zum Aufbohren der View Modes stellt die Display Suite dar. Sie ist mehr als nur eine Konfigurations-Oberfläche zum Erstellen weiterer View Modes, denn sie erlaubt auch das Arrangieren der Felder in vordefinierten oder individuellen Layouts.

Wir lernen daraus, dass Field-Views ab sofort verboten sind!

Eine Voraussetzung dafür, dass das Site-Building funktioniert, ist allerdings ein konsistentes Design. Hier sind Mediengestalter mit Erfahrung in Grid-Layout gefragt, die mit dem dynamischen Medium Web vertraut sind. Mit für das Netz adaptierten Print-Designs kann man schnell auf die Nase fallen.

Tim hat am Rande noch das Modul "Entity Views Modes" erwähnt, das ich auf meine Module-die-ich-mir-anschauen-möchte-Liste gesetzt habe.

Die verpasste Power of Entities

Aus Wolfgang Zieglers aka "The real Fago" Entity-Session habe ich leider nicht viel mitnehmen können.

Über Facebook hat mich eine Freundin, die ich vom OpenCoffeeClub aus Hamburg kenne und die mittlerweile wieder nach Los Angeles gezogen ist, zu sehr abgelenkt, indem wir Pläne für ein Treffen am übernächsten Wochenende geschmiedet haben. Die Session richtete sich aber in erster Linie auch an Entwickler - das wäre sowieso nicht meine Baustelle gewesen...

Die Session fand in einem der großen Räume in der Sponsoren-Halle statt und war sehr gut besucht. Ich habe auf jeden Fall mitgenommen, dass mit Entities alles geht und Wolfgang hat gezeigt, wie alles geht ;-)

Wilburs Rache im Barbeque-Grill

Den Abend haben wir in einem amerikanischen Barbeque-Restaurant in der Nähe unseres Hotels ausklingen lassen. Ich wusste nicht, dass Barbeque so gut schmecken kann: zartes Fleisch mit leckeren Soßen!

Auf der Karte gab es eine Soße, die mit sechs Chili-Schoten ausgezeichnet war. Sie hieß "Wilburs revenge" und war auch wirklich so scharf. Ich mag das schöne Gefühl, wenn der Schmerz nachlässt. Die Kunst besteht darin, wenn die Soßen trotz ihrer Schärfe immer noch gut schmecken...

Beim gemeinsamen Essen haben wir uns von Chris, einem Drupaler aus Delaware, den wir im Hotel kennen gelernt haben, noch Tipps für unsere Fahrt nach der Con geben lassen.

So schnell ging das, und die Con ist schon fast wieder vorbei. Ich gehe erschöpft ins Zimmer, blogge für unsere Daheimgebliebenen und freue mich auf den dritten und letzten Tag der DrupalCon in Denver.

Kommentare

DrupalCon is up... - 22. März 2012 - 22:00
[...] gemeinsam an (Ralfs Eindrücke von der Session - und eine ganze Menge mehr - sind übrigens auch im comm-press Blog [...]