Artikel mit Tag serendipity
Verwandte Tags
autotitle bartleby blogs ursprung buzz commentedit dbclean listsearch projekt markupcomment nl2p photo android feedtragón ice-prefer ice-win icewm idesk-helper image-sacon izulu nachhaltigkeit pc-kombo rsspusher simdock sustaphones pubsubhubbub reallivecomment realtimecomments spamblock_bayes template_editor dsnblog rubyNächste Woche ist bei mir Serendipity-Entwicklungswoche
Wednesday, 6. February 2019
Über lange Zeit konstant an einem Projekt zu arbeiten ist schwer. Es gibt ja auch immer anderes zu tun: Andere Softwareprojekte, Spiele, Dinge außerhalb des PCs. Irgendwann gerät das konstante Projekt dann in den Hintergrund. Im Grunde ist das okay. Bei Serendipity aber habe ich etwas angefangen und nicht zuende gebracht: Die Überarbeitung der Interna der Medienlibrary. Die ist fast fertig, aber eben noch nicht ganz. Wenn so etwas dann im Hinterkopf herumspukt empfinde ich das als Stress.
Bei s9y kommt die PHP-Entwicklung dazu. Da ständig neue Versionen herauskommen und die Kompatibilität gebrochen wird können wir uns nicht zurücklehnen und einfach eine lange Weile nichts machen. Sondern bis zum Supportende muss eine neue s9y-Version draußen sein, sonst kann man es auch gleich bleiben lassen. Das ist bei PHP 7.1 der Dezember 2019. Das ist machbar, aber schwieriger wenn Instabilitäten im Git-Master lauern und wenn die Issues sich nicht von selbst lösen. So wie das der Überarbeitung der Medienlibrary.
Daher will ich dieses Wochenende und die nächste Arbeitswoche kontinuierlich etwas Zeit in Serendipity stecken. Ich verspreche mir davon, einen guten Überblick über den Zustand der Alpha im Master zu gewinnen und sie so weit zu bringen, dass zumindest von meiner Seite aus eine Beta veröffentlicht werden kann. Und da mehrere Tage etwas Zeit zu opfern soll dafür sorgen, dass nichts aufgeschoben wird und dann in meinem Hinterkopf bleibt. Was ich im Blick habe:
- Durchtesten, dass die Installation sowohl mit SQLite als auch mit MySQL funktioniert.
- Wenn ein per ML hochgeladenes Bild auf eine andere URL zeigt, bleibt diese beim Umbenennen des Bildes nicht erhalten
- Kompatibilität mit PHP 7.2 sollte komplett sein, aber da will ich nochmal draufschauen.
- Update der bundled-libs.
- Mein Plugin für die VG WORT hat mal Zusatzinformationen in der Eintragsliste angezeigt, jetzt nicht mehr.
- Wenn ich mehrere Einträge in meinem Blog verlinke kommt nur der erste Trackback an.
- Das srcset der responsiven Bilder wird in Feeds nicht von relativen zu absoluten URLs umgeschrieben.
Wenn die Zeit es zulässt will ich dann jeden Tag auch etwas über die Entwicklung schreiben. Selbst wenn das nur ein kurzes "Die Installation lief bei mir einwandfrei" ist. Einfach, damit das Wissen über den Stand nicht untergeht.
Jeder kann helfen: Installiere den aktuellen Git-Master von s9y in einer Testumgebung und melde mir oder repariere direkt Fehler. Zusammen macht das alles viel mehr Spaß.
Serendipity 2.1.4 und 2.2.1-alpha1 veröffentlicht
Thursday, 20. September 2018
Wieder tut sich etwas bei der Blogsoftware, die auch diesen Blog trägt. In Version 2.1.4 fixt Serendipity vor allem ein ziemlich ungefährliches Sicherheitsproblem. Die neue Alpha bringt dagegen eine ganze Reihe von Verbesserungen. Ich finde die Unterstützung von PHP 7.2 besonders wichtig, freue mich aber auch, die neue Galleriefunktion und die responsiven Bilder hier im Blog zu testen.
Es ist noch eine Alpha, weil schlicht nicht alles fertig geworden ist. Besonders meine Überarbeitung des internen Codes der Mediendatenbank ist nicht komplett. Ich hatte die Zugriffskontrollen und die Pluginevents herausgerissen, die sollten vor der Beta da erst wieder rein. Etwas mehr Praxistests wird dem Code ebenfalls gut tun.
Das vierte Serendipity-Treffen und ein neues Release
Sunday, 25. March 2018
Vom 23. bis 25.03 haben wir uns zum jetzt vierten mal als Serendipity-Projekt im Essener Linuxhotel getroffen. In leicht kleinerer Runde (denn diesmal leider ohne Dirk) folgen wir dem fast schon traditionellen Programm: Gemeinsames Abendessen am Freitag, samstags Arbeit an den im Jahr übrig gebliebenen Baustellen sowieso an Zukunftsplanung, dann Sonntag vor dem Aufbruch noch etwas Weiterarbeiten.
Am Sonntag veröffentlichte Thomas mit etwas Rückendeckung von Garvin das neue Serendipity 2.1.2, ein Bugfix-Release. Dass das nun Thomas machen konnte war ein Ergebnis der Vorarbeit am Samstag. Das war wichtig, denn dort mussten ein paar Blocker im Release-Skript umschifft werden. Jetzt müssten eigentlich auch in Zukunft neue Releases schneller kommen können, und daher Bugfixes schneller die Nutzer erreichen. Die neue Version ist hier im Blog schon installiert.
Woran haben wir ansonsten gearbeitet? Wir haben
- Versucht die Spam-Problematik im Forum zu entschärfen: Neue Einstellungen ausprobiert, Update der Software angedacht.
- Im Bayes-Plugin die fehlenden Tokens in die Benachrichtigungsmails eingebaut, sodass ohne Login Kommentare als Ham oder Spam markiert werden - und dabei hat Mario direkt einen Bug im core gefixt.
- Eine Funktion vorbereitet, mehrere Bilder auf einmal als Galerie in Einträge einzubauen.
- Einige andere neue Funktionen besprochen.
- Bernd hat todesmutig den aktuellen Github-Master mit Produktivdaten getestet, um dabei zu helfen die responsiven Bilder fertigzustellen.
- Matthias hat an einem neuen Design gearbeitet.
Und natürlich haben wir gut gegessen und viel geredet.
Ich empfand es wieder als sehr angenehmes Treffen, auf das ich mich zurecht im Vorfeld gefreut habe, und das ich gerne auch im nächsten Jahr wieder stattfinden sehen wollen würde.
Ein Plugin zum Nutzen der VG WORT unter Serendipity
Tuesday, 16. January 2018
Im Forum habe ich ein neues Plugin hochgeladen. Es ist ein inoffizielles Plugin zum Einbinden der Zählpixel der VG Wort.
Übrigens: Wie man sich generell als Blogger an deren Auszahlungen beteiligt habe ich vor einer Weile in einem eigenen Artikel erklärt.
Nach Installation steht im Adminbereich unter Wartung ein neues Formular. Dort können die CSV-Dateien importiert werden, die man vom Meldeportal T.O.M. bekommt und die bis zu 100 Zählmarken auflisten. Der Import weist die dann den Artikeln im Blog zu. Das kann man solange mit immer neuen CSV-Dateien machen, bis alle Artikel versorgt werden und stattdessen die Reserve gefüllt wird. Von dort bedient sich das Plugin beim Schreiben neuer Artikel, es weist ihnen automatisch die Zählmarken zu.
Das Plugin kümmert sich natürlich auch darum, dass im Frontend in den Artikeln die Zählpixel auch wirklich eingebunden werden.
Nach einem Jahr muss der Blogger im T.O.M. für jeden Zählpixel, der oft genug aufgerufen wurde, die Meldung vervollständigen. Dort sieht man nur die Zählmarke selbst, aber keine Meta-Informationen. Die muss man selbst eintragen; dafür gehst du im eigenen Blog auf "Einträge bearbeiten". In der Eintragsliste zeigt das Plugin nicht nur die ermittelte Länge, die Zählmarke und den Identifikationscode des Artikels an, sondern es erweitert auch die Suche um die Möglichkeit nach Code und Marke zu suchen. Dafür muss man diese nur in den Inhalt-Filter eingeben. So finden sich die nötigen Informationen ganz gut, nämlich den Artikeltitel, -text und -link (wobei da auch der Link jeder Seite gelistet werden sollte, auf dem er in voller Länge stand, was oft auch die Blog-Startseite ist).
Ich halte es eigentlich für ganz gelungen, wie sich das Plugin in den Kern einhakt anstatt einen eigenen Abschnitt im Adminbackend zu schaffen. Ich hoffe ihr seht das ähnlich. Gebt mir doch bitte Rückmeldung ob es bei euch funktioniert, damit ich es guten Gewissens nach Spartacus hochladen kann.
Edit: Das Plugin ist jetzt auch per Spartacus verfügbar.
Das Serendipity-Treffen von 2017
Tuesday, 11. April 2017
Was man alles hinkriegen kann, wenn man nur will! Unsere kleine Serendipity-Gemeinde hat sich nun schon zum dritten Mal in Essen im Linuxhotel getroffen, und es war toll. Mehr noch als beim vorherigen Treffen war es ein erfreuliches Wiedersehen, denn man kennt sich ja noch besser. Aber es war eben auch Thomas wieder mit dabei, der im Vorjahr fehlte.
Meiner Meinung nach haben wir die Zeit hocheffektiv genutzt. Zum einen, um im Haus Großjung und außerhalb gut zu essen, und dort und im Hotel über Allerlei zu reden. Aber außerdem auch ganz konkret mit Arbeit an Serendipity:
- Die letzten Blocker waren gemeinsam schnell beseitigt, sodass die finale Version 2.1 veröffentlicht werden konnte.
- Dabei haben wir den Anlass genutzt, den Releaseprozess zu analysieren. Viele kleine Aufgaben sind zu erledigen, eventuell können wir das nun etwas reduzieren.
- Wir (nun, die anderen, denn Garvin und ich waren am Vorbereiten des Releases) sind durch die Plugins gegangen und haben geprüft, was davon überhaupt noch relevant ist und welche verbessert werden sollten.
- Um neuen Entwicklern Orientierung zu geben, wurden geeignete Bugs im Tracker als #easyfix markiert. Die Bugs sind nicht alle super-einfach, aber erfordern kein umfassendes Vorwissen über die Interna von Serendipity und sind daher gute Einstiegspunkte.
- Der Issue-Tracker wurde auch mit Ideen für die nächste Version bevölkert, und die bestehenden Ideen wurden weitergeplant, entsprechende Kommentare hinterlassen. Ich glaube, uns ist jetzt allen ziemlich klar, wo wir anpacken können wenn wir Zeit in s9y investieren.
Es gab außerdem eine wunderbare mitternächtliche Debugging-Session, als klar wurde, dass dieses erste Release der 2.1 tatsächlich einen natürlich weniger wunderbaren, ziemlich blöden und (wie sich später herausstellte) von mir gemergten Bug hatte. Aktivierte boolsche Pluginoptionen wurden als deaktiviert angezeigt. Den Bug fixten wir in Teamarbeit, und das war wirklich kein 5-Minuten-Fix. Dank dieser Arbeit konnten wir Sonntag morgens dann direkt das Patchfix-Release 2.1.1 veröffentlichen, sodass sicher niemand außerhalb unseres Teams von diesem Bug gebissen wurde.
Ich freu mich jetzt darauf, zusammen die nächste Version anzugehen. Ich möchte den Cache weiter verbessern und standardmäßig aktivieren, Garvin beim MySQL-UTF8-Problem helfen, echt skalierende (responsive) Bilder in Blogeinträgen haben und Unterstützung für rel="Trackback"
einbauen. Und gerne wieder im nächsten Jahr beim Treffen dabeisein.
Die anderen haben auch geschrieben:
- Garvin den offiziellen Blogeintrag
- YellowLed unter #easyfix
- Thomas unter #s9ycamp2017 (ob die sich abgesprochen haben?)
- Mario unter S9YCamp 2017
Artikel über Serendipity in der Screenguide
Wednesday, 15. March 2017
Heute waren zwei schöne Sendungen im Briefkasten. Einmal ein gebraucht gekaufter Gameboy, den ich verschenken werde - dazu vll ein andermal mehr. Die zweite Sendung war eine Ausgabe der Screenguide. Die wurde mir geschickt, weil ich für diese Ausgabe des Magazins einen Artikel über Serendipity geschrieben habe. Online ist er nicht, aber der Anreißer ist außerhalb des gedruckten Magazins lesbar.
An euch zu urteilen darüber, ob es mir gelungen ist, aber die Absicht des Artikels war eine Vorstellung von Serendipity als Blogsoftware. Ich wollte und sollte gleichzeitig zeigen, was Serendipity ist, was es kann und warum es interessant ist. Und das Ganze mit ein paar schönen Screenshots untermauern.
Solch einen Artikel zu schreiben fand ich durchaus spaßig. Auf der einen Seite ist es doch nochmal was anderes als was ich bisher so schrieb. Anderseits passen all diese Dinge (Wissenschaftliche Artikel, Blogartikel, früher Wikiartikel bei UbuntuUsers) bei dieser Art von Text irgendwie zusammen. Alles wird wiederbenutzt.
Serendipity 2.1-rc1
Thursday, 26. January 2017
Garvin hat vorhin den ersten Release-Kandidat für Serendipity 2.1 freigegeben. Es ist sehr stark davon auszugehen, dass dies die sehr bald kommende stabile Version 2.1 wird, eventuell mit ein-zwei Bugfixes, wenn nun noch welche gefunden werden. Die Betaversionen von 2.1 sind schon geraume Zeit auf einigen Produktivblogs im Einsatz, so auch hier.
2.1 ist der Versuch, 2.0 sinnvoll zu verbessern. Einige einfache Verbesserungen, ein paar tiefgreifende Änderungen:
- Support für PHP 7
- Usability-Verbesserungen im Backend, z.B. können alle Plugins auf einmal aktualisiert werden
- Integrierter Cache, um die Datenbank zu entlasten. In meinen Tests verbesserte er die Performance von s9y sehr deutlich.
- Neue moderne Designs: Timeline, Clean-Blog und Skeleton.
- Die modernen Designs werden im Backend nun empfohlen
Tiefgreifend sind auch ein paar andere interne Änderungen. Wir haben die fürs Routing zuständige Funktionen in eine eigene Datei namens functions_routing.inc.php ausgelagert, um die index.php lesbarer zu machen. Außerdem räumten wir die Funktion auf, die dafür zuständig ist, die richtige Datei auszuwählen (Frontend- oder Backend-Design, dann das als Engine genutzten Design, dann das Default-Design). Das ist so ziemlich der Kern von s9y, wurde aber immer weiter verkompliziert und funktionierte dann nicht mehr richtig – allerdings so, dass es nur selten Auswirkungen hatte, aber wir merkten es in der Vorschau.
Ich empfand den Entwicklungszyklus diesesletztes Jahr als etwas schwerfällig, ich glaube, wir hatten alle viel anderes zu tun. Alle Änderungen zusammen sind dann aber doch ein ziemlich großer Block, und ich freue mich, dass diese Verbesserungen nun rausgehen.
Edit: Ein Bug hat sich in den RC eingeschlichen: Der Plugin-Updatebutton funktioniert nicht, weil er kein Token setzt. Das wurde beim letzten Sicherheits-Patch verpasst. Der Fix ist ein Einzeiler, müsste aber wohl manuell eingespielt werden (die entsprechende Zeile in serendipity_event_spartacus.php ersetzen).
Serendipity 2.0.4, 2.1-beta2 und mit neuer Webseite
Monday, 26. September 2016
Serendipity bewegt sich. 2.0.4 fixt ein paar mittelunschöne Sicherheitslücken, ist aber trotzdem die unwichtigere der beiden neuen Versionen. Denn die zweite Beta der 2.1 sollte sehr hübsch sein. Nach dem großen Entwicklungssprung 2.0 enthält 2.1 nochmal eine Vielzahl von Verbesserungen wie neue moderne Themes, Support für PHP 7, einen Cache oder Detailverbesserungen wie den neuen Button, um alle Plugins auf einmal zu aktualisieren. Und mit der zweiten Beta wurden viele Bugs gefixt, sodass ich ziemlich zuversichtlich bin, dass diese Version nahezu der stabilen Version entsprechen wird. Wobei das die Tester der Beta zeigen werden.
Sehr glücklich bin ich über die neue Webseite. Lasst uns stolz auf die alte Seite sein, denn sie hat s9y viele Jahre gut vertreten. Doch inzwischen musste ihr Design aus den Nullerjahren auf neue Nutzer abschreckend wirken; das neue Yellowled-Design dürfte besser ankommen.
Aber es ist mehr als Design, es ist auch der Inhalt: Die Texte und die Dokumentation wurden überarbeitet, und können in Zukunft einfacher per Github weiter verbessert werden. Für Serendipity als Projekt ist sowas in meinen Augen unheimlich wichtig.
Das zweite Serendipity-Treffen
Tuesday, 26. April 2016
Wir haben uns tatsächlich dieses Jahr wieder getroffen. Es ist natürlich ganz was anderes, zu einem Treffen mit dir bekannten Leuten zu fahren, als ins große Unbekannte aufzubrechen. Diesmal war es also ein Wiedersehen und dieses sehr angenehm, und dass es nett sein würde diesmal Bernd dabeizuhaben war ja auch vorher klar.
Wir haben es wieder geschafft eine ganze Weile strukturiert zu arbeiten. Einige Zeit ist in die neue Webseite geflossen, die nun wohl bald die alte ersetzen kann – im Grunde fehlt nur noch eine Aktualisierung der Downloadseite. Außerdem war das Treffen die Gelegenheit, Serendipity 2.1 zu besprechen. Dabei konnten wir einige Issues lösen und für die anderen ist nun größtenteils klar was getan werden muss. Mit der Unterstützung von PHP 7 ist da aber noch ein großer Brocken aus dem Weg zu räumen. Und mit dem UTF-8-Bug sind wir wieder einmal in eine große MySQL-Stolperfalle gelaufen, das wird auch noch haarig und vielleicht etwas für später. Ganz anderen Charakter hatte dann die Arbeit an der Projektinfrastruktur und damit am Wunsch, Garvin zu entlasten und in der Zukunft Probleme zu vermeiden. Auch Thema: Wie wir im Projekt miteinander arbeiten und umgehen wollen. Das ist was positives, dazu später mehr.
Das Bild ist auf dem Rückweg nach Paris geschossen.
Weitere Berichte gibt es bei Bernd und bei Matthias.
S9y InfoCamp 24 – Nachhall 2.0 und das Treffen
Wednesday, 2. September 2015
Mein Schlafrhythmus ist noch durcheinander, daher hatte ich die Nacht über sogar noch Zeit, meinen Feedreader durchzugehen. Matthias und Roberts neue Ausgabe des s9y-Podcast hat mir dabei trotz des Echos gut gefallen. Wer das wie ich verpasst hat und etwas an unserer kleinen Serendipitycommunity interessiert ist, dem sei hiermit empfohlen sich das noch anzuhören. Matthias erzählt von unserem Treffen im März, außerdem werden die letzten Entwicklungen seit der Version 2.0 angesprochen.
Was Serendipity 2.0.2 sonst noch bringt
Monday, 27. July 2015
2.0.2 ist ein Security-Release, da eine Sicherheitsfirma drei mittelschwere Fehler gefunden hatte. Was großartig von denen ist! Davon abgesehen, dass die gepatcht wurden, gibt es aber noch andere erfreuliche Änderungen.
Index, Noindex und Follow, Nofollow
#310 erweitert die Hauptthemes um Anweisungen, bestimmte Seiten nicht in den Index von Suchmaschinen aufzunehmen. Hintergrund ist, dass Serendipity viele Seiten und Texte doppelt, z.B. finden sich alle Artikel mindestens sowohl im Archiv, auf der Autorenseite und nochmal in der Kategorieübersicht. Mit dieser Änderung werden außer der Startseite nur noch die Artikel selbst indexiert, was Google freuen dürfte.
Das ist ein anderer Lösungsansatz für das Problem als die stabilen Archiv-URLs, macht diese aber nicht unnütz. Während vorher dadurch die Suchergebnisse wenigstens gestimmt haben, hält diese Lösung jetzt die doppelten Inhalte völlig aus dem Index. Aber das Stabile Archiv vermeidet immer noch unnütze Suchindex-Invalidierungen, und funktioniert auch, wenn das Theme veraltet und nicht optimiert ist. Das ergänzt sich gut.
Hätte wahrscheinlich nicht unbedingt in ein Patch-Release gehört, aber macht dieses Release interessanter. Beobachtet doch mal, ob es laut webmastertools etwas bringt. Als ich das bei mir eingeführt hatte, konnte man das im Indexstatus deutlich erkennen, da keine vom Index entfernten URLs mehr gelistet wurden.
CKEditor 4.4.6 auf 4.4.8 aktualisiert
Auch CKEditor hatte neue Releases, ein Security-Release und ein normales Patch-Release. Die Changelogs zeigen, dass viele Bugs gefixt wurden, z.B. die Probleme mit den Leerzeilen ab Firefox 36.
Image-Toolbar beim Hinzufügen in Media Library
Wir (in dem Fall, ich) hatten in 2.0 eine Regression eingeführt. Es war vorher möglich, über eine Option die Image-Toolbar auch im Medien-Hinzufügen-Dialog des Editors anzuzeigen, was nun nicht mehr funktionierte. Die ist dort aber praktisch, wenn ein hochgeladenes Bild noch umbenannt oder gedreht werden soll. Die Option wurde in die persönlichen Einstellungen verschoben (Symbolleiste für das Mediendatenbank-Popup anzeigen?) und funktioniert jetzt wieder.
Diverse Backend-Verbesserungen
Die erweiterten Filter in der ML sahen nicht so aus, wie sie aussehen sollten, und sind jetzt begradigt. In der Theme-Übersicht zeigt das installierte Theme nun einen Button, um sein Backend zu installieren, falls vorhanden und noch nicht geschehen. Die Einstellungen für das Syndication-Plugin nutzen ab sofort ein etwaig vom Theme bereitgestelltes Bild für das Feedicon, und die subtome-Klasse wird nur noch gesetzt, wenn die Option auch aktiv ist.
Natürlich gibt es noch mehr Änderungen, z.B. Verbesserungen für Matthias next-Theme und einen Fix, um Atom-Feeds optional über https zu verlinken, aber das reicht für hier.
Die anderen haben dieses Release getragen, nur wenig ist von mir. Trotzdem wünsche auch ich viel Spaß mit der neuen Version.
War s9y 2.0 eigentlich ein Erfolg?
Tuesday, 23. June 2015
Das größere Update für Serendipity brauchte viel Zeit und änderte mehr als sonst. Eine solche neue Version hat - neben dem Selbstzweck, technisch besser und damit in Zukunft besser weiterentwickelbar zu sein - zwei Ziele: Das wichtigste ist, dass die Nutzer der vorherigen Version sich mit ihr anfreunden können. Aber nett wäre es auch, wenn ein paar neue Nutzer dazukommen. Das braucht man nicht überzubewerten - ein Millionenprojekt zu managen ist sicher kein Spaß. Aber mehr Akzeptanz als zuvor könnte heißen, dass man etwas richtig gemacht hat.
Was einfach so spürbar ist, am Forum zum Beispiel, ist dass es nicht geklappt hat, s9y durch die neue Version einen großen Schub zu geben. Aber was sagen die Zahlen, wo steht das Projekt? Hier:
Auf Sourceforge gab es 1308 + 2184 = 3492 Downloads für 2.0 und 2.0.1, vom Release im Januar bis jetzt. Die vorherige Version 1.7.8 wurde im Februar 2014 veröffentlicht und vom 1.2.2014 bis zum 22.07.2014 3936 mal heruntergeladen.
Je nach Perspektive ist das toll, oder eher nicht so. ~4000 Downloads sind ~4000 Menschen, die s9y nutzen, grob geschätzt, das ist schon ziemlich cool. Und dass es nicht weniger Downloads als zuvor sind heißt wohl, dass die s9y-Nutzer nicht vergrault wurden – obwohl das wohl eher die Folgeversionen zeigen werden. Klar ist aber: Durch die neue Version wurde s9y nicht weiter verbreitet, und das ist angesichts der Verbesserungen ein bisschen schade.
Mich würde allerdings nicht wundern, wenn die neue Webseite diese Downloadzahlen erhöhen würde. Und dass das Platzieren von Artikeln auf den Seiten für Technews gefehlt hat und sichtbare Auswirkungen hätte.
Vielleicht wird eine nächste Version das ja zeigen.
Serendipity mit Cache beschleunigen - Tester gesucht
Sunday, 31. May 2015
Das wichtigste zeigt das Diagramm:
Serendipity könnte durch Caches erheblich beschleunigt werden. Für kleine Blogs ist das weniger wichtig, für etwas größere wird es schnell relevant. Selbst dieser kleine Blog hier, der auf einem guten Server läuft, kam durch ein paar häufiger besuchte Artikel so sehr ins Schwitzen, dass ich das Cache-Plugin installieren musste. So etwas hätte ich daher gerne direkt im Core.
Es gibt verschiedene Ansätze. Ein Cache kann s9y in eine statische Seite verwandeln, der Effekt ist immens. Das ist Nealks Text-Cache im Diagramm. Der printEntries-Cache dagegen cached zwar das Ergebnis des Datenbankaufrufs, führt beim späteren Aufruf aber immer noch die Event-Hooks für Plugins aus. Funktioniert das wie geplant, wird s9y ohne jegliche Einschränkung für den Nutzer beschleunigt.
Wir sparen einen komplizierten Datenbank-Select samt Join, und einiges an auszuführenden PHP-Code.
Der Cache, den wir im Entryproperties-Plugin schon haben, hilft zwar bereits, ist aber nicht genug.
Nach einem Stupser im Forum und interner Rücksprache habe ich den printEntries-Cache nun in den aktuellen Master, das zukünftige s9y 2.1, eingebaut.
Nutzer mit Testblog, bitte testet den Cache, indem ihr s9y mit ihm nutzt: $serendipity['use_internal_cache'] = false;
in der serendipity_config.inc.php auf true
setzen. Feedback bitte hier in die Kommentare, ins Forum oder in das Github-Issue.
Für mich ist Ziel, zwei-drei Serendipity-Version später diesen Cache als Standard an zu haben.
Serendipity als Instant-App auf Scaleway
Tuesday, 12. May 2015
Serendipity wurde von Scaleway in den Image-Hub aufgenommen. Das heißt, dass Nutzer beim Erstellen eines Servers das Serendipity-Image auswählen können. Nach dem Start des Servers (~40 Sekunden) ist dann alles vorbereitet, um direkt den Installer auszuführen.
Im Forum hatten wir öfter mal Probleme mit von Hostern bereitgestellten s9y-Installationen, denn ihre Version war oft modifiziert und Support so unmöglich. Hier ist das anders: Das Image basiert auf einem Skript von mir, das automatisch die aktuelle Serendipity-Version herunterlädt, entpackt und ihre Abhängigkeiten (Apache, SQLite) installiert. Serendipity selbst wird also nicht modifiziert.
Ich habe Scaleway hier schonmal vorgestellt und war ganz angetan, und wie das jetzt ablief ist ein weitere Pluspunkt, die Leute waren sehr ok. Die Server sind zudem Quad-Core-ARM-Rechner, die für fast jede s9y-Installation völlig ausreichen sollten. Zusammen mit 2 GB Ram und 50 GB Speicherplatz ist auch noch genug Luft, um auf dem Server noch andere Webdienste laufen zu lassen.
Webmentions sind nur Trackbacks
Monday, 11. May 2015
Ich bin gerade etwas enttäuscht. In letzter Zeit bin ich mehrfach über die IndieWeb-Bewegung gestolpert, unter anderem über diese Howto-Seite. Und ich fand das super, das ist genau, was dsnblog machen wollte, nur in richtig. Daher nahm ich mir für gestern vor, mir ihre Webmentions anzuschauen und wenn möglich in Serendipity und ursprung einzubauen. Und stellte dann fest, dass Webmentions nichts anderes als Trackbacks sind.
Webmentions sind damit pures Not-Invented-Here-Syndom (NIH), und fast alles was sie als Abgrenzung zu Trackbacks in ihrem Wiki schreiben ist falsch:
-
Für Trackbacks gibt es genau wie für Pingbacks ein rel-Attribut,Fragile discovery
Trackback uses RDF in HTML comments to provide an unnecessarily complex (having to parse a completely different format) and fragile (HTML comments get stripped all the time in processing, e.g. by search engines) method of discovery. Pingback abandoned such methods, instead using an HTTP link header or link tag with rel for discovery.
rel=trackback
, z.B. von mir in ursprung implementiert. Das Suchengines HTML-Kommentare ignorieren beeinflusst den Entdeckungsprozess kein bisschen. Selbst wenn der Kommentar problematisch wäre (er ist es, aus anderen Gründen), der RDF-Weg ist nur ein möglicher.
Das ist Unsinn. Das mag in der Spezifikation nicht explizit drin stehen, ist aber gängige Praxis. Natürlich müssen Blogs die Quelle überprüfen und dürfen den Trackback nur akzeptieren, wenn der Quelllink auch existiert. Blogsysteme wie Serendipity machen das selbstverständlich seit Jahren so, wahrscheinlich bald seit einem Jahrzehnt.Lack of link verification
Trackback "works" by a one-way HTTP request from the linker to the linkee, and the linkee is not expected to do any verification that the linker actually has a link to the linkee. Thus it was immediately overrun with spam and is considered useless. Pingback deliberately improved upon this by requiring verifying that the source links to the target.
-
Wie eins obendrüber beschrieben: Link-Verifizierung wird betrieben. Ich bekomme hier ne ganze Menge Kommentarspam, manchmal kommen sie sogar durch die Spamplugins. Aber Trackback-Spam habe ich seit Jahren nicht mehr gesehen.Spam
Due to the lack of link verification, Trackback is particularly easy for spammers to overwhelm and thus has been largely abandoned due to being pretty much all spam at this point.
Was mich am meisten daran stört ist die Verschwendung. Selbst wenn Trackbacks durch fehlende Link-Verifizierung kaputt wären, hätten sie genausogut Trackbacks nehmen und Link-Verifizierung verpflichtend dazubauen können. Wobei, genau das haben sie gemacht, nur um es dann in Webmentions umzubenennen. Aber ohne diese Umbennenung wäre es einfacher, etwaige Änderungen am Protokoll direkt als Update für das Trackback-System einzubauen. Dann könnten sie sich auch das Nachdenken über Anti-Spam-Maßnahmen sparen, denn wie wir mit Trackbacks umgehen müssen wissen wir inzwischen, das System ist stabil.
Der nächste Grund wirkt nur noch vorgeschoben. Als nächstes wird die Darstellung der Trackbacks kritisiert - als ob das nicht etwas wäre, was sie problemlos auf ihrer Seite anders handhaben könnten, was sie dann sogar als Empfehlung und Ergänzung zum Trackback-Protokoll veröffentlichen könnten. Darstellung ist übrigens etwas, was in der offiziellen Webmentions-Spezifikation vollständig fehlt.
Vielleicht sollte man trotzdem Webmentions einfach unterstützen, denn wie Trackbacks sind sie immer noch eine gute Idee. Und es wäre gut, einen POST-basierten Linkback-Mechanismus zu haben, der von Blogs und Social Networks gleichermaßen unterstützt wird. Pingbacks sind durch ihr XMLRPC sowieso ein Relikt, aber auch Trackbacks werden teils selbst von Blogs nicht mehr gut unterstützt, leider schwächelt da auch Wordpress. Aber bisher wirken Webmentions so, als habe da jemand Linkback mit POST gedacht ohne Trackbacks zu kennen, ist dann später drüber gestolpert und sucht jetzt Abgrenzungsmerkmale. Zusammen mit großartigen Vorschlägen zur Spamvermeidung in der Spezifikation wie "Nutze nofollow-Links" - was den halben Sinn von Linkbacks zerstört, die ja eben ganz im Gegenteil auch für Suchmaschinen gedacht sind; gegen Spam bei Kommentaren noch nie etwas gebracht habt - machen Webmentions einen sehr schlechten Eindruck auf mich. So schlecht, dass ich sie zumindest erstmal nicht implementieren werde.