Weblog · Seite 3

Neue Blogrolle

Ich habe mal die Blogrolle überarbeitet – war ja schon eine ganze Weile nicht mehr aktuell. Anstelle die Links aus der Datenbank zu holen wird nun mein OPML-File aus NetNewsWire ausgelesen und die Feeds aus den beiden „Blog“-Outlines werden als Linkliste benutzt.

Und ich sehe das ebenso wie Dave Winer: Vor Twitter/X & Co. war es der gängige Weg Verbindungen herzustellen und darüberhinaus eine Quelle für Empfehlungen um neue Blogs kennenzulernen.

Tote Links und SEO-Bullshit

Vor ein paar Tagen habe ich angefangen, mir die bis zu 20 Jahre alten Einträge im Blog anzuschauen und zu prüfen, wohin die Links noch führen.

Es ist ein wenig ernüchternd und eher selten, dass Links noch zu ihrem ursprünglichen Ziel führen. Entweder ist die Domain ganz verschwunden, die Seite wird mit einem 404 einfach nur nicht mehr gefunden, oder – und das finde ich sehr unangenehm – der Link verweist nun auf einen neuen Inhalt, der entweder nur begrenzt oder nichts mit dem ursprünglichen Inhalt zu tun hat. Im schlimmsten Fall ist es ein Ad-Hub oder sonst eine dumme SEO-Content-Falle für Bots. Ganz eklig dabei: Kryptowährung und NFT SEO-Bullshit.

Alter Propeller! Und das sind echt viele... Also Bullshit und alte Einträge, meine ich.

Auch eine Art aufzuräumen

Phew… Aus Unachtsamkeit habe ich gerade die Datenbanktabelle mit den Einträgen meines Blogs gelöscht. Aber da ich zZ. etwas am Backend des Blogs herumbastele, hatte ich ein drei Tage altes Backup. Die jüngsten drei Einträge, die nicht im Backup waren, konnte ich aus dem Cache rekonstruieren.

Drüben gibt es jedoch keinen Cache, da fehlen nun eine Hand voll Einträge.

Ein ziemlicher Schreck im ersten Augenblick!

Mein Blog hat Geburtstag

Mein Blog wird Heute 22 Jahre.

Traditionellerweise gibt einen kleinen Rückblick auf das "Leben" meine kleinen Blogs im vorangegangene Jahr.

Der Baustellenreport hat ein Ende gefunden, da die Bauarbeiten an der Hattinger Straße nun abgeschlossen sind.

Inhaltlich gab es eigentlich weiter keine großen Veränderungen. Fotos und ein wenig Gerede über Serien, Filme und was mir in den Sinn kommt. Zwischendurch ein paar unkommentierte Links.

Balkendiagramm mit Einträgen je Monat von 01/2022 bis 08/2023

Das Tagging der Posts ist wieder ein wenig weiter vervollständigt worden. Aber es fühlt sich immer noch an wie ein Tropfen auf dem heißen Stein.

Weniger relevante Elemente habe ich auf den statischen Seiten mit web components umgesetzt.

Kommentare via Twitter gibt es leider nicht mehr, da die API nun was kostet. Und weil ich Twitter auch nicht mehr nutzen mag. Auf eine vergleichbare Integration über Mastodon hatte ich noch keine Lust, wird aber früher oder später kommen.

Nach 22 Jahren würde ich immernoch sagen, ein Blog auf eigenem Webspace lohnt. Irgendwelche Social Media Dinger kommen und gehen (besonders Twitter geht gerade) aber ein Blog bleibt.

Wenn Du also irgendwas zu erzählen hast oder irgendeinen kreativen Output hast, gib Deinem Schaffen ein ordentliches Zuhause. Ein Blog.

Sharing Web Component

Nachdem ich Martin Schneiders Artikel Tinkering with Web Components gelesen habe, dachte ich, das wäre ein töfter Ersatz für die „Per E-Mail antworten“ Funktion. Leicht abgewandelt wird auch der „Per E-Mail antworten“-Link über einen Share Button über eine Web Component angezeigt.

Und da ich gerade dabei war, gibt es noch drei weitere Web Components:

  • Der Now Playing Schnipsel rechts oben, der meinen gerade gecsrobbelten Titel anzeigt.
  • Die Vor-/Zurücknavigation unter den Posts
  • Die am häufigsten gespielten Alben auf der now-Seite

Journal-Tags aus Exif Daten

Seit einer Weile speichere ich auch die EXIF-Daten der Fotos in der Datenbank, und nun habe ich mir mal die Zeit genommen und für jeden Post mit einem Foto, das die Informationen hat, Tags für Kamera und Objektiv zu generieren. Das fängt leider erst im Oktober 2021 an. Das sind nicht einmal 2 Jahre von insgesamt 22 Jahren.

