Nur halb so schlimm: Eigene Short-URLs

05 09 2009

Vor einiger Zeit habe ich gefordert, dass größere und oft bei Twitter verlinkte Seiten eigene kurze URLs für ihren Content anbieten. Neulich erst habe ich mir dann Gedanken gemacht, wie man Short-URLs und so verüberflüssigen kann. Auf diese große Lösung mag ich nicht warten, aber zumindest bei der kleinen Lösung kann ich mit gutem Beispiel voran gehen. Also habe ich gerade schnell ein kurzes Script geschrieben, das kurze URLs für mein Blog in die vollen URLs umsetzt. Zum Beispiel lautet für diesen Eintrag die kurze URL http://spackblog.de/668, was mit 23 Zeichen deutlich kürzer ist als die verdammt lange volle URL und vor allem kürzer als 30 Zeichen, ab denen Twitter ungefragt mit bit.ly verkürzt.

Ich hatte eine Weile überlegt, diese Funktionalität als Serendipity-PlugIn zu veröffentlichen, aber das habe ich aus verschiedenen Gründen nicht gemacht. Ein Grund ist, dass mich ein undankbarer Vollspacko im S9Y-Forum angesaugt und als Schnösel bezeichnet hat, als ich mein letztes PlugIn dort vorgestellt habe. Ich will da gar nicht genauer drauf eingehen, Folge ist jedenfalls, dass meine Lust auf die extra Arbeit für ein S9Y-PlugIn dadurch doch sehr gesunken ist. Ein weiterer Grund ist, dass der generierte Link irgendwo im Template und noch mal im Header positioniert werden muss, damit es Sinn macht. Das kann ein PlugIn nicht flexibel alleine regeln. Man könnte den Link allenfalls dort hinpacken, wo momentan auch die Tags sind, aber das gefällt sicher nicht jedem. An die .htaccess des Blogs, oder wenn dieses in einem Unterverzeichnis steckt auch an die .htaccess der Domain muss man auch noch ran. Spricht alles gegen ein PlugIn. Sowas gehört in meinen Augen sowieso in den S9Y-Core.

Das Script funktioniert super simpel. Alles fängt mit einer Anweisung in der .htaccess an, die alles, was nach kurz-URL aussieht an das Script weiterreicht:

RewriteEngine On
RewriteBase /
RewriteRule ^(e|a|c)?([0-9]+)/?$ s9y_shorturl.php?type=$1&id=$2 [NC,L]

Man kann schon sehen, dass das Script auch kurze URLs für Kategorien und Autoren unterstützt. Der spannende Teil im Script selber ist die Datenbankabfrage, die die kurze URL aus der Datenbank ausliest:


// open a database-connection
$dbh = new PDO('mysql:host=' . $db_server . ';dbname=' . $db_database, $db_user, $db_pass);

