<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Web auf cbrueggenolte.de</title>
    <link>https://cbrueggenolte.de/tags/web/</link>
    <description>Neueste Beiträge in Web auf cbrueggenolte.de</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>de-DE</language>
    <managingEditor>96ca5227@cbrueggenolte.de (cbrueggenolte.de)</managingEditor>
    <webMaster>96ca5227@cbrueggenolte.de (cbrueggenolte.de)</webMaster>
    <copyright>2018-2026 cbrueggenolte</copyright>
    <lastBuildDate>Mon, 22 Dec 2025 00:00:00 +0100</lastBuildDate>
    <atom:link href="https://cbrueggenolte.de/tags/web/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>disable-javascript.org</title>
      <link>https://cbrueggenolte.de/disable-javascript-org/</link>
      <pubDate>Mon, 22 Dec 2025 00:00:00 +0100</pubDate><author>96ca5227@cbrueggenolte.de (cbrueggenolte.de)</author>
      <guid>https://cbrueggenolte.de/disable-javascript-org/</guid>
      <description>&lt;p&gt;Kürzlich bin ich über die Website von Marius auf &lt;strong&gt;disable-javascript.org&lt;/strong&gt; gestoßen:&#xA;&lt;a href=&#34;https://%e3%83%9e%e3%83%aa%e3%82%a6%e3%82%b9.com/disable-javascript-org/&#34;&gt;https://マリウス.com/disable-javascript-org/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Die Idee war sofort nachvollziehbar.&#xA;Die Initiative benennt strukturelle Probleme des heutigen, stark JavaScript-getriebenen Webs&#xA;und zeigt auf sachliche, praxisnahe Weise,&#xA;wie sich JavaScript standardmäßig deaktivieren lässt –&#xA;um es anschließend gezielt dort zu aktivieren,&#xA;wo tatsächlich Vertrauen besteht.&lt;/p&gt;&#xA;&lt;p&gt;Die Reaktionen auf die Einführung des Tab-Verhaltens waren aufschlussreich.&#xA;Neben einigen humorvollen Kommentaren zeigte sich auch deutliche Kritik,&#xA;vor allem aus Entwicklerkreisen.&#xA;Der Ansatz wurde als unnötig, feindselig oder sogar extrem dargestellt.&#xA;Häufig ging es dabei weniger um den konkreten Vorschlag&#xA;als um die grundsätzliche Frage,&#xA;ob es überhaupt sinnvoll oder praktikabel sei,&#xA;JavaScript zu deaktivieren.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Kürzlich bin ich über die Website von Marius auf <strong>disable-javascript.org</strong> gestoßen:
