WordPress und Google Fonts

Google Fonts sind schön. Und so einfach einzubinden. Mittlerweile gibt es ca, 1.500 Schriftarten, die Google lizenzfrei und kostenlos zur Verfügung stellt. Viele WordPress Themes laden sie munter von Google Servern nach. Darüber hatte ich mir nie Gedanken gemacht. Bis ich vor kurzem von einem netten Herren darauf hingewiesen wurde, dass durch das Nachladen der Fonts von Google Servern Daten des Website-Benutzers (IP Adresse) an Google weiter gegeben werden.

Schritt 1: Identifizieren der Fonts – Durch Verwenden der Entwicklertools in den Browsern lassen sich die Fonts im Bereich Netzwerkaktivität schnell finden. Die Vorgehensweise hierfür wird sehr detailliert z.B. hier beschrieben.

Schritt 2: Lokale Bereitstellung der Fonts

Die anspruchsvolle Lösung ist das manuelle Speichern der Fonts und das Ändern der CSS Dateien in der WordPress Installation. Kann ich nicht umbedingt empfehlen: Dazu sollte man sich schon ganz gut im Code auskennen.

Die einfache (und von mir präferierte) Lösung ist ein WP Plugin namens ‘Local Google Fonts‘. Nach der Installation und Aktivierung des Plugins werden die verwendeten Fonts gesucht (und gefunden). Dann können die Fonts auf den eigenen Server geladen und verwendet werden. Nähere INfos zur Vorgehensweise finden sich hier.

Jetzt ist die Seite wieder ein bisschen mehr DSGVO konform.

Weiterführende Links:

Was lange währt

Endlich habe ich es geschafft, unsere alte, auf Drupal 7 basierte Webseite auf etwas Moderneres zu heben. Die Anforderungen waren/sind:

  • die neue Webseite muss vom Smartphone bis zum großen Bildschirm lesbar sein (Responsiv)
  • unsere Belegungskalender müssen sichtbar sein
  • unser Bildmaterial muss erneuert werden und die Texte müssen angepasst werden
  • die Seite muss gut administriebar sein
  • das unterliegende System soll einfach Mechanismen zum Update bereitstellen

Was wir nicht mehr wollten:

  • Zu viele Seiteninformationen wie z.B. Restaurantführer
  • Abhängigkeit von Dritten zur Kalenderdarstellung (wir haben die letzten Jahre Kalender von ferienzentrum.de eingeblendet)
  • Harte Technologiesprünge wie bei Drupal V7 -> v8 o.ä.)
  • Zweisprachig: In der Zeit von deepl.com muss das nicht mehr sein.

Optionen waren:

  • eine statische Webseite (etwa Hugo). Das habe ich lange überlegt
  • CRM System (Drupal, WordPress)
  • Python / Javascript basierte Webseite

Letztendlich haben wir uns für WordPress entschieden. Es gibt eine Vielfalt Themes, die wir leicht an unsere Bedürfnisse anpassen konnten. Bilder sind einfach zu organisieren und via Galerien und Lightox präsentierbar. Die Einbindung von Google Calendar wird mit einem Zahl-Plugin sehr einfach. Die größten Probleme (oder Verständnisprobleme) hatte ich mit der Google Cloud Console, Die Editoren sind verständlich und auch für Nicht-Techies benutzbar. Am wichtigsten erschien mir, dass die WordPress Community ihr Geschäft versteht und es uns Benutzern einfach macht, die Seite auf den neuesten Versionen zu halten.

Gerne hätte ich die Seite auch mit Python /JS gebaut. Gescheitert ist das Vorhaben an der Verfügbarkeit von Python bei meinem Hoster. Das ist zumindest meine Ausrede. Ebenso wie bei Hugo hätte ich nämlich viel CSS und Design selber machen müssen. Das ist nun nicht so meine starke Seite …

