Externe Kommentarsysteme
Es ist echt toll, man beginnt ein Open Source Projekt und kommt mit unheimlich vielen neuen Technologien in Kontakt. Für LiveTest haben wir bis jetzt Annotations, Git, Event-Dispatching und diverse Testtools unter die Lupe genommen. Da es aber auch noch eine Webseite dazu gibt, kamen auch noch Dinge dazu, an die ich vorher nicht gedacht hatte. Ein externes Kommentarsystem zum Beispiel. Das war bei uns ganz praktisch, da wir ja ein eigenes „CMS“ gebaut hatten und das natürlich keine Kommentierfunktion hatte. Wir haben Disqus gewählt.
Jetzt war ich vor kurzem noch der Überzeugung, dass man mit Kommentarmodulen echt keinen Blumentopf gewinnen kann. Ich meine, jeder hat doch schon mal ein Gästebuch programmiert und mehr ist es ja nicht. Da war man noch einem Tag fertig und konnte live gehen. Ist also kein Hexenwerk. Warum sollte man also so etwas einsetzen?
Keine Sorge, ich würde meinen Grund für Disqus nicht für die Argumentation nutzen, da könnte man wirklich selbst was schreiben. Aber wie sieht es mit den großen Seiten wie dem Spiegel oder dem Stern aus? Das Zauberwort an dieser Stelle heißt wohl Caching. Nehmen wir eine Standardartikelseite ohne Kommentare. Diese wird sich laaaange nicht verändern. Ist also prädestiniert dafür, lange in einen Gateway-Cache wie Squid oder Varnish zu liegen. Bauen wir jetzt ein Kommentarsystem ein, so müssen wir entweder immer mal wieder den Cache invalidieren oder auslaufen lassen. Da Invalidieren aber immer ganz fies zu implementieren ist, machen wir das doch besser nicht.
Setzen wir jetzt ein Kommentarsystem ein, dass alles über JavaScript macht und außerdem auf externen Servern läuft, so kann unsere Applikation Cachezeiten nutzen, die gegen unendlich gehen. Wunderbarstens. Das die Kommentare nicht mehr bei uns liegen, ist natürlich ein Nachteil, aber auch die anderen Tools haben wunderbare Export und Reportingmöglichkeiten, den SEO-Nachteil, den einige vielleicht erwähnen würde, kann man glaube ich vernachlässigen.
Den SEO-Nachteil würde ich jetzt pauschal nicht vernachlässigen. Da Du deine Kommentare über Javascript lädst, können ja Suchmaschinen diese nicht mehr indexieren. Somit verlierst Du vielleicht wichtige und ergiebige Diskussionen, in denen gerade im IT-Bereich doch auch Code-Schnippsel vorkommen, die du aber indexiert haben möchtest.
ich würde seo nicht vernachlässigen. die Kommentare sorgen dafür das der content wächst und die Seite sich ständig verändert aktuell wird was Google und Co durchaus lieben.
Nun ich geb dir zur Abwechslung zu den zwei vor mir Recht, was nützt mir SEO wenn die Beiträge eh gefragt sind. SEO in einem IT-Blog finde ich für die Katz, aber wenn SEO-Mitarbeiter mit mischen möchten, sollten sie sich generell die Kommentare durchlesen == Daseinsberechtigung 😉
naja
Ich sehe es so wie die ersten 2 Poster.
Antworten in IT-BLogs haben IMHO sehrwohl oft einen wichtigen SEO Faktor, ausserdem kommt wieder eine „externe Abhängigkeit“ dazu.
Ich muss „hoffen“, dass der Anbieter bestmögliche Erreichbarkeit hat UND dass die Benutzer JS aktiviert haben.
Und dann wären da noch die lieben Datenschutzbestimmungen, an die leider sehr oft niemand denkt (die ich übrigens hier auch nicht finden kann, obwohl GA benutzt wird;) ).
Also wenn dir Caching wirklich am Herzen liegt, und du die Kommentare (vorallem fürs SEO) bei dir liegen haben möchtest, warum siehst du dir nicht ESI (http://en.wikipedia.org/wiki/Edge_Side_Includes) an?
Symfony2 Caching baut mitunter auf ESI auf.
http://www.slideshare.net/fabpot/caching-on-the-edge-with-symfony2
Ich persönlich habe damit zwar noch nicht gebaut, aber für so größere Seiten, durchaus sinnvoll!
@Michael: Wir setzen auf ESI bei unseren neuen Webseiten. Aber auch dort könnte man einen externen Dienst mit einbinden.
@Michael: Was mit gerade noch so einfällt. ESI baust du nicht einfach so in deine Applikation ein. Das ist schon mehr Aufwand.
@Nils: Okay, dann weißt du da schon mehr als ich.
Das es mehr Aufwand ist, denke ich auch. Dachte nur das würde ins Konzept passen 😉
@Michael: Passt sogar wunderbar ins Konzept 😉
Und ich bin immer noch fest der Überzeugung, dass ein Kollege und ich Fabien auf die Idee mit ESI für Symfony2 gebracht haben, aber das ist eine andere Geschichte 😉
Wenn du Nutzereingaben an einen externen Server schickst, brauchst du natürlich auch eine Datenschutzerklärung, nicht wahr?
@Tom: Jap, hat ragtek schon erwähnt.
… und man sollte nicht vergessen, dass man von der Verfügbarkeit und Ladezeiten des externen Anbieters abhängt. Wenn die Seite langsam läd is dem user egal woran es liegt. Er ist weg.
Da is dann natürlich die Frage nach dem service-level den man hat. Es kann natürlich sein, dass man am externen System mehr Qualität hat als bei den eigenen … oder man endet bei Amazon 😉