<a href="https://%e3%83%9e%e3%83%aa%e3%82%a6%e3%82%b9.com/disable-javascript-org/">https://マリウス.com/disable-javascript-org/</a></p>
<p>Die Idee war sofort nachvollziehbar.
Die Initiative benennt strukturelle Probleme des heutigen, stark JavaScript-getriebenen Webs
und zeigt auf sachliche, praxisnahe Weise,
wie sich JavaScript standardmäßig deaktivieren lässt –
um es anschließend gezielt dort zu aktivieren,
wo tatsächlich Vertrauen besteht.</p>
<p>Die Reaktionen auf die Einführung des Tab-Verhaltens waren aufschlussreich.
Neben einigen humorvollen Kommentaren zeigte sich auch deutliche Kritik,
vor allem aus Entwicklerkreisen.
Der Ansatz wurde als unnötig, feindselig oder sogar extrem dargestellt.
Häufig ging es dabei weniger um den konkreten Vorschlag
als um die grundsätzliche Frage,
ob es überhaupt sinnvoll oder praktikabel sei,
JavaScript zu deaktivieren.</p>
<p>Damit wird der eigentliche Punkt verfehlt.
Und hier stimme ich Marius ausdrücklich zu:
Es geht nicht darum, JavaScript grundsätzlich abzulehnen.
Es geht darum,
nicht blind beliebigen Code auszuführen –
insbesondere nicht aus unbekannten Quellen.
Etablierte Plattformen mögen ein gewisses Maß an Vertrauen verdienen.
Zufällige, unbekannte Seiten tun das nicht.
Beides gleichzubehandeln
ist kein Komfortmerkmal,
sondern ein Sicherheitsproblem.</p>
<p>Was mich dabei besonders irritiert,
ist, wie viele Einwände offenbar daraus entstehen,
dass der Text schlicht nicht gelesen wird.
Die Empfehlung ist klar formuliert:
JavaScript standardmäßig deaktivieren
und dann selektiv dort aktivieren,
wo eine Vertrauensbasis besteht.
Dennoch wird häufig gegen eine Haltung argumentiert,
die so nie vertreten wurde.
Das wirkt weniger wie eine fachliche Debatte
und mehr wie ein Symptom
eines zunehmend oberflächlichen Diskurses.</p>
<p>Zur Klarstellung:
Ich nutze selbst JavaScript.
Auf Seiten mit Code aktiviere ich es bewusst,
etwa um Kopierfunktionen
oder kleine Komfortverbesserungen bereitzustellen.
Genau dieses Verständnis steht hier im Mittelpunkt:
JavaScript als gezielte Erweiterung –
nicht als Voraussetzung,
um Inhalte überhaupt konsumieren zu können.</p>
<p>Der Vorwurf eines „militanten Techno-Minimalismus“
greift daher ins Leere.
Diese Haltung ist weder nostalgisch
noch fortschrittsfeindlich.
Sie stellt vielmehr die Frage
nach sinnvollen Standards.
Inhalte sollten möglichst ohne JavaScript zugänglich bleiben,
mit Skripten als bewusster Ergänzung –
nicht als verpflichtender Ausführungsschicht,
die einfache Seiten
in fragile Laufzeitumgebungen verwandelt.</p>
<p>Eine solche Position als radikal zu bezeichnen,
sagt letztlich mehr
über den Zustand des heutigen Webs aus
als über das Argument selbst.
Skepsis gegenüber der standardmäßigen Ausführung
unvertrauenswürdigen Codes
sollte keine Provokation sein.
Sie sollte selbstverständlich sein.</p>
<p>Genau deshalb halte ich <strong>disable-javascript.org</strong> für relevant.
Die Seite bleibt nicht bei abstrakter Kritik stehen,
sondern macht konkrete Vorschläge:
Sie benennt reale Risiken,
zeigt praktikable Wege auf
und wirbt für ein ausgewogenes Verhältnis
zwischen Sicherheit,
Nutzbarkeit
und Selbstbestimmung.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Mein Blog erfindet sich neu</title>
      <link>https://cbrueggenolte.de/mein-blog-erfindet-sich-neu/</link>
      <pubDate>Mon, 31 Mar 2025 00:00:00 +0200</pubDate><author>96ca5227@cbrueggenolte.de (cbrueggenolte.de)</author>
      <guid>https://cbrueggenolte.de/mein-blog-erfindet-sich-neu/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://cbrueggenolte.de/mein-blog-erfindet-sich-neu/2025-03-31-cover_hu_a24791c1a0acbc9c.webp&#34;&gt;&lt;img class=&#34;content-image&#34; src=&#34;https://cbrueggenolte.de/mein-blog-erfindet-sich-neu/2025-03-31-cover_hu_4f98524d30c99655.webp&#34; alt=&#34;A new blog software comes to life- Astro Logo&#34; loading=&#34;lazy&#34; width=&#34;1440&#34; height=&#34;754&#34; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Ich habe einige Zeit damit verbracht, meine Blog-Software komplett zu überarbeiten.&#xA;Anstelle von Python-Flask und Hugo verwende ich jetzt &lt;a href=&#34;https://astro.build&#34;&gt;Astro&lt;/a&gt;-&#xA;und ich könnte nicht zufriedener mit diesem Wechsel sein.&lt;/p&gt;&#xA;&lt;h2 id=&#34;warum-die-änderung&#34;&gt;Warum die Änderung?&lt;/h2&gt;&#xA;&lt;p&gt;Mein altes Python-Flask-Setup hat lange zuverlässig funktioniert, bis es irgendwann an seine Grenzen stieß.&#xA;Ich will mich für meinen zukünftigen Job mehr mit moderner Webentwicklung beschäftigen&#xA;und nehme deshalb gerade am &lt;a href=&#34;https://bootcamp.dev/&#34;&gt;Full-Stack Web Development Bootcamp&lt;/a&gt; teil.&#xA;Es schien der perfekte Moment zu sein, etwas Neues auszuprobieren&#xA;und vielleicht auch die unzähligen Stunden zu rechtfertigen,&#xA;die ich bisher in JavaScript-Tutorials investiert habe.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p><a href="/mein-blog-erfindet-sich-neu/2025-03-31-cover_hu_a24791c1a0acbc9c.webp"><img class="content-image" src="/mein-blog-erfindet-sich-neu/2025-03-31-cover_hu_4f98524d30c99655.webp" alt="A new blog software comes to life- Astro Logo" loading="lazy" width="1440" height="754" /></a></p>