Hier sind die Dinge, die ich noch tun möchte:

  • eine Buchungsleiste einfügen: Der Besucher gibt Anreise-/Abreisedatum ein und erhält als Resultat der Anfrage eine Liste der buchbaren Apartments für diese Zeit mit aktuellen Preisen, ähnlich wie bei booking.com
  • aktuelle Wetterinformationen, die ich über unsere Wetterstation sammle (siehe auch https://www.wunderground.com/dashboard/pws/IGERSF1)
  • Bilder von unseren Webcams

Link zur neuen Seite: https://ferien-in-gersfeld.de

The Winter That Was

The winter of 2019/2020 in my hometown of Gersfeld was disappointing. Hardly any snow, no cross country skiing in our neighbourhood. The Loipenpark Zentrum was only good for walks in the dirt. And I had just purchased a new set in 2019. So really disappointing, and then the Pandemic hit and I couldn’t see any possibility to go to Austria this winter.

But then it started just after Christmas. The snow came, and the cold came. The folks from Loipenpark reported more than 70 snow days (where tracks could be groomed and conditions were good or at least reasonable). It got very busy. People came from near and far, to a point that parking was restricted on the weekends to avoid even larger crowds.

For myself, I counted my visits to Loipenpark and I got to 40 in the months of January and February. And another 2 in March. Now that was the best that I had in the last couple of years.

Image: Today from https://loipenpark.de

And then – yesterday evening – it started to snow again. While I don’t expect that the snow will be around long enough for the folks to use the machines to lay tracks, I’m quite tempted to see if I can just get another morning tour out of it.

Paying the Bill

When we started to get serious about our holiday apartment business in 2008, I also got serious about providing IT support for the business.

At the time, it was very important to have your own website. I think about 30-40% of the bookings came from that source. With the little experience I had back then I chose Drupal to build the site. Note: This was before folks were using (i)Pads and smart phones to check for vacation homes. So we ended up with a page that until today sucks on small screens.

Next project was to create an internal system to keep track of our bookings. So I set off to write a small PHP system to create and track visitors, bookings, invoices and so on. What I had envisioned to be a very small app turned into a much bigger endeavour once I noticed that it won’t be just me using this app. So I wanted to add a nice UI and chose a very cool and hyped framework called Angular.js. The initial system booking system went life on my provider’s servers in 2014, the Angular.js version about a year later. Angular.js is now in long-term support. And starting with the next version (2.0) Angular.js was renamed in Angular and it underwent a major redesign and paradigm shift. Needless to say that it more or less requires you to learn a new language called Typescript.

After all that I started to enjoy hacking away again. Looking at the cost structure of our business one of the interesting places where we could lower cost and do some good for the globe appeared to be lowering our heating (aka oil) cost. Around 2016 I had started playing around with an ope-source project called openhab, connecting to closed solutions to control heating radiators. I implemented a system in openhab (or actually using openhab’s REST interface to connect the booking system and the heating control system. That was and is fun! And recently I started using Grafana to visualise the performance of the system. Just to find out that the closed solution (I’m using the MAX! system) is not up to par. So I’m learning a lot about the ‘hidden features’ of MAX! and try to adopt my control center software, running on Raspberry Pi’s at home and in the holiday apartments..

For the past years I was still fully employed. In June 2020 I changed from fully employed to working a maximum of 2 days a week on consulting contracts. This allowed me to sit back and look at the technical debt that I have accrued.

What I learned is:

  • Don’t create a website if you don’t have to
  • If you really need, think twice if you need to use a CRM of if a static page suffices
  • For each and every piece of software that you develop: Never forget the cost of ownership.
  • Write tests and documentation. You will not understand what you did 6 years ago without it!
  • Speed of front-end technology changes far faster than backend: Separate the two systems as much as possible (e.g., RESTful interface)
  • It sucks to use IoT systems (e.g., smart home hard/software) that is a) closed and b) developed with a focus on the hardware). In addition, the cost of the hardware is still very high and the ROI is not coming any time soon. Rather invest into more bold solutions (e.g., heat pump based solutions, solar energy)
  • It was and is a lot of fun to play!

So I’m going to invest some time into

  • Choosing a different technology for re-writing our public website (static page, goHugo?)
  • Learning Typescript (actually started a course @ Udemy)
  • Chose the right front-end technology for the internal app (e.g., React, Angular)
  • Make plans make major investments into saving a) the planet and b) heating cost

I’ll keep you posted!

Meshing it up

Ich kann wirklich nicht erklären, warum es so lange gedauert hat. Aber endlich habe ich mein Gersfeld Mesh-Up Netzwerk am Laufen. Was war das Problem: Wir haben eine Location, bei der vom Provider einfach nur furchtbares Internet geliefert werden kann (sagt der Provider). Die Idee war für eine ganze Weile, dass wir die Bandbreite der anderen Locations (andere Verträge, andere Anschlussmöglichkeiten) koppeln und dann auch bei der unterversorgten Location gute Bandbreite zur Verfügung stellen.

Die Hardware hatte ich schon seit Wochen (Monaten) herumliegen. Heute habe ich sie endlich zusammen gebastelt. Und siehe da: Es ward Licht.

Leute, die Zeit von Freifunk ist noch nicht vorbei. Mesh Networks sind eine Riesen Chance für kleine Orte wie unsere. Jetzt müssen wir nur noch schauen, wie wir alle Punkt mit Linien verbinden!

 

WiFi für Gersfeld!

Mein letzter Beitrag war “Wir für Gersfeld?”. Viele Worte, viele Ideen, viel ist (noch) nicht dabei rumgekommen. Vielleicht dauert das seine Zeit. Aber etwas ist doch passiert! Ich hatte als eine Idee mitgenommen, dass wir mit einfachen Hausmitteln und Ressourcen-Sharing viel erreichen können. Es ist Zeit, das Frage- durch ein Ausrufezeichen zu ersetzen.