// prepare the statement
$stmt = $dbh->prepare('SELECT permalink
  FROM s9y_permalinks
  WHERE type = :type
    AND entry_id = :entry_id
  LIMIT 1');

// execute the statement
$stmt->execute(array(':type' => $type, ':entry_id' => $entry_id));
  
// read the returned urlpart
$urlpart = $stmt->fetchColumn();

// close the database-connection
$dbh = null;

// redirect the user with a 301 status code (moved permanently)
header('Location: ' $blog_base_url . $urlpart, true, 301);
exit;

Der Rest vom Script besteht aus Fehlerbehandlung und Variablen-Vorbereitung, die ich hier mal weg lasse. Der ganze Code findet sich im Nachtrag zum Download. Damit ist der erste Teil schon fertig, der die kurzen URLs auflöst. Für die kurzen URLs werden einfach die von Serendipity vergebenen IDs genutzt, der Parameter type kann übrigens 'entry', 'category' oder 'author' sein. S9Y führt eine eigene Tabelle für die Zuordnung von IDs und URLs, die man nur abfragen muss.

Der zweite Teil ist leider Handarbeit im Template. Man muss dazu an der Stelle, wo der Link auftauchen soll folgenden Code in der entries.tpl platzieren: <a href="http://SHORTURL_DOMAIN/{$entry.id}">http://SHORTURL_DOMAIN/{$entry.id}</a>. SHORTURL_DOMAIN muss natürlich durch die jeweilige URL ersetzt werden, in meinem Fall ist das tatsächlich eine andere Domain als die, auf der das Blog läuft. Ich habe zusätzlich noch in der index.tpl im Headerbereich im {if $entry.id} Block einen Short-URl Autodiscovery Link eingefügt, wie er hier beschrieben ist.

Das ganze arbeitet extrem simpel und macht genau das, was es soll: Wenn jemand meinen Blog bei Twitter und Co. verlinken will, kann jetzt meine 23 stellige Kurz-URL hernehmen und sich so den Scheiß mit den verkürzten URLs sparen, bei denen man nicht weiß, wohin sie eigentlich linken. Alle Seiten sollten solche eigenen Kurz-URLs haben, dann wäre das mit Twitter nur noch halb so schlimm.

Nachtrag 24.02.2011: Weil eine Anfrage nach dem vollen Code kam, habe ich den mal hübsch gemacht und zum Download bereit gestellt. Das Script selber hat außer PHP 5.1 mit PDO keine Abhängigkeiten und stört auch andere Scripte nicht, solange sich die Rewrite-Regeln in der .htaccess vertragen. Wer ganz sicher gehen will, betreibt das alleine auf einer (Sub-)Domain. Viel Spaß damit. Ach ja, Lizenz ist cc-by-sa, das sollte genug Freiheiten lassen.


Wie man Short-URLs und so verüberflüssigen kann

27 07 2009

Der Microblogging-Server laconi.ca kann jetzt auch Dateianhänge. Das ist nett und macht Twitpic und Co. langfristig überflüssig. Dateiuploads funktionieren sehr simpel: Man lädt eine Datei hoch, der Dienst generiert dazu eine Short-URL mit is.gd. und fügt diese am Ende des Dents ein. Das wars. Dabei hätte man es wahrscheinlich so viel besser machen können.

Im Prinzip ist das Problem mit Dateianhängen das gleiche, wie mit URLs allgemein und verschiedenen anderen Sachen: Sie sind im Grunde Metainformationen zur Nachricht selbst und kollidieren mit dem 140 Zeichen Reintext-Limit beim Microblogging. Das ist etwas unfair, denn URLs sind mitunter sehr lang, gelegentlich sogar länger als 140 Zeichen. Abhilfe schaffen die vielen Short-URL Dienste, aber nun weiß man zum einen nicht mehr, was sich hinter einem solchen Link verbirgt (wie bei dem hier), zum anderen können Dienste schließen und alle darüber generierten URLs würden unbrauchbar werden. Oder aber URLs werden nach einiger Zeit recycelt, was noch schlimmer ist, denn nun zeigt mein Link auf eine völlig andere Seite. Short-URLs sind also scheiße und zu vermeiden, wo es nur geht. Doch wie? Im Folgenden ein paar Lösungsansätze zum Thema.

Wie wäre es, wenn Twitter (stellvertretend für alle Microblogging-Dienste gemeint), eine URL pro Nachricht als Metaangabe erlaubt. Die einfachste Möglichkeit dazu wäre es, von URLs nur ein Zeichen bei der 140-Zeichen Limitierung zu berücksichtigen. Das hätte aber gleich zwei gravierende Seiteneffekte: Erstens bricht man die API, denn viele Dienste erwarten nur 140 Zeichen und würden die Nachricht deswegen einfach abschneiden. Zweitens würde sich schnell die Unart etablieren, ganze Sätze in nicht existierenden URLs zu formulieren und so das Limit zu umgehen. Diese Möglichkeit kommt also keinesfalls infrage.

Eine erste echte Möglichkeit wäre es, wenn Twitter von jeder Short-URL beim entgegennehmen des Tweets das Ziel auslesen würde und dieses Ziel zur Verlinkung (oder als Title-Attribut) in der geparsten Nachricht benutzen würde. In der Textversion (über die API) würde dann aber immer noch alleine die Short-URL stehen, Twitter-Clients, die diese selber parsen, bekämen also davon nichts mit. Zudem werden die URL-Shortener das gar nicht mögen, werden sie so doch brutal übergangen. Das grundsätzliche Problem bliebe bei der Lösung außerdem bestehen: Die Short-URL ist immer noch da, wird archiviert und man ist weiterhin dem URL-Shortener ausgeliefert. Vorteilhaft wäre, dass Twitter das Verfahren sofort einführen könnte und die volle Kontrolle darüber hätte. Sprich: User könnten das Verhalten konfigurieren, wenn sie es nicht mögen und Twitter kann sich aussuchen, bei welchen URL-Shortenern sie das Verfahren anwenden. Denkbar wäre auch, dass Twitter einen eigenen URL-Shortener Dienst anbietet, der das Verfahren implementiert.

Meine eigentliche Idee ist aber Folgende: Twitter erweitert seine API um ein Feld für eine URL (mit max 255 Zeichen). Das Webinterface und Twitter-Clients, die das Verfahren implementiert haben, bieten ein extra Eingabefeld für diese URL und fügen (zumindest übergangsweise) automatisch eine Short-URL dazu in die Nachricht ein. Diese Short-URL wird zweckmäßigerweise von einem dem Dienst angeschlossenen Service bereitgestellt und sollte garantiert so lange leben, wie es den Dienst gibt. Ältere Clients schicken eine normale Short-URL in der Nachricht und Twitter parst diese (bzw. die erste, wenn es mehrere gibt) und füllt die eigentliche URL in das Extrafeld ein. Als einzigen Nachteil des Verfahrens sehe ich, dass durch die Erweiterung der API das Verfahren nicht sofort in voller Schönheit in allen Clients zum Vorschein kommt. Dass so nur eine solche URL pro Nachricht möglich ist, sehe ich angesichts des 140 Zeichen Limits als durchaus konsequent und nicht als Nachteil an. Langfristig sehe ich aber große Vorteile in dem Verfahren: Es ist voll abwärtskompatibel, bringt aber neue Möglichkeiten mit. Können genug Twitter-Clients mit diesen URLs angemessen umgehen, kann man auf das Einfgen einer zusätzlichen Short-URL verzichten und hat die vollen 140 Zeichen für seine Nachricht zur Verfügung. Ein weiterer Vorteil ist, dass die Clients selbst entscheiden können, wie sie mit URLs umgehen wollen.

Ich halte das für eine saubere Lösung für das leidige Short-URL Problem, aber eben auch für andere Metadaten. Dateianhänge könnten auf die gleiche Weise implementiert werden, intern macht laconi.ca/identi.ca das offenbar ja schon so. Nur hapert es eben an der Anbindung nach Außen. Ebenfalls abgefrühstückt werden könnte dann endlich auch mal eine sinnvolle und nicht störende Geokodierung von Beiträgen. Momentan behilft man sich mit Krücken wie L:Düsseldorf, was für "Location Düsseldorf" steht, oder der sehr hässlichen Einbindung von Geokoordinaten direkt in den Nachrichtentext. Ein Metafeld für Geoinformationen würde hingegen niemanden stören, eine verlässliche Einbindung von Kartendiensten in geofähigen Clients erlauben und so schöne Geschichten wie Live-Twitter-Maps ermöglichen. Flickr hat das so schön vorgemacht.

Mancher mag jetzt einwenden, dass gerade die Einfachheit von Twitter mit dem einen Eingabefeld seinen Charme ausmacht. Dem halte ich entgegen, dass drei kleine Knöpfchen neben dem Eingabefeld für diese Metainformationen der Einfachheit keinen Abbruch tun würden, die vielen Twitter Poweruser hätten aner eine schöne Möglichkeit, ihre Tweets sauber zu halten. Kein Anfänger auf der Suche nach Einfachheit versteht Tweets, wo alles irgendwie verlinkt ist mit #Tags, !Gruppen, L:Orten, http://sho.rt/urls, RTs und @namensnennungen. Da kann man doch beim besten Willen nicht mehr von Einfachheit sprechen und eine Metaangabe für Reply-Tos gibt es schon immer und jeder weiß die zu schätzen.

Meine Forderung an Twitter und identi.ca lautet also: Erweitert Eure API um Felder für eine URL, Geokoordinaten und ggf. einen Dateianhang. Die Leute benutzen diese Sachen tagtäglich und nutzen dafür teilweise ärgerliche Krücken. Schluss damit!

Ich selber werde bei Gelegenheit meine PHP-Twitter-API derart erweitern, dass sie eingehende Short-URLs auflöst und ersetzt (und das Ergebnis cached). Profitieren wird davon mein Lifestream und die Microblog-Anzeige in der Sidebar vom Blog.

Nachtrag 24.08.2009: Inzwischen hat Twitter eine Erweiterung um Geokoordinaten zu jedem Tweet angekündigt, was gut ist. Was aber schlimmer als gedacht ist: Twitter kürzt automatisch und unabschaltbar alle URLs mit mehr als 30 Zeichen mit bit.ly. Ich hasse das, denn wenn ich von meinen 140 Zeichen 60 für eine URL opfere, dann hat das seinen Grund. Hoffentlich ändert sich das irgendwann mal wieder.


Ein paar Regeln, wie ich microblogge

05 03 2009

Ich schreibe in letzter Zeit viel in mein Micrboblog (direkt, im Lifestream oder momentan noch rechts in der Sidebar). Für mich gleicht das einer Befreiung von beschränkenden Formulierungszwängen hier im Blog, wenn ich nur etwas mitteilen möchte und stellt deswegen eine perfekte Ergänzung zum Blog dar. Folgende Gedanken habe ich mir dazu gemacht:

Im Blog schreibe ich, wenn ich Zeit und Muße dafür finde. Thematisch wird sich nicht viel ändern: Ich schreibe auf, was mir gerade wichtig ist und was ich mitteilen möchte. Aber: Wenn sich das ganze auf eine kurze Mitteilung beschränkt, fasse ich sie in ein oder mehrmals 140 Zeichen zusammen und hau sie im Vorbeigehen in mein Microblog. Ihr müsst also im Prinzip beides lesen, wenn ihr zuvor nur meinen Blog gelesen habt. Der Zwang zum Kurzfassen dürfte sich aber insgesamt positiv auf den dafür nötigen Aufwand auswirken, also kein Grund zum ärgern.

Der Vorteil am Microblog ist aber auch die Aktualität. Sprich: Ich kann (u.a. vom Handy aus) ohne nennenswerte Hürden oder Mühen veröffentlichen und habe so endlich die Möglichkeit, Gedankenblitze sofort festzuhalten, die ich früher gerne gebloggt hätte, aber aus verschiedenen Gründen (Faulheut, gerade unterwegs, was auch immer) stets wieder vergessen habe. Daher rührt auch das Mehr an Output, was manche sicher festgestellt haben. Nicht mein Sendungsbewusstsein ist durch das Microblog gestiegen, sondern meine Möglichkeiten, diesem freien Lauf zu lassen.

Neben dem Microblog nutze ich aber auch einen weiteren wichtigen Kanal neben dem "großen" bloggen, nämlich meine Bookmarks bei Mister Wong. Einigen von Euch gehen die am Arsch vorbei, klar. Aber habt keine schlechte Meinung davon, denn ich weiß von einigen Lesern, dass sie diese sehr schätzen. Dort haue ich alles rein, was ich für mich für später abspeichere und vor allem, was ich anderen zeigen möchte. Dabei landen hier die eher langfristigen Hinweise, die man noch mal wiederfinden möchte und im Microblog landen eher Links mit aktuellem Bezug, oder eben gar keine Links. Ich sehe keinen Sinn darin, für Sachverhalte, die sowieso gerade durch die Presse geistern, wertvolle 15-20 von 140 Zeichen zu opfern. Ich weiß, dass dadurch manche Sachen etwas an Bezug verlieren, aber ich versuche einen guten Kompromiss zu finden. 20 Zeichen sind viel Wert, machen sie doch immerhin ca. 15% der Nachricht aus. Manche Sachen brauchen nicht unbedingt Bezug, bei anderen Themen weiß die Zielgruppe sowieso, worum es geht und die anderen würden es nicht interessant finden und den Link sowieso nicht anklicken. Und für den seltenen Fall, dass diese beiden Bedingungen nicht zutreffen und ich auch keinen Link gepostet habe, bin ich immer noch erreichbar, zweckmäßigerweise direkt bei identi.ca.

Ja! Einer der häufig missverstandenen Aspekte beim Microblogging ist, dass das System eine direkte wahlweise öffentliche und nichtöffentliche Kommunikation erlaubt. Die ganzen @benutzernamen und #Tags (und bei identi.ca auch !Gruppen) dienen genau diesem Zweck. Auch der Begriff "followen" ist ein wichtiger Aspekt: Er ist quasi ein Abo der anderen Person, so dass deren Tweets und Dents sich chronologisch in meine Leseliste einordnen, ich also sehr zeitnah mitbekomme, was die anderen aktuell so twittern/microbloggen. Das ganze ist sehr spannend und man gewöhnt sich schnell daran, Hype hin oder her. Probiert es mal aus.

In Zukunft… Ich überlege mir gerade auch eine Lösung für das Problem der sehr unterschiedlichen Relevanz meiner Einträge. Gerade beim Microblog gibt es eher irrelevante, aber persönliche Beiträge wie "Bin grad bei Plus, bemerkenswert lange Schlange" neben quasi kleinen Blogbeiträgen wie "So solls sein: #Musicload bietet inzwischen den kompletten Katalog als MP3 und ohne Wasserzeichen. Kann man ja jetzt mal was kaufen". Diese müssen meines Erachtens dringend voneinander getrennt werden, das gilt auch für die Einträge im Blog; an manchen davon schreibe ich ein bis zwei Stunden und mir ist der Inhalt auch Dauerhaft wichtig und andere Beiträge haue ich so raus und sie haben keinen oder nur aktuellen Bezug und interessieren spätestens ein Jahr später kein Schwein mehr. Diesem Unterschied werde ich demnächst durch eine geeignete technische Lösung beikommen, im Lifestream werdet ihr das wahrscheinlich durch verschiedene Hintergrundfarben visualisiert bekommen. Seid also gespannt.


Mein Lifestream ist startklar

26 02 2009

Seit gestern ist meine Lifestream-Seite online und seit gerade eben auch der dazugehörige RSS-Feed. Damit biete ich Euch, liebe Leser, eine halbwegs übersichtliche und optisch erträgliche Möglichkeit, auf einen Blick zu sehen, was es bei mir Neues gibt.

Momentan könnt ihr dort neben Anreißern zu den jeweils letzten fünf Blogeinträgen und Kommentaren auch meine zehn neuesten Microblog-Einträge (Dents) sofort sehen. Wer etwas scrollt, findet weiter unten zehn neue Wong-Bookmarks und fünf neue Qype Bewertungen. Wenn ihr mit der Maus einen Moment über den Links verweilt, könnt ihr im Tooltip jeweils die Beschreibung bzw. einen Anreißer für den Text lesen.

Rechts daneben gibt es Links für alle Feeds einzeln und für den Gesamt-Feed. Der ist für diejenigen unter Euch, die Feeds nutzen, vielleicht eine gute Sache, bietet er doch alle meine aktuellen Inhalte chronologisch sortiert und halbwegs sinnvoll aufgearbeitet für den Feedreader der Wahl an. Ich habe mich hier entschieden, Titel und Autor möglichst aussagekräftig zu gestalten. Ich hoffe das ist mir gelungen.

Ich bin weiterhin und stets offen für Feedback.

Zum technischen Kram: Das Script für den ganzen Lifestream habe ich selber in PHP geschrieben und greife dabei auf das feine SimplePie für das Feed-Handling zurück, das ich um einige Funktionen zur Angleichung der Feedinhalte bereichert habe. Dazu musste ich die SimplePie-Klasse etwas erweitern und ein wenig was drumrum bauen. Wenn Interesse besteht, kann ich das Skript gerne unter einer liberalen Lizenz zur Verfügung stellen. Es ist recht allgemein gehalten und zentral konfigurierbar, vom Template für die Lifestream-Seite natürlich mal abgesehen, das muss jeder für sich selbst und jeden einzelnen Feed anpassen. Alternativ kann man auch ohne viel Eigenarbeit nur den Feedaggregator mit den feinen Angleichungsfunktionen nutzen: Feeds einfach nur zusammen mischen funktioniert nämlich nicht wirklich gut.


Bitte um Feedback zum Thema Lifestream

23 02 2009

Hallo liebe Freunde und Bekannte, die ihr an meiner Person interessiert seid, ich brauche mal Feedback zu Eurem Zugang zu meinen Inhalten. Ich weiß, ihr mögt fast alle keine Kommentare schreiben, also sprecht mich bitte einfach auf irgendeinem Kanal an.

Es geht um folgendes: Ich baue gerade eine "Lifestream"-Startseite, die später unter spackmat.de alle meine im Netz verstreuten Inhalte zusammenführen soll. Also nicht mehr der ganze Kram in der Sidebar hier im Blog, das ist auf Dauer zu unübersichtlich, sondern eine extra Seite, auf der ihr auf einen Blick meine Publikationen finden könnt. Es geht erst mal um mein Blog, die Kommentare, mein(e) Microblogs, meine Wong Bookmarks und meine Qype-Besprechungen. Ich denke, das ist eine gute Idee.

Nun zum Feedback:

  1. Was wünscht Ihr Euch dafür? Sollen die Quellen getrennt voneinander stehen oder alles in chronologischer Reihenfolge hintereinander? Oder beides? Wieviele Nachrichten sollen pro Kanal dort erscheinen?
  2. Wäre eine Funktion gewünscht, die sich den letzten Besuch per Cookie merkt und dann seitdem neue Beiträge irgendwie markiert? Der Nachteil ist, dass der Cookie vom Browser abhängt, wenn ich Euch keinen Login aufbürden möchte. Das ganze funktioniert also nur auf einem Rechner korrekt, wenn man mehrere Rechner nutzt, hat man auch mehrere Gelesen-Stände. Würdet Ihr für diese Funktion in funktionierend ein vereinfachtes Login akzeptieren?
  3. Lest Ihr überhaupt meine anderen Publikationen? Wenn nein, warum nicht? Konkret geht es mir da vor allem um mein Microblog.
  4. Wer von Euch hat einen oder mehrere meiner RSS-Feeds abonniert? Wie nutzt Ihr diese Feeds? Wäre ein aggregierter Feed (also alles auf einmal in einem Feed) etwas für Euch? Wer weiß nicht, was ein Feed ist, findet das aber irgendwie interessant? Wer ignoriert RSS-Feed vollständig und ist womöglich gar genervt davon? Warum? Mich würden die Gründe interessieren.
  5. Sonstiges Feedback zu meinem Blog oder den anderen Publikationen? Zu wenig? Zu viel? Zu lange Texte? Oder gar gut so?

Also sucht Euch bitte einen Kommunikationskanal Eures Vertrauens aus und gebt mir Feedback, und bitte nicht erst bei der nächsten Party in x Monaten, sondern jetzt. Das wär super lieb. Danke.


Verkürzte URLs

16 02 2009

In Twitter und Co. ist es ja dank der Beschränkung auf 140 Zeichen pro Nachricht sehr beliebt, URLs mit verschiedenen Diensten zu verkürzen. Mich kotzt das total an, weil man erst nach dem Klick sieht, wo die Reise hin geht. Also fordere ich von allen häufig verlinkten Seiten einen eigenen URL-Verkürzer. Also etwa kurz.heise.de/ID und kurz.spiegel.de/ID. Damit, denke ich, schafft man einen Kompromiss aus halbwegs kurzen, aber eben auch halbwegs aussagekräftigen URLs für Twitter, Mail und Co.. Ich werde sowas beim nächsten Relaunch für mein Blog machen und als kurzen Permalink anbieten.


Twitter in der Sidebar = Suchmaschinenproblem

16 02 2009

Scheiße. Ich binde in der Sidebar u.a. meine letzten identi.ca Dents ein, was an sich ne schöne Sache ist. Ich tue das nicht beim Nutzer mit einem JavaScript, sondern hole die bei Bedarf alle zehn Minuten aktualisiert mit PHP ab und binde sie direkt in meine Seite ein. Soweit so gut, alle wären zufrieden, wenn nicht… ja wenn ich nicht plötzlich in unpassenden Google-Treffern ertrinken würde. Was ist hier passiert?

Google indiziert gelegentlich mein Blog und nimmt alle vorgefundenen Inhalte (ausgenommen die in der robots.txt ausgeschlossenen Kategorien- und Tagseiten) in seinen Index auf. Leider passiert das auch mit den Inhalten in der Sidebar und besonders lästig, passiert das mit meinen dort nur temporär zu findenden identi.ca Dents. Dumm ist jetzt, dass jemand bei Google etwas sucht, was dort zu finden ist und Google zeigt auf einen zufälligen Artikel in meinem Blog, wo der gesuchte Content aber sehr wahrscheinlich durch die aktuellen Dents ersetzt wurde, also nicht mehr da ist. Das will niemand, wie kann man das also lösen?

Der naheliegendste Ansatz ist simpel: Ich binde die Inhalte nicht mehr via PHP Serverseitig ein, sondern liefere ein Script, auf dass sich der Browser des Besuchers die Dents selber hole und einbaue. Google sieht keine Dents mehr, alles ist geritzt. Allerdings mag ich solche JavaScript-Lösungen gar nicht, erzeugen sie doch einen nicht geringen und überflüssigen Overhead bei identi.ca und bei meinen Besuchern.

Die nächste Idee liegt ebenfalls nahe: Das ist eigentlich nur indirekt mein Problem, viel mehr ist es eine Unzulänglichkeit von Google, relevanten Inhalt auf meinem Blog zu finden. Wie kann man Google (immer stellvertretend für alle Suchmaschinen) also dabei helfen? Zwei Wege fallen mir da ein, die aber beide bisher noch nicht (ist das so?) unterstützt werden:

  1. HTML5 bietet die praktische semantische Auszeichnung <aside>, mit der man nicht inhaltsrelevante Dinge wie die Sidebar auszeichnet. Allerdings klingt die Spezifikation eher so, dass dort Inhalte einer Randspalte hinein gehören, wie man sie etwa in Büchern findet, also durchaus relevanter Content. Semantisch hat man also nur vielleicht seine Hausaufgaben gemacht. Schaden tut es auch nicht, also werde ich das demnächst benutzen.
  2. Das Mkroformat "Robot Exclusion Profile" könnte die Lösung sein. Hierbei werden Tags analog zu den ROBOTS Meta-Angaben mit entsprechenden Klassen versehen, die Hinweise auf die Verarbeitung durch Suchmaschinen liefern. Das scheint mir der richtige Weg zu sein, allerdings unterstützt meines bisherigen Wissens auf Basis einer zehnminütigen Recherche nach noch keine Suchmaschine dieses Mikroformat (seit 2005 im Entwurfsstatus). Zu allem Unglück hat Yahoo eine abweichende Variante implementiert: class="robots-nocontent". Na vielen Dank, zwei voneinander abweichende Methoden… Und Google? Ich konnte keine Infos dazu finden und dank der zwei möglichen Methoden weiß ich jetzt nicht, welche ich vorgreifend für die Zukunft schon mal einsetzen soll. Yahoo ist bei mir ein eher seltener Referrer und ehrlich gesagt ist mir auch egal, was Yahoo so an Alleingängen macht. So hehr das Ziel von Yahoo auch ist, sind sie (zumindest in Deutschland) nicht in der Marktposition, eine neue Technik zu etablieren. Google muss das unterstützen, dann wird es praktisch relevant. Von Live Search brauche ich gar nicht zu reden, auch wenn ich von dort deutlich mehr (zumeist unpassende) Suchtreffer bekomme als von Yahoo.

Also Fazit: Außer meine Dents/Tweets per JavaScript einzubinden oder sie ganz aus meiner globalen Sidebar wegzulassen, ist mir aktuell keine praktisch relevante Möglichkeit bekannt, hierfür Google Hinweise für sinnvolle Suchtreffer zu geben und ich werde wohl weiterhin Scharen von enttäuschten Besuchern von Google bekommen.

Oder hat jemand eine gute Anregung parat?


Jetzt mit Microblogging

27 01 2009

So, nun füttere ich schon seit etwa einer Woche mein identi.ca Microblog mit mehr oder weniger geistreichen Kurznachrichten. Ich empfinde das ganze bisher als gute Ergänzung meiner Blogger-Tätigkeit nach unten hin: Schneller, rougher, direkter, unüberlegter, spontaner. Mal schauen, ob ich das langfristig mache und ob ich langfristig bei identi.ca bleibe oder doch über kurz oder lang Twitter auch zum Schreiben benutze. Verdammte Netzwerk-Effekte…

So oder so: Ihr seid herzlich eingeladen, mir bei identi.ca zu folgen. Wem das zu weit geht, der findet zur Zeit rechts in der Seitenleiste meine letzten fünf Dents (so heißen die Nachrichten bei identi.ca) als Snack, wenn man eh gerade mal hier ist.

Ich bitte weiterhin um Feedback dazu. Soll ich erklären, was da geht? Ist das dumm oder schlau? Liest das überhaupt irgend jemand?

Ich bin übrigens noch nicht im Bett, weil ich das Twitter-PlugIn von Serendipity erst mal fit für identi.ca machen musste. Dabei muss ich in fünf Stunden wieder raus, ich Idiot. Mal schauen, ob meine Änderungen auch ins Repository übernommen werden und so anderen zugute kommen.