<p>Ich habe einige Zeit damit verbracht, meine Blog-Software komplett zu überarbeiten.
Anstelle von Python-Flask und Hugo verwende ich jetzt <a href="https://astro.build">Astro</a>-
und ich könnte nicht zufriedener mit diesem Wechsel sein.</p>
<h2 id="warum-die-änderung">Warum die Änderung?</h2>
<p>Mein altes Python-Flask-Setup hat lange zuverlässig funktioniert, bis es irgendwann an seine Grenzen stieß.
Ich will mich für meinen zukünftigen Job mehr mit moderner Webentwicklung beschäftigen
und nehme deshalb gerade am <a href="https://bootcamp.dev/">Full-Stack Web Development Bootcamp</a> teil.
Es schien der perfekte Moment zu sein, etwas Neues auszuprobieren
und vielleicht auch die unzähligen Stunden zu rechtfertigen,
die ich bisher in JavaScript-Tutorials investiert habe.</p>
<h2 id="neu-anfangen-mit-astro">Neu anfangen mit Astro</h2>
<p>Also habe ich beschlossen, nochmal bei Null anzufangen,
auch weil es mir einfach Spaß macht,
Dinge einzustampfen und immer mal wieder etwas Neues auszuprobieren.
Ich startete mit der Minimalvorlage von Astro
und fügte dann Baustein für Baustein hinzu,
fast so, als würde ich etwas aus LEGO zusammenbauen.
Die Einrichtung war überraschend einfach.
Innerhalb weniger Minuten lief eine kleine Website.
Ich entdecke immer noch neue Möglichkeiten mit Astro
und bin jetzt schon begeistert, was damit alles machbar ist.</p>
<h2 id="warum-astro">Warum Astro?</h2>
<p>Was mich an Astro begeistert, ist die starke Performance
und die Art, wie alles modular aufgebaut ist.
Dank der sogenannten „partiellen Hydrierung“ lädt der Blog jetzt schneller als je zuvor.
Markdown-Unterstützung ist direkt mit an Bord, super praktisch fürs Schreiben,
und die vielen Community-Integrations haben mir echt viel Zeit gespart
(auch wenn ich diese Zeit sofort wieder damit verbracht habe, ewig über Farbschemata zu grübeln).</p>
<h2 id="lernkurve">Lernkurve</h2>
<p>Bis vor Kurzem endeten meine JavaScript-Kenntnisse bei <code>alert('Hello World')</code>.
Der Umstieg auf dieses neue System war also&hellip; sagen wir mal: ziemlich spannend.
Gerade das Thema asynchrone Programmierung hat mich am Anfang ganz schön ins Schwitzen gebracht.
Aber jeden Tag verstehe ich ein bisschen mehr und ja,
mein Suchverlauf besteht inzwischen zu 90 % aus Einträgen wie „JavaScript Promises einfach erklärt für Fünfjährige“.</p>
<h2 id="migration-im-gange">Migration im Gange</h2>
<p>Ich bin gerade dabei, meine alten Blogbeiträge
nach und nach ins neue System zu übertragen.
Einen festen Zeitplan habe ich nicht (ehrlich gesagt: das wird dauern, so lange es eben dauert),
aber ich nehme mir vor, den Großteil bis Sommer 2025 fertig zu haben,
oder eben, sobald die Motivation wieder vorbeischaut.</p>
<h2 id="kurz-gesagt">Kurz gesagt</h2>
<p>Der Wechsel zu Astro bedeutet für mich mehr als nur ein technisches Update.
Es fühlt sich auch wie ein kleiner Schritt nach vorne auf meinem beruflichen Weg an.
Vom selbstgebauten Python-Tool (ja, das lief viel zu lange) über Hugo
bis hin zu einem modernen JavaScript-Framework.
Das passt perfekt zu dem, wo ich als Fullstack-Entwickler hinmöchte.</p>
<p>Und ja, ich gebe zu: Ich neige dazu, Dinge komplizierter zu machen, als sie sein müssten.</p>
<p>Auch wenn das Ganze seine Zeit braucht,
macht der Umstieg die Pflege und Weiterentwicklung des Blogs einfach viel angenehmer.
Ich werde regelmäßig neue Inhalte hinzufügen und die Seite Stück für Stück verbessern.
Schaue also gerne wieder vorbei und wenn du Feedback hast, immer her damit!
(Konstruktive Kritik nehme ich mit offenen Armen an, harsches Urteil wird still registriert.)</p>
<p>Dieser Blog wächst mit meinen Erfahrungen mit,
dokumentiert neue Ideen und technische Entwicklungen.
In der schnelllebigen Welt der Webentwicklung
ist ein kompletter Neustart manchmal einfach die beste Lösung
oder zumindest die beste Ausrede für nächtelanges Coden.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Microblog-Refactoring und bessere Dateistrukturen</title>
      <link>https://cbrueggenolte.de/microblog-refactoring-und-bessere-dateistrukturen/</link>
      <pubDate>Thu, 29 Jul 2021 21:30:09 +0000</pubDate><author>96ca5227@cbrueggenolte.de (cbrueggenolte.de)</author>
      <guid>https://cbrueggenolte.de/microblog-refactoring-und-bessere-dateistrukturen/</guid>
      <description>&lt;p&gt;Ich habe mich heute mal hingesetzt und den Microblog überarbeitet. Dadurch das ich mit ganz vielen Dateien und einer etwas komplizierten Ordner Struktur angefangen habe, wurde das irgendwann ziemlich aufwendig, neue Beiträge zu erstellen.&lt;/p&gt;&#xA;&lt;p&gt;Erst habe ich versucht alle Beiträge in einer Datei zu sammeln. Eine Datei pro Jahr sollte ausreichen. Dazu habe ich ein kleines Python Script geschrieben.&lt;/p&gt;&#xA;&lt;p&gt;Alle Beiträge waren nur in einer Datei und nach ein wenig hin und her und umformatieren, hatte ich auch ein passables Ergebnis.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Ich habe mich heute mal hingesetzt und den Microblog überarbeitet. Dadurch das ich mit ganz vielen Dateien und einer etwas komplizierten Ordner Struktur angefangen habe, wurde das irgendwann ziemlich aufwendig, neue Beiträge zu erstellen.</p>