Runde 1: WiFi für Gersfeld!

Angefangen hat es eine kleine Software Firma in der Stadtmitte. Die haben den ersten Hotspot aufgebaut, der nun Freifunk über den Marktplatz anbietet. Im Café sitzen und arbeiten. Was für eine tolle Idee. Wir haben unsere Ferienwohnungen nun auch mit starken Freifunk Hotspots ausgestattet. Es gibt keine Pass-Phrases mehr für unsere Besucher und keine Risiken für uns als Internet Anbieter. Das nenne ich eine Win-Win Situation!

Und es spricht sich herum in Gersfeld: Mit Edeka Rehm und Bistro Alpina gibt es die nächsten offenen Hotspots. Wenn das so weitergeht, dann bekommt Gersfeld schnell und unbürokratische eine offene und schnelle Internetversorgung für Einwohner und Gäste!

Und die Kosten? Mitmachen kostet einmalig zwischen 25-50€. Das ist für die Hardware, die Ihr anschaffen müsst.

Links:
Freifunk
Bistro Alpina

Wir für Gersfeld?

Diese Woche war ich zum ersten Mal bei einem Treffen der Gruppe “Wir für Gersfeld“. Dieser Verein hat sich auf die Fahnen geschrieben, den Tourismus zu fördern und im touristischen Bereich Gastronomie- und Beherbungsbetriebe in Gersfeld zu unterstützen. Hört sich ja erst einmal gut an – schließlich haben wir ja auch einen Beherbergungsbetrieb.

So weit so gut. Es sollen also Touristen (das sind die Kunden, also die Touristen) und die betreuenden Betriebe unterstützt werden. Hört sich gut an. Zuerst wurde auch eine Umfrage veranstaltet, bei der die Teilnehmer dies und das gefragt wurden. Soweit so gut. Unter anderem wurde auch gefragt, wie den der Tourist bucht – es standen zur Auswahl (wenn ich mich recht erinnere): Per Post, per Telefon, über die Stadt, per Internet. ehrlich – bei uns buchen 95% aller Besucher über das Internet. Mein Vorschlag war, diesen Bereich vielleicht etwas näher zu betrachten – also das Internet ein bisschen differenzierter zu betrachten: welche Portale, eigene Homepage, welche sonstigen Kanäle. Da wurde die Diskussion dann lebhafter:

  • Die Stadt tut nicht genug für uns
  • booking.com ist unfair
  • usw.

Was die wenigsten der Teilnehmer glauben: Wir (die Beherbungsbetriebe) werden immer mehr zu Assets, die über die verschiedenen Plattformen verkauft werden. Ich vermute, dass in wenigen Jahren die Unterhaltung stattfinden wird, welche Plattform gerade gewinnt. Nicht, ob uns die Stadt oder der liebe Gott helfen kann. Was der Buchhandel (und viele Bereiche des Einzelhandels) schon erlebt hat, das kommt gerade auf uns zu. Und ehrlich: Es gibt kein Entkommen.

Oder vielleicht doch?

Wissen wir, wer unsere Gäste sind, wer sie sind, was ihnen gefällt, was ihnen nicht gefällt? Ich meine, haben wir sie mal ernsthaft befragt und die Informationen ausgewertet? Vielleicht ist es ihnen ja egal, dass Gersfeld in der Mitte Deutschlands liegt? Und sie haben ganz andere Anliegen?

Wie können wir den Aufenthalt für die Gäste verbessern, unabhängig von unseren eigenen Businessmodellen? Welche B2B Möglichkeiten (auch zwischen Mitbewerbern) würden das unterstützen? Wenn ich meine Gäste in die Sauna der Sonne schicke, werde ich sie verlieren? Ein zufriedener Gast wird vielleicht nach Gersfeld zurückkommen – egal zu wem.

Sollten wir weiter über die Kaskade diskutieren? Oder sollten wir für unsere Gäste lieber den Mitbewerbern in Hilders über eine Lösung reden? Dann hätten unsere Gäste einen Mehrwert!

Basierend auf dem oben Gesagten können wir auch eine Delta-Analyse der Services der Stadt Gersfel machen. Und dann gemeinsam das Fehlende auf die Beine stellen. Besser als Meckern wäre das allemal.

Ach ja – die Stadt und die Kaskade: Kann denn mal jemand endlich dieses Eingeständnis von Versagen und Selbstmitleid von der Homepage der Stadt Gersfeld entfernen? Ich glaube nicht, dass dieser Brief und die Aussage der Nichtverfügbarkeit irgendeinen Gast wirklich interessiert.

 

PS: Kommentare sind willkommen!