Ich bin mir nicht sicher, ob ich den Rest manuell taggen möchte...

Hier sind auf jeden Fall die nigelnagelneuen Tags:

Und natürlicherweise auch in der Wolke zu finden.

SQL zum Erstellen der Relationen zwischen Tag und Post ist dank JSON_EXTRACT relativ einfach:

REPLACE INTO journal_entry_tag (entryId, tagId) 
  SELECT DISTINCT je.id, 494  
  FROM journal_image ji 
  INNER JOIN journal_entry je ON je.content LIKE concat('%',ji.url,'%') 
  WHERE REPLACE(JSON_EXTRACT(ji.exif, '$.lens'),'"','') LIKE 'Zeiss Planar%'; 
-- wobei 494 die Id vom Tag "Zeiss Planar T* 1.4/50 ZF.2" ist 

Da soll mal jemand sagen: ein Blog wäre kein Hobby ;)

Ein Webring sie alle zu finden

UberBlogr Webring - Ein neuer Webring, das weckt ja schon beinahe nostalgische Gefühle.

UberBlogr ist ein Webring für Menschen, die seit mindestens 3 Jahren bloggen und dabei nicht vorrangig einem kommerziellen oder beruflichen Ziel folgen. Wie oftmals im 'alten Web' von Anfang der 2000er Jahre drehen sich die Mitglieds-Seiten des UberBlogr Webrings nur um Privates, die eigene Meinung oder das eigene Hobby.

In den vergangenen Jahren – oder schon fast Jahrzehnten – kann ich mich kaum erinnern, mal über einen gestolpert zu sein. Mal abgesehen vom Indiewebring.

Früher waren Webringe mal 'ne dicke Nummer. Noch vor der Zeit der Weblogs, als man in den späten 90er Jahren oder um die Jahrtausendwende mit spärlichen Mitteln eine private Homepage zusammengetackert hat.

Bei diesem Ring dreht sich alles um persönliche Blogs und der Ring sehnt sich nach neuen Mitgliedern.

Wieviel Spaß ein kleiner Query doch machen kann.

Wieviel Spaß ein kleiner Query doch machen kann. Auf den Tag-Seiten gibt es im Kopf nun einer Liste verwandter Tags. Was mich allerdings immer Wieder daran erinnert, dass die Tags aufgrund des Alters vom Blog etwas ungepflegt sind. Aber die langen Winterabende werden kommen.

SELECT t.*, COUNT(*) AS anz
FROM journal_tag t 
LEFT JOIN journal_entry_tag et ON et.tagId = t.id 
LEFT JOIN journal_entry e ON et.entryId = e.id
WHERE 
  et.entryId IN (
    SELECT entryId FROM journal_entry_tag WHERE tagId = :tagid
  ) AND et.tagId != :tagid AND t.scheme = 'tag'
  AND e.status = 'published'
GROUP BY t.id 
-- HAVING anz > 1 Wenn man mag
ORDER by anz DESC;

Frühjahrsputz, Teil 2

So weit - so aufgeräumt.

Die Befriedigung jQuery zu entsorgen war noch ungleich viel größer als die CSS Datei neu zu schreiben und die Templates aufzuräumen. Ich weiss nicht wie viele hundert KB an Tinnef damit wegfällt. Es schüttelt mich nur noch mehr, wenn ich ein du -sh auf einen nodes_modules-Order mache.

Das CSS zur Darstellung der Eintrage aus Wordpress Zeiten macht mir noch leichte Kopfschmerzen. Das wird sich wohl erstmal nicht vermeiden lassen. Ich hätte nie Wordpress - oder viel mehr den Gutenberg Blockeditor - benutzen dürfen...

Frühjahrsputz

Ja, ich bin ein wenig früh dran. Ich habe im Blog mal angefangen aufzuräumen.

Angefangen habe ich mit CSS und Templates. Beides ausgemistet und den CSS Code auf gut ein Drittel reduziert. Die Datei ist in den letzten Monaten unkontrollierte gewachsen und hatte zuletzt beinahe 2000 Zeilen. Das meiste davon ist natürlich unbenutzt gewesen. Relikte alter Feature oder Unterseiten, die es schon lange nicht mehr gibt. Neu schreiben war dann die beste Lösung. Hier und da gibt es bestimmt noch Stellen, die so aussehen als sollten sie nicht so aussehen wie sie aussehen.

Abhängig vom Wetter werde ich mir als nächstes das Javascript der Seite vorknöpfen und versuchen auf jQuery zu verzichten. Das gibt es nur noch für die Lightbox der Bilder und die Last.fm Einblendung. Ich denke, das wird auch mit VanillaJS ganz gut gehen.