<p>Erst habe ich versucht alle Beiträge in einer Datei zu sammeln. Eine Datei pro Jahr sollte ausreichen. Dazu habe ich ein kleines Python Script geschrieben.</p>
<p>Alle Beiträge waren nur in einer Datei und nach ein wenig hin und her und umformatieren, hatte ich auch ein passables Ergebnis.</p>
<p>Das Template für den Blog sah dann so aus:</p>
<p>Auch wenn die Änderungen auf den ersten Blick ganz gut ausgesehen haben, so hat es leider nicht mehr mit dem RSS-Feed funktioniert. Da alle Beiträge in einer Datei sind, ist der RSS Feed viel zu kurz und ich möchte das niemandem zumuten, ständig den gesamten Feed zu laden. Also musste ich eine andere Lösung finden.</p>
<p>Nach einigem Hin und Her bin ich dann doch wieder bei einzelnen Dateien gelandet. Dieses Mal allerdings ohne <a href="https://gohugo.io/content-management/front-matter/">Frontmatter</a>. Der Dateinamen, bestehend aus Jahreszahl, einem Punkt und einer fortlaufenden Nummer.</p>
<p>Das Python Script habe ich dazu ein wenig umgeschrieben und erzeugt nun Dateien nach dem oben beschriebenen Schema.</p>
<p>Das dazugehörige Template <code>list.html</code> musste ich ebenfalls ändern und sieht nun so aus:</p>
<p>Der obere Teil (Zeile 2-7) transkludiert die Inhalte der <code>_index.md</code>-Datei. Dabei wird auch die Zahl im Dokument durch einen Link ersetzt.</p>
<p>Ab Zeile 9 werden dann alle vorhandenen Dateien verarbeitet. Der Dateiname wir vorne abgeschnitten und die führenden Nullen werden ebenfalls entfernt, um die Zahl für die Webseite zu erzeugen (Zeile 10). Danach wird ein Link erzeugt (Zeile 11) der anschließend vorne vor den Beitrag gesetzt (Zeile 12) wird.</p>
<p>Der erzeugte Link mit der Nummer kann benutzt werden, um auf den Beitrag zu verlinken oder diesen Direkt anzuspringen. Sprich die Zahl kann als Sprungmarke genutzt werden, um direkt zum Eintrag im Microblog zu springen. Zum Beispiel zum Eintrag #55.</p>
<p>Im großen ganzen kann man sagen, dass ich mit all den Änderungen die Dateistruktur vereinfacht und die Anzeige (zumindest für mich) verbessert habe.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Neustart mit Hugo und digitale Ordnung</title>
      <link>https://cbrueggenolte.de/neustart-mit-hugo-und-digitale-ordnung/</link>
      <pubDate>Sun, 18 Apr 2021 02:00:00 +0000</pubDate><author>96ca5227@cbrueggenolte.de (cbrueggenolte.de)</author>
      <guid>https://cbrueggenolte.de/neustart-mit-hugo-und-digitale-ordnung/</guid>
      <description>&lt;p&gt;Ein paar Wochen sind vergangen, seit dem ich den letzten Beitrag geschrieben habe.&#xA;Auf der einen Seite war ich einfach zu faul, auf der anderen Seite war ich einfach Internet müde.&lt;/p&gt;&#xA;&lt;p&gt;Eigentlich wollte ich ja auch schon lange den Garten mit dem Hochdruckreiniger sauber machen,&#xA;Blumen bestellen oder mit dem Rad eine Runde zum Strand fahren.&#xA;Leider ist es für all das einfach noch viel zu kalt.&lt;/p&gt;&#xA;&lt;p&gt;Nichtsdestotrotz habe ich dann aber doch an dem ein oder anderen Projekt gearbeitet.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Ein paar Wochen sind vergangen, seit dem ich den letzten Beitrag geschrieben habe.
