FAQ zu meinem Abschied von WordPress
Nachdem ich gestern meine neue Version von mirkoschubert.de vorgestellt und mit einem ziemlich lauten Knall auch meinen Abschied von WordPress bekannt gegeben habe, hagelte es insbesondere auf Facebook jede Menge Fragen und Kritiken.
Das ist natürlich auch gut so - jeder darf schließlich seine eigene Meinung haben. Da ich aber kaum noch mit dem Antworten hinterher komme und auch einiges doppelt und dreifach beantworten muss, habe ich mich nun dazu entschieden, eine Art »FAQ« dazu zu veröffentlichen.
Natürlich sind auch weiterhin Fragen und Kritiken erlaubt - ich versuche auch so viel wie möglich davon persönlich zu beantworten. Ich werde aber auch die am häufigsten gestellten Fragen an dieser Stelle ergänzen.
Fragen zu Flat-File-Systemen und Jekyll
- Was ist überhaupt ein Flat-File-System?
Klassische Content Management Systeme (CMS) sind zumeist an eine Datenbank angebunden (z.B. MySQL), in der die Seiten, Artikel, Einstellungen usw. gespeichert sind. Eine serverseitige Script-Sprache (z.B. PHP) generiert daraus dann die Webseite. Content und Design sind in einem solchen System strikt voneinander getrennt. Bei Flat-File-Systemem (FFCMS) bleibt diese Trennung bestehen, allerdings ist keine Datenbankanbindung mehr notwendig, da der Content als Dateien (meistens in Form von Markdown oder Textile) bereit liegt. - Was sind die Vorteile von Flat-File-Systemen?
Der größte Vorteil ist die Geschwindigkeit. Um bei einem CMS eine Webseite zu generieren, sind zumeist viele Datenbankabfragen notwendig, die die Webseite verlangsamen. Das ist bei einem FFCMS natürlich nicht so. Auch bei der Sicherheit fällt der Angriffspunkt auf die Datenbank weg. Außerdem läuft ein Flat-File-System auf so ziemlich jedem Webspace, erfordert kaum Kapazitäten und die Installation ist kinderleicht. - Was sind die Nachteile von Flat-File-Systemen?
Viele FFCMS sind noch ziemlich neu — also gibt es noch nicht jede Funktion. Für Einsteiger, die keine Programmier- bzw. Skriptsprachen beherrschen, gibt es kaum leichte Lösungen, eine Webseite nach eigenen Wünschen zu gestalten. Vorgefertigte Themes gibt es nur wenige. Webseiten mit sehr hohem Besucheraufkommen erfordern einen Server mit SSDs. Hier kann allerdings auch ein Content Delivery Network (CDN) Abhilfe schaffen. - Ist Jekyll ein Flat-File-System?
Jein. Eigentlich ist es ein Generator für statische Seiten (»Static Site Generator«). Allerdings sind statische Seiten (also reine HTML-Dateien) per Definition auch Flat Files. - Was ist ein Static Site Generator?
Erinnerst Du Dich an die 90’er, in denen man Webseiten per Hand als HTML-Dateien entwerfen musste? Wenn man viele Seiten gleichen Typs (z.B Artikel) entwickeln wollte, musst man in jede einzelne HTML-Seite den gleichen Code kopieren, was bei 1.000 Seiten oder mehr sehr nervenaufreibend war. Daraus entwickelten sich die CMS, die den Inhalt (Artikel) vom Design (HTML- und CSS-Dateien) trennen und die Seiten dynamisch auf dem Server generieren. Ein Generator für statische Seiten verbindet beide Welten: Es gibt ein Programm, in dem man Themes und Inhalt voneinander trennen kann. Daraus generieren sich aber statische HTML-Dateien wie in den 90’ern. - Was sind die Vorteile von solchen Generatoren?
Erster Punkt bleibt die Geschwindigkeit. Klassische HTML-Dateien müssen nur aufgerufen werden, es gibt keine »Rechnerei« auf dem Server. Also rein technisch sogar noch schneller als ein Flat-File-System. Auch hier gibt es keine Voraussetzungen an den Server. Die Sicherheit ist top, denn es existieren praktisch keine Angriffspunkte. Die Entwicklung der Seite erfolgt komplett lokal (auf dem eigenen Rechner). Auch der Workflow kann deutlich besser sein: Markdown-Datei schreiben, Seite generieren, per FTP hochladen, fertig! Lösungen über Github oder Dropbox können dies noch weiter simplifizieren. - Was sind die Nachteile dieser Generatoren?
Es gibt kein klassisches Backend (was allerdings auch sehr sicher ist). Einsteiger ohne Programmierkenntnisse haben quasi keine Chance. HTML, CSS/ SCSS, JavaScript/ jQuery, das Templating-Framework (z.B. Twig) und die Sprache, in der der Generator geschrieben wurde (z.B. PHP, Ruby, Go) sind Pflicht! Auch mit der Kommandozeile Deines Rechners müsstest Du Dich auskennen. Außerdem lassen sich keine dynamischen Inhalte wie Kommentar-Funktion, Kontaktformulare, Member-Bereiche, Shops usw. umsetzen. Andererseits gibt es oft Alternativen von außen (z.B. Disqus oder Formspree). - Interessant! Welche Flat-File-Systeme und Generatoren gibt es denn?
Bevor ich mich für Jekyll entschieden habe, habe ich so einige davon durchgetestet. Eine (fast) vollständige Liste findest Du aber bei Flatfile.co.
Fragen zu meiner Kritik an WordPress
- Ich liebe WordPress und finde die Erweiterbarkeit und Usability Klasse!
Das höre ich sehr häufig — WordPress ist auch nicht ohne Grund derzeit das beliebteste Blogsystem. Ich mag Menschen mit eigenen Meinungen, solange sie sie mir nicht aufzwingen wollen. Meine Meinung ist natürlich sehr subjektiv — ist ja schließlich eine Meinung. Manche teilen sie, viele eben nicht! Außerdem habe ich ganz spezifische Anforderungen, die entweder aktuell oder auch in Zukunft benötigt werden. - Was hast Du denn an der Usability von WordPress auszusetzen?
Klar, »Vanilla WordPress« (also WordPress ohne Veränderungen und Erweiterungen) ist in 5 Minuten installiert — noch immer! Wer aber spezifische Funktionen benötigt, braucht zahlreiche Plugins. Einige dieser Funktionen (z.B. Rechte-Verwaltung oder Redaktionskalender) sollten eigentlich von Haus aus an Bord sein. Plugins belasten nicht nur das System und bieten zusätzliche Sicherheitslücken, sondern sind auch zumeist nicht genau an einen einheitlichen Workflow angepasst (soll heißen, man hat entweder zu viele, genau die falschen oder sehr unlogisch aufgebaute Funktionen). Bei Themes hingegen ist es einfacher, ein eigenes neu zu schreiben, als ein bestehendes mit einem riesigen, unnützen Options-Framework zu installieren. - Man braucht doch keine 20 Plugins für ein funktionierendes WordPress — Du musst was falsch machen!
Natürlich funktioniert WordPress auch out-of-the-box. Das mag für Einsteiger auch ausreichend sein, für mich nicht. Ob nun ein SEO-Plugin (weil ja On-Page-SEO für WordPress selbst ein Fremdwort ist) oder das Plugin zum Schutz vor Kommentar-Spam — vieles davon ist notwendig. Natürlich sind 20 auch etwas übertrieben. Zur Verdeutlichung einmal eine »kurze« Liste meiner häufig verwendeten Plugins:
* Adrotate (Werbung einblenden leicht gemacht)
* All in One WP Security (Sicherheits-Paket, das aber leider weniger nützt als es vorgibt)
* Antispam Bee (Schutz vor Kommentar-Spam)
* BackWPUp (WordPress-Backups sollten Pflicht sein)
* Clean and Simple Contact Form (Contact Form 7 ist mir zu groß und WP bringt ja keine eigenen Formulare mit)
* Cookie Notice (Leider inzwischen Pflicht wegen Google)
* Google Analyticator (zugegeben, geht auch im Theme, aber ohne Usability)
* Mailchimp Lite for WordPress (wer einen Newsletter anbietet, braucht das)
* Permalink-Finder (bei häufigen Umzügen zu empfehlen, wenn es mal wieder eine funktionierende Version geben würde)
* Post Snippets (für mehr Usability)
* Share Buttons von GetSocial.io (die »minimalistischste« Social-Sharing-Funktion, die ich derzeit kenne, aber viel zu viele Optionen)
* User Role Editor (sollte selbstverständlich sein, insbesondere bei mehreren Autoren)
* WordPress Editorial Calendar (wenn man mal ordentlich planen will)
* WordPress Popular Posts (für eine bessere User Experience)
* Yoast SEO (Das beste On-Page-SEO-Plugin, das ich kenne) - WordPress ist genauso sicher wie jedes andere CMS — wenn man es kann!
Das stimmt leider nur zum Teil. Das größte Problem von WordPress ist seine Popularität. Da es so häufig eingesetzt wird, erfährt es auch die meisten Angreifer. Und das bezieht sich nicht nur auf die üblichen Bruteforce-Attacken. Es gibt Listen im Netz, welche Sicherheitslücken aktuell offen sind, ob nun im Kern oder durch zusätzliche Plugins. Ein .htaccess- und .htpasswrd-Schutz ist nicht wasserdicht! Und die aktuellen Sicherheits-Plugins taugen nur wenig — ich habe sie alle getestet!
Allgemeine Fragen zum Design und zu mir
- Ich habe einen Darstellungsfehler gefunden!
Super, immer her damit! Das Design ist momentan beta und ich bin auf Eure Mithilfe angewiesen, um sie nach und nach zu berichtigen. Schreib mir einfach ein Kommentar! - Ich finde das Design zu 1990!
Wie schon im vorherigen Artikel erwähnt, ist das Design das Standard-Theme von Jekyll. Meines Wissens wurde es von einem Mitbegründer von Github geschrieben (Github.io verwendet selbst Jekyll für Projekt-Webseiten). Und es hat tatsächlich eine gewisse Ähnlichkeit. Ist dann Github auch 1990? Allerdings möchte ich anmerken: Ich habe es nur leicht verändert und für den Start meinen Fokus mehr auf Inhalte und Technik gelegt. Das neue Design steht aber bereits zu 99 Prozent — und ich werde es wohl aufgrund eines Usability-Fehlers im Menü auf Android und Windows Phone etwas vorziehen. - Bitte nicht Disqus!
Mal abgesehen davon, dass statische Seiten keine dynamische Kommentarfunktion enthalten können, habt Ihr Euch die Suppe ein wenig selbst eingebrockt. In letzter Zeit fiel mir immer mehr auf, dass lieber auf sozialen Medien, anstatt im Blog kommentiert wird, weil es einfacher sei. Mit Disqus erhoffe ich mir, dass sich das ein wenig ändert, da man sich auch mit Facebook, Twitter und Google einloggen kann. - Was machst Du überhaupt auf diesem Blog?
Zugegeben, ich muss endlich mal die Informationen über mich und diesen Blog aktualiseren. Das steht momentan ganz oben auf meiner Agenda. Nur kurz: Ursprünglich war mirkoschubert.de eine Plattform, auf der ich meine Dienste und mein Können als Musiker, Komponist und Journalist vorgestellt habe. Zwischenzeitlich habe ich immer wieder Themen angerissen, die mich interessieren, wie z.B. Psychologie, Selbstentwicklung, Zeitmanagement, Zukunftsforschung und Minimalismus. Eine konkrete Zielgruppe spreche ich an dieser Stelle aber nicht an. Erst kürzlich habe ich für mich erkannt, dass es mir viel wichtiger ist, meine Interessen und Gedanken auf diesem Blog in Worte zu fassen. Wenn Du meine Gedanken verfolgen und diskutieren möchtest, bist Du herzlich dazu eingeladen, teilzunehmen. Für konkrete Themen habe ich andere Blogs. Mehr zu meiner Ausrichtung findest Du in diesem Interview. - Ich zweifle Deine Kompetenzen als Entwickler an.
Dies kam ja schon ein wenig in den WordPress-Fragen heraus, und so etwas muss man sich ja immer irgendwie anhören. Ich möchte dazu aber nun mal ein Statement abgeben: Du hast Recht! Ich bin kein Entwickler, sondern konzentriere mich in der meisten Zeit auf’s Schreiben. Allerdings bin ich sehr lange im Geschäft, ich habe irgendwann in den 90’ern angefangen und nie wieder aufgehört. mirkoschubert.de hat die längste Geschichte (seit 1998, die Domain ist allerdings »erst« 12 oder 13 Jahre alt — davor was es mirkoschubert.de.vu) und hat viele Wandlungen durch gemacht. Diese Version ist die elfte! Mit der Zeit habe ich mir selbst auch so einiges beigebracht. Ich kann HTML, CSS, JavaScript (zum Teil), PHP und MySQL. Ich habe mich lange Jahre mit WordPress (und davor mit anderen CMS) auseinander gesetzt. Bei Fragen zu WordPress helfe ich auch gern mal aus. Meine Schwächen liegen vor allen Dingen in aktuellen Entwicklungen: Entwickeln von Webanwendungen via Composer, (Micro-)Frameworks etc. kann ich definitiv nicht, habe aber mal reingeschnuppert. Für Jekyll musste ich SCSS und Twig lernen — ging aber erstaunlich schnell. Ich bin nicht besonders effizient beim coden und muss auch so manches nachschlagen. Ein Entwickler würde sicher bei einigen Dingen seine Haar raufen, bei anderen mir auf die Schulter klopfen. Keine Ahnung, bislang hat sich kein Entwickler meinen Code angeschaut.
So, das dürfte erst einmal reichen. Sollten weitere Fragen auftauchen, stelle sie gerne unten in den Kommentaren!