Auf der einen Seite war ich einfach zu faul, auf der anderen Seite war ich einfach Internet müde.</p>
<p>Eigentlich wollte ich ja auch schon lange den Garten mit dem Hochdruckreiniger sauber machen,
Blumen bestellen oder mit dem Rad eine Runde zum Strand fahren.
Leider ist es für all das einfach noch viel zu kalt.</p>
<p>Nichtsdestotrotz habe ich dann aber doch an dem ein oder anderen Projekt gearbeitet.</p>
<h2 id="autopflege">Autopflege</h2>
<p>Seit langem habe ich mal wieder meinem Auto ein wenig Pflege gegönnt.
Erst innen saugen und Polsterpflege.
Danach von außen mit dem Hochdruckreiniger reinigen,
mit Schaum einsprühen und anschließend mit vielen Waschtüchern abwaschen.
Nach dem Abtrocknen dann noch mit <a href="https://www.sonax.de/pflegeprodukte/profiline/profiline-brilliant-shine-detailer/profiline-brilliant-shine-detailer-5-l">Sonax Brilliant Shine Detailer</a> auf Glanz gebracht.</p>
<p>Auch wenn ich die Sonax Produkte eigentlich nicht so gut finde, ist das Sonax BSD wirklich gut.
Wenn man es 1:1 mit Wasser verdünnt, hält es doppelt so lange und man kann es besser verteilen.
Es liegt wie eine leichte Schutzschicht auf dem Lack die verhindert, dass Dreck und Regen haften bleiben.
Also ein wenig zumindest. 😄</p>
<h2 id="github">Github</h2>
<p>Nebenher habe ich meinem <a href="https://github.com/cblte">Github Repository</a> ebenfalls eine Schönheitskur verpasst.</p>
<p>Zum einen kann man ja jetzt ein Repo mit dem Namen des Benutzers anlegen,
welches dann in der Profilansicht angezeigt wird.
So sieht das schon viel hübscher aus, wenn man das Profil eines anderen besucht.</p>
<p>Zum anderen habe ich mich schlau gemacht über Webhooks und Github-Actions und überhaupt Git so im Allgemeinen.
Denn das hat auch was mit dem großen Umbau der Webseite zu tun.</p>
<h2 id="der-wechsel-zu-hugo">Der Wechsel zu Hugo</h2>
<p>Als Erstes habe ich mich wieder einmal dazu entschlossen meine Webseiten zu überarbeiten.
Das hat leider was damit zu tun,
dass die aktuellen Updates von Ghost so überhaupt nicht meinem Geschmack entsprechen.</p>
<h3 id="ghost-hat-sich-nicht-zum-guten-verbessert">Ghost hat sich nicht zum guten verbessert</h3>
<p>In Version 4 haben sie in Ghost viele Dinge eingebaut,
um den Blog oder die Website zu monetarisieren.
Da ich das alles nicht brauche und auch nicht haben will,
es sich auch nicht abschalten lässt,
werde ich mich nach nur kurzer Zeit wieder von Ghost trennen müssen.
Doch was sind die Alternativen? Wieder einen Wordpress-Blog aufsetzen? Noch mal Bludit ausprobieren?
Oder, oder, oder? Es gibt so viele Dinge, die man machen kann.
Da ich aber ein Mensch bin der es gerne ordentlich und aufgeräumt hat,
habe ich mich langem hin und her für Hugo entschieden.</p>
<h3 id="hugo-ist-einfach-schnell-und-komfortabel-zugleich">Hugo ist einfach, schnell und komfortabel zugleich</h3>
<p><a href="https://gohugo.io">Hugo</a> ist ein Generator für statische Webseiten.
Man nehmen einen ganzen Haufen an Texten und Dateien,
ein Theme wie die Seite aussehen soll und jagt das durch Hugo durch.
Am Ende kommen dann viele statische HTML Seiten heraus die man ohne großen Aufwand auf jedem Webserver hosten kann.</p>
<p><em>Hugo</em> ist für mich halt super, weil ich genau weiß, wo was gespeichert wird,
wie ich was wo ablegen muss damit es funktioniert
und bei einem Update passiert halt kein Schnick-Schnack, den ich nicht beeinflussen kann.
Hinzu kommt, dass statische Seiten nicht gehackt werden können.
Wie auch? Es gibt kein Login-Formular, kein Script das irgendetwas bei Seitenaufruf generiert.</p>
<p>Die Installation von Hugo ist ebenfalls super einfach.
Du lädst dir nur das passende Binary für dein Betriebssystem herunter.
Fertig! Kein umständliches Aufsetzen von Webserver und irgendwelchen Skriptsprachen.
Wenn man dann eine neue Seite erstellt hat, kann man quasi sofort loslegen.
Hugo selbst lässt sich sogar dazu benutzen, um die generierten Seiten auszuliefern.
Praktisch, oder?</p>
<p>Im Vergleich: Ghost 3.42.1 belegt aktuell knapp <strong>450 MB Speicherplatz</strong>.
Im Gegensatz dazu hat das Binary von Hugo knapp 50 MB.
Mit dem Sourcecode und der komplett generierte Webseite, inkl. Bilder,
kommen noch mal knapp 30 MB obendrauf.
450MB gegenüber 80 MB. Ist schon mal ein krasser Unterschied.</p>
<p>Backups sind ebenfalls super einfach.
Aller Sourcecode liegt in einem Github-Repository und die Beiträge und Seiten liegen als Markdown-Text vor.
Einfach ein Backup vom Verzeichnis machen und gut ist.
Ich habe jetzt auch das Hugo-Binary mit ins Backup gepackt,
so kann ich die Webseite auch später noch generieren, wenn ich möchte.</p>
<p>Hugo ist außerdem schnell, verdammt schnell sogar.
In meinem Test habe ich meine exportierten Blogbeiträge einfach 10 mal in das <code>Content</code>-Verzeichnis kopiert.
Um aus den über 1800 Dateien eine voll funktionierende Webseite mit Tags,
Archive, Seiten-Navigation und mehr zu generieren, braucht Hugo keine 3 Sekunden.</p>
<p>Hugo benötigt nur ein paar Sekunden für die Webseiten Generierung### Ich mag es gerne einfach</p>
<p>Für Ghost habe ich lange nach einem einfachen Design gesucht.
Doch nie wirklich eines gefunden welches mich überzeugen konnte,
weshalb ich dann beim Standard-Design / -Theme geblieben bin.
Wirklich gefallen hat es mir nie.
Doch das Aufsetzen einer Entwicklungsumgebung für Ghost,
um ein Theme zu schreiben, erschien mir zu kompliziert.</p>
<p>Und weil ich es auch gerne einfach mag,
habe ich mich für das <a href="https://github.com/janraasch/hugo-bearblog/">Bear-Theme</a> entschieden
und es ein wenig angepasst.
Die eigentliche Blog-Übersicht ist nun das Archiv
und die Blog-Übersicht zeigt Ausschnitte der fünf letzten Beiträge.
Dazu gibt es eine Navigation am Ende um zu vorherigen Seiten zu springen.
Ob das so bleibt weiß ich noch nicht,
vielleicht kommt der Archiv-Link auch da unten hin,
um das Menü nicht zu sehr zu überladen.</p>
<h3 id="bisher-migrierter-content">Bisher migrierter Content</h3>
<p>Der Export aus Ghost und die Umwandlung in einzelnen Textdateien ist schon erfolgt.
Dennoch muss ich jeden Beitrag einmal anpacken und anpassen,
da die Bookmark-Cards auf Ghost nicht in Hugo funktionieren.
Zumindest nicht so, als dass man den Text ohne weiteres übernehmen kann.
Die Bilder sind ebenfalls exportiert und warten darauf wieder eingebunden zu werden.</p>
<p>Die Seiten für die Blogroll und die Podcasts habe ich überarbeitet und eine weitere Seite für Ressourcen hinzugefügt.
Das sind von mir fast täglich genutzte Seiten.
Da ich an vielen Rechnern und mit vielen Browsern unterwegs bin,
habe ich relativ wenig Favoriten gespeichert
und nutze dafür nun die Ressourcen-Seite und meinen <a href="https://bm.zn80.net">Bookmark-Manager shaarli</a>.</p>
<h3 id="was-nicht-so-toll-ist">Was nicht so toll ist</h3>
<p>Was nicht so toll ist, weil ich es aber gerne strukturiert und sauber haben will,
dass sich die URLs von einigen Beiträgen ändern werden.
Das ist doof, aber ich versuche mit ein paar Umleitungen (re-directs) so viel wie möglich abzufangen.</p>
<h3 id="was-ist-das-für-ein-gesicht-im-titel">Was ist das für ein Gesicht im Titel?</h3>
<p>Das Gesicht im Titel ist übrigens ein sogenanntes <a href="https://www.mimikama.at/aktuelles/emojis-fr-fortgeschrittene-kaomojis-teil-1-hilfecenter/"><em>kaomoji</em></a>.</p>
<blockquote>
<p>Ein Kaomoji ist eine Kombination von zwei japanischen Wörtern. <em>kao</em> =&gt; Gesicht und <em>mojo</em> =&gt; Charakter.</p>
</blockquote>
<p>Weil ich (meistens) ein fröhlicher und aufgeschlossener Mensch bin,
dachte ich mir, ich begrüße meine Besucher mit einem lachenden und winkendem Gesicht.
Ich hoffe, es bringt dir ein Lächeln ins Gesicht.</p>
<h3 id="fazit">Fazit</h3>
<p>Im groben Ganzen bin ich mit Hugo super zufrieden.
Ich habe viel gelernt in den letzten zwei Wochen und einige neue Tools und Services kennengelernt.</p>
<p>Es gibt super viele <a href="https://jamstack.org/generators/">statische Seitengeneratoren</a>,
ich habe gelernt wie man mit <a href="https://docs.github.com/en/github-ae@latest/developers/webhooks-and-events/webhooks">Github und Webhooks</a>
automatisiert die Webseite bauen kann,
über <a href="https://docs.github.com/en/github-ae@latest/actions/guides/setting-up-continuous-integration-using-workflow-templates">Continuous-Integration</a>
mit <a href="https://travis-ci.com/">Travis-CI</a>
und <a href="https://www.netlify.com/">Netlify</a> und vieles mehr.</p>
<p>Viel gelernt habe ich auch über <a href="https://www.git-scm.com">git</a> selber.
<em>Best Practices</em> gelesen und mir einige Videos angeschaut,
wie andere Nutzer verschiedene Probleme lösen oder gelöst haben.
Das hilft mir nicht nur bei meinen privaten Projekten,
sondern auch auf der Arbeit wo wir bald von Mercurial auf Git umsteigen werden.</p>
<h2 id="sonst-noch-was">Sonst noch was?</h2>
<p>Ja, da gibt es tatsächlich noch was.</p>
<p>Eigentlich wollte ich ja auch schon lange den Garten mit dem Hochdruckreiniger sauber machen,
Blumen bestellen oder mit dem Rad eine Runde zum Strand fahren.
Leider ist es für all das einfach noch viel zu kalt.</p>
<p>Nichtsdestotrotz habe ich dann aber doch an dem ein oder anderen Projekt gearbeitet.</p>
<h2 id="autopflege-1">Autopflege</h2>
<p>Seit langem habe ich mal wieder meinem Auto ein wenig Pflege gegönnt.
Erst innen saugen und Polsterpflege.
Danach von außen mit dem Hochdruckreiniger reinigen, mit Schaum einsprühen und anschließend mit vielen Waschtüchern abwaschen.
Nach dem Abtrocknen dann noch mit <a href="https://www.sonax.de/pflegeprodukte/profiline/profiline-brilliant-shine-detailer/profiline-brilliant-shine-detailer-5-l">Sonax Brilliant Shine Detailer</a> auf Glanz gebracht.</p>
<p>Auch wenn ich die Sonax Produkte eigentlich nicht so gut finde, ist das Sonax BSD wirklich gut.
Wenn man es 1:1 mit Wasser verdünnt, hält es doppelt so lange und man kann es besser verteilen.
Es liegt wie eine leichte Schutzschicht auf dem Lack, die verhindert, dass Dreck und Regen haften bleiben.
Also ein wenig zumindest. 😄</p>
<h2 id="github-1">Github</h2>
<p>Nebenher habe ich meinem <a href="https://github.com/cblte">Github Repository</a> ebenfalls eine Schönheitskur verpasst.</p>
<p>Zum einen kann man ja jetzt ein Repo mit dem Namen des Benutzers anlegen,
welches dann in der Profilansicht angezeigt wird.
So sieht das schon viel hübscher aus, wenn man das Profil eines anderen besucht.</p>
<p>Zum anderen habe ich mich schlau gemacht über Webhooks
und Github-Actions und überhaupt Git so im Allgemeinen.
Denn das hat auch was mit dem großen Umbau der Webseite zu tun.</p>
<h2 id="der-wechsel-zu-hugo-1">Der Wechsel zu Hugo</h2>
<p>Als Erstes habe ich mich wieder einmal dazu entschlossen, meine Webseiten zu überarbeiten.
Das hat leider was damit zu tun, dass die aktuellen Updates von Ghost so überhaupt nicht meinem Geschmack entsprechen.</p>
<h3 id="ghost-hat-sich-nicht-zum-guten-verbessert-1">Ghost hat sich nicht zum guten verbessert</h3>
<p>In Version 4 haben sie in Ghost viele Dinge eingebaut, um den Blog oder die Website zu monetarisieren.
Da ich das alles nicht brauche und auch nicht haben will, es sich auch nicht abschalten lässt,
werde ich mich nach nur kurzer Zeit wieder von Ghost trennen müssen.
Doch was sind die Alternativen?
Wieder einen Wordpress-Blog aufsetzen? Noch mal Bludit ausprobieren? Oder, oder, oder?
Es gibt so viele Dinge, die man machen kann.
Da ich aber ein Mensch bin, der es gerne ordentlich und aufgeräumt hat, habe ich mich langem hin und her für Hugo entschieden.</p>
<h3 id="hugo-ist-einfach-schnell-und-komfortabel-zugleich-1">Hugo ist einfach, schnell und komfortabel zugleich</h3>
<p><a href="https://gohugo.io">Hugo</a> ist ein Generator für statische Webseiten.
Man nehme einen ganzen Haufen an Texten und Dateien, ein Theme wie die Seite aussehen soll,
und jage das durch Hugo durch.
Am Ende kommen dann viele statische HTML-Seiten heraus, die man ohne großen Aufwand auf jedem Webserver hosten kann.</p>
<p>Hugo ist für mich halt super, weil ich genau weiß,
wo was gespeichert wird und wie ich was wo ablegen muss, damit es funktioniert.
Bei einem Update passiert halt kein Schnick-Schnack, den ich nicht beeinflussen kann.
Hinzu kommt, dass statische Seiten nicht gehackt werden können.
Wie auch?
Es gibt kein Login-Formular, kein Script, das irgendetwas bei Seitenaufruf generiert.</p>
<p>Die Installation von Hugo ist ebenfalls super einfach.
Du lädst dir nur das passende Binary für dein Betriebssystem herunter.
Fertig!
Kein umständliches Aufsetzen von Webserver und irgendwelchen Skriptsprachen.
Wenn man dann eine neue Seite erstellt hat, kann man quasi sofort loslegen.
Hugo selbst lässt sich sogar dazu benutzen, um die generierten Seiten auszuliefern.
Praktisch, oder?</p>
<p>Im Vergleich: Ghost 3.42.1 belegt aktuell knapp <strong>450 MB Speicherplatz</strong>.
Im Gegensatz dazu hat das Binary von Hugo knapp 50 MB.
Mit dem Sourcecode und der komplett generierten Webseite, inkl. Bilder, kommen noch mal knapp 30 MB obendrauf.
450MB gegenüber 80 MB.
Ist schon mal ein krasser Unterschied.</p>
<p>Backups sind ebenfalls super einfach.
Aller Sourcecode liegt in einem Github-Repository und die Beiträge und Seiten liegen als Markdown-Text vor.
Einfach ein Backup vom Verzeichnis machen und gut ist.
Ich habe jetzt auch das Hugo-Binary mit ins Backup gepackt,
so kann ich die Webseite auch später noch generieren, wenn ich möchte.</p>
<p>Hugo ist außerdem schnell, verdammt schnell sogar.
In meinem Test habe ich meine exportierten Blogbeiträge einfach zehnmal in das <code>Content</code>-Verzeichnis kopiert.
Um aus den über 1800 Dateien eine voll funktionierende Webseite mit Tags, Archive, Seiten-Navigation
und mehr zu generieren, braucht Hugo keine 3 Sekunden.</p>
<p>Hugo benötigt nur ein paar Sekunden für die Webseiten-Generierung</p>
<h3 id="ich-mag-es-gerne-einfach">Ich mag es gerne einfach</h3>
<p>Für Ghost habe ich lange nach einem einfachen Design gesucht.
Doch nie wirklich eines gefunden, welches mich überzeugen konnte,
weshalb ich dann beim Standard-Design / -Theme geblieben bin.
Wirklich gefallen hat es mir nie.
Doch das Aufsetzen einer Entwicklungsumgebung für Ghost, um ein Theme zu schreiben, erschien mir zu kompliziert.</p>
<p>Und weil ich es auch gerne einfach mag,
habe ich mich für das <a href="https://github.com/janraasch/hugo-bearblog/">Bear-Theme</a> entschieden und es ein wenig angepasst.
Die eigentliche Blog-Übersicht ist nun das Archiv und die Blog-Übersicht zeigt Ausschnitte der fünf letzten Beiträge.
Dazu gibt es eine Navigation am Ende, um zu vorherigen Seiten zu springen.
Ob das so bleibt weiß ich noch nicht; vielleicht kommt der Archiv-Link auch da unten hin, um das Menü nicht zu sehr zu überladen.</p>
<h3 id="bisher-migrierter-content-1">Bisher migrierter Content</h3>
<p>Der Export aus Ghost und die Umwandlung in einzelne Textdateien ist schon erfolgt.
Dennoch muss ich jeden Beitrag einmal anpacken und anpassen, da die Bookmark-Cards auf Ghost nicht in Hugo funktionieren.
Zumindest nicht so, als dass man den Text ohne weiteres übernehmen kann.
Die Bilder sind ebenfalls exportiert und warten darauf, wieder eingebunden zu werden.</p>
<p>Die Seiten für die Blogroll und die Podcasts habe ich überarbeitet und eine weitere Seite für Ressourcen hinzugefügt.
Das sind von mir fast täglich genutzte Seiten.
Da ich an vielen Rechnern und mit vielen Browsern unterwegs bin, habe ich relativ wenig Favoriten gespeichert
und nutze dafür nun die Ressourcen-Seite und meinen <a href="https://bm.zn80.net">Bookmark-Manager shaarli</a>.</p>
<h3 id="was-nicht-so-toll-ist-1">Was nicht so toll ist</h3>
<p>Was nicht so toll ist, weil ich es aber gerne strukturiert und sauber haben will, ist,
dass sich die URLs von einigen Beiträgen ändern werden.
Das ist doof, aber ich versuche mit ein paar Umleitungen (re-directs) so viel wie möglich abzufangen.</p>
<h3 id="fazit-1">Fazit</h3>
<p>Im Groben und Ganzen bin ich mit Hugo super zufrieden.
Ich habe viel gelernt in den letzten zwei Wochen und einige neue Tools und Services kennengelernt.</p>
<p>Es gibt super viele <a href="https://jamstack.org/generators/">statische Seitengeneratoren</a>.
Ich habe gelernt, wie man mit <a href="https://docs.github.com/en/github-ae@latest/developers/webhooks-and-events/webhooks">Github und Webhooks</a> automatisiert die Webseite bauen kann,
über <a href="https://docs.github.com/en/github-ae@latest/actions/guides/setting-up-continuous-integration-using-workflow-templates">Continuous-Integration</a> mit <a href="https://travis-ci.com/">Travis-CI</a> und <a href="https://www.netlify.com/">Netlify</a> und vieles mehr.</p>
<p>Viel gelernt habe ich auch über <a href="https://www.git-scm.com">git</a> selber.
<em>Best Practices</em> gelesen und mir einige Videos angeschaut, wie andere Nutzer verschiedene Probleme lösen oder gelöst haben.
Das hilft mir nicht nur bei meinen privaten Projekten, sondern auch auf der Arbeit, wo wir bald von Mercurial auf Git umsteigen werden.</p>
<h2 id="sonst-noch-was-1">Sonst noch was?</h2>
<p>Ja, da gibt es tatsächlich noch was.</p>
<p>Auf der Webseite <a href="https://lennyface.de/">https://lennyface.de/</a> gibt es noch sehr viel mehr Kaomojis.
Benutzt habe ich sie bisher hauptsächlich in Skype-Konversationen, zum Leid meiner Arbeitskollegen.
Ich finds aber nicht nur lustig, sondern sie helfen auch dem geschriebenen Wort etwas mehr Ausdruck zu verleihen.</p>
<p>=&gt; <a href="https://lennyface.de/">https://lennyface.de/</a></p>
<p>Auf dev.to gibt es eine ganze Menge an guten Artikeln in vielen Themenbereichen.
Mich interessiert zwar hauptsächlich Golang, Java, Python und Git.
Die Community in den Bereichen Javascript und Web-Development ist aber sehr stark ausgeprägt und es gibt viele coole Projekte und Hinweise zu interessanten Webseiten.
Durchgucken lohnt sich alle mal.</p>
<p>=&gt; <a href="https://dev.to/">https://dev.to/</a></p>
<p>Irgendwo hatte ich das zwar auch schon mal zusammengetragen, aber keine Ahnung, wo meine Liste abgeblieben ist.
Egal.
Mike Kuketz vom Kuketz-Blog hat eine aktuelle Liste an <a href="https://www.kuketz-blog.de/datenschutzfreundliche-web-frontends-fuer-youtube-twitter-instagram-reddit-und-co/">datenschutzfreundlichen Web-Frontends für YouTube, Twitter, Instagram, Reddit und Co.</a> erstellt.
via <a href="https://happybuddha1975.de/15-kw-2021/">HappyBuddah1975</a></p>
<h3 id="die-darf-ich-das-app">Die “Darf ich das” App</h3>
<blockquote>
<p>Was darf man eigentlich, und welche Regeln und Gesetze sind in in deiner Region gerade gültig?</p>
</blockquote>
<blockquote>
<p>Während Corona gelten in allen Bundesländern unterschiedliche Regeln, und sogar der nächste Landkreis kann schon wieder anderen Erlassen unterliegen.
Im Rahmen der Covid-19 Pandemie gibt es fast täglich neue Gesetze und Verordnungen, die unseren Alltag betreffen.
Da informiert zu bleiben kann schwierig sein!</p>
</blockquote>
<p>Von <a href="https://twitter.com/padeluun/status/1383554877322719236">padeluun</a> empfohlen, kann die App nicht schlecht sein.
Probiere es doch einfach mal aus.</p>
<p>=&gt; <a href="https://www.darfichdas.info/">https://www.darfichdas.info/</a></p>
<hr>
<p>Es gäbe zwar noch einiges mehr zu berichten, aber das muss für heute reichen.
Ich hoffe auch mal, dass ich es schaffe, wieder etwas regelmäßiger zu schreiben.</p>
<p>So wirklich warm wird es ja immer noch nicht.
Ein kurzer Ausreißer am Dienstag, aber das war es dann auch schon.
Damit nun einen guten Start in die Woche.
Haltet die Ohren steif!</p>
]]></content:encoded>
    </item>
  </channel>
</rss>
