<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>oliverlorenz.com</title>
        <link>https://www.oliverlorenz.com/</link>
        <description>undefined</description>
        <lastBuildDate>Thu, 16 May 2024 14:31:48 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>Gridsome Feed Plugin</generator>
        <atom:link href="https://www.oliverlorenz.com/feed.xml" rel="self" type="application/rss+xml"/>
        <item>
            <title><![CDATA[Der Blog läuft jetzt auf gridsome]]></title>
            <link>https://www.oliverlorenz.com/2021/02/14/der-blog-laeuft-jetzt-auf-gridsome/</link>
            <guid>https://www.oliverlorenz.com/2021/02/14/der-blog-laeuft-jetzt-auf-gridsome/</guid>
            <pubDate>Sun, 14 Feb 2021 00:00:00 GMT</pubDate>
            <content:encoded><![CDATA[
Puh! 1,5 Jahre nicht mehr gebloggt. Nun ja, erzählen gäbe es zu genüge. Andere Aufgaben eben aber auch. So ist es nun mal.

Kurzum: Der Blog läuft jetzt auf [gridsome](https://gridsome.org/) statt auf [jekyll]. Es hat mich schon lange gestört, dass ich bei jekyll mangels ruby Kenntnissen nicht viel machen kann. Nun kann ich bisschen was ändern!

Und der Blog ist hübsch wie eh und je :P]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Wifi in der Bahn (für Linux Nutzer)]]></title>
            <link>https://www.oliverlorenz.com/2019/09/20/wifi-in-der-bahn-fuer-linux-nutzer/</link>
            <guid>https://www.oliverlorenz.com/2019/09/20/wifi-in-der-bahn-fuer-linux-nutzer/</guid>
            <pubDate>Fri, 20 Sep 2019 14:00:00 GMT</pubDate>
            <content:encoded><![CDATA[
Heute habe ich wieder etwas mit viel Schmerz gelernt. Nämlich, warum in der Deutschen Bahn mein Wifi nicht funktioniert bzw. Ich nicht zur Login-Page umgeleitet werde.

Die Antwort ist simpel: Docker! Woran liegt das?

Nun: Jedes mal wenn man ein Docker Network erstellt wird eine neue Bridge erstellt. Diese nummerieren vom privaten Adressbereich startend von 172.17.*.*, dann 172.18.*.* usw.

Die Bahn verwendet ebenfalls das Netz 172.18.*.* und so kollidiert es da ein wenig.

## Wie bekommt man das gelöst? (Ubuntu)
```
ifconfig
```

Dort sucht man das network interface mit dem der Addresse 172.18.*.*. Hier ist der Name entscheidend. 

Anschließend: 
```
docker network ls
``` 

Dort wird eine den namen wiederfinden. Anschließend das entsprechende network löschen (Insofern sicher, dass es nicht benötigt wird):

```
docker network rm <NAME>
``` 

... und ein mal den network manager neustarten.


```
sudo service network-manager restart
``` 

Anschließend sollte alles funktionieren :)
]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Medienkompetenz stärken, indem man zum Fake News Produzent wird]]></title>
            <link>https://www.oliverlorenz.com/2019/07/18/medienkompetenz-staerken-indem-man-zum-fake-news-produzent-wird/</link>
            <guid>https://www.oliverlorenz.com/2019/07/18/medienkompetenz-staerken-indem-man-zum-fake-news-produzent-wird/</guid>
            <pubDate>Thu, 18 Jul 2019 19:00:00 GMT</pubDate>
            <content:encoded><![CDATA[
Ich bin mal wieder über etwas Tolles gestolpert. Es geht um ein Online-Spiel, welches den Spieler in die Rolle eines Urhebers von Falschinformationen versetzt, um möglichst viele Follower zu generieren. Der Motor der modernen Informationswelt.

Das Spiel nimmt einen auf dem Weg zum Fake News Chefredakteur vorsichtig an die Hand und zeigt auf, welche Strategien funktionieren, welche nicht und erklärt außerdem die dahinterliegenden Mechanismen die in uns Menschen wirken. Insgesamt dauert das spiel ca. 10 Minuten.

Das Ganze hat natürlich den Sinn, die Medienkompetenz zu schärfen und den Leuten zu helfen Fake News zu erkennen die uns allen im Alltag begegnen. Ich kann jedem ans Herz legen sich der Thematik mit diesem Spiel zu nähern. Im einfachsten Fall knackt ihr immer wieder euren eigenen Highscore. Im besten Fall verinnerlicht ihr diese Mechanismen und könnt besser im Alltag erkennen, wer euch versucht einen Bären aufzubinden oder euch zu auf die falsche Art zu emotionalisieren. 

Hier der Link zu dem Spiel "[Get Bad News](https://getbadnews.de/#intro)" (in der deutschen Version). Weitere Informationen zu dem Spiel gibt in deren [Infoblatt für Lehrkräfte](https://getbadnews.de/wp-content/uploads/2019/04/Bad-News-Game-info-sheet-for-educators-German.pdf)

Den jetzigen Impuls zu diesem Artikel habe ich über den Podcast [Logbuch Netzpolitik](https://logbuch-netzpolitik.de/) in der Folge [LNP308 Sternchenministerkonferenz](https://logbuch-netzpolitik.de/lnp308-sternchenministerkonferenz) bekommen, der mich dann an einen [Artikel von Heise](https://www.heise.de/newsticker/meldung/Tech-Unternehmen-und-Behoerden-denken-ueber-Impfung-gegen-Fake-News-nach-4471424.html) weitergeleitet hat. Zuvor war mir das Spiel aber auch schon auf dem [Play18 Festival](https://playfestival.de/play18/2018/10/13/get-bad-news/) über den Weg gelaufen.
]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Android Backup mit Ansible]]></title>
            <link>https://www.oliverlorenz.com/2019/05/08/android-backup-mit-ansible/</link>
            <guid>https://www.oliverlorenz.com/2019/05/08/android-backup-mit-ansible/</guid>
            <pubDate>Wed, 08 May 2019 10:09:00 GMT</pubDate>
            <content:encoded><![CDATA[
Wie es für einen ordentlichen ITler gehört, sollte man immer in der Lage sein, seine Arbeitsumgebung schnell wieder herstellen zu können, auch wenn man die Hardware austauschen muss. Dies tun wir wie selbstverständlich für unsere Server, manche von uns, mittlerweile auch für unsere Notebooks und Desktop Computer. Zu viel Zeit haben wir verbracht alle Tools zu installieren, diese zu konfigurieren ect.

Warum nicht noch einen Schritt weitergehen. Wenn man ehrlich zu sich selbst ist, dann ist das Handy mittlerweile ein ebenso wichtiger Teil unseres Alltags wie die Rechner. Wieso also die Tugenden dieser Denkweise nicht auch auf das Handy ausrollen? Dieser Artikel gibt einen knappen Abriss, wie das funktionieren kann.

### Disclaimer und Voraussetzungen

An erster Stelle: Sorry an die iOS Nutzer. Ihr habt euch in den goldenen Käfig gesetzt. Ich sehe wenig Möglichkeiten euch mit den Schlagworten "Ansible" und "Backup" helfen zu können.

Des Weiteren solltet ihr ein gewisses Grundverständnis für Ansible und Linux mitbringen. Da ihr aber vermutlich über diese Keywords hier hergelangt seid, gehe ich davon aus, dass ich das voraussetzen kann.

Ich werde euch, außer ein paar allgemeinen Hinweisen, keine Ansible Skripte zur Verfügung stellen. Da hat sowieso jeder andere Anforderungen.

### Android einrichten

Legen wir los! Als Erstes braucht ihr eine App. Die App heißt Termux und ist im alternativen App Store [F-Droid](https://f-droid.org/en/packages/com.termux/) oder im [Google Play-Store](https://play.google.com/store/apps/details?id=com.termux&hl=de) zu finden. Diese App ist zentral für das weitere Vorgehen.

Wenn ihr die App nun startet, wird euch ein bekanntes Bild ereilen. Ein Terminal. Ansible hat nicht viele Voraussetzungen außer Python und einer SSH Verbindung. Somit installieren wir die entsprechenden Packages:

```
pkg install python openssh
```

Damit sind alle nötigen Packages installiert. Zusätzlich müsst ihr euren SSH Public Key im Pfad `~/.ssh/authorized_keys` hinterlegen. 

```
echo "<<SSH PUBLIC KEY>>" >> ~/.ssh/authorized_keys
```

Nun noch die SSH Server starten:

```
sshd
```

Jetzt läuft er, solange die Session läuft. Bitte beachtet, dass der Server nur aktiv ist, wenn das Display des Handys aktiv ist.

One more thing! Damit ihr Zugriff auf das Dateisystem bekommt, müsst ihr noch einen weiteren Befehl eingeben:

```
termux-setup-storage
```

### Rechner einrichten

Soooo. Lasst mal testen ob ihr eine Verbindung bekommt. Beachtet, dass nicht der Standard-Port genutzt wird, sondern 8022. Ganz einfach zu testen:

```
ssh -p 8022 <<IP DES HANDYS>>
```

Wenn ihr da eine Verbindung bekommt, seid ihr top vorbereitet und könnt damit loslegen eure Ansible Skripte zu schreiben. 

Euer Inventory könnte so aussehen:

```
[handy]
192.168.XXX.XXX ansible_port=8022 ansible_host=192.168.XXX.XXX
```

Alles andere müsst ihr euch selbst basteln :)

### Fazit

Sicher ist man als Otto-Normal-Verbraucher mit einer Backup-App oder ähnlichem besser bedient. Wenn man aber aber mehr Kontrolle und Versionierung über seine Backup Skripe haben möchte, ist Ansible durchaus eine gute Alternative.
]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Wie ich Whatsapp von meinem Handy verbannte]]></title>
            <link>https://www.oliverlorenz.com/2019/04/06/wie-ich-whatsapp-von-meinem-handy-verbannte/</link>
            <guid>https://www.oliverlorenz.com/2019/04/06/wie-ich-whatsapp-von-meinem-handy-verbannte/</guid>
            <pubDate>Sat, 06 Apr 2019 10:09:00 GMT</pubDate>
            <content:encoded><![CDATA[
Wie in meinem [letzten Artikel](/blog/2019/03/31/matrix.html) bereits beschrieben habe ich mir vor kurzem einen Matrix-Server aufgesetzt. Darüber bin ich nach wie vor sehr froh, denn es wird mir in Zukunft einige Möglichkeiten freispielen.

Eine schöne Sache an Matrix ist, dass es bereits diverse Bridges gibt, mit deren Hilfe man auch andere Messager auf seinem Server einbinden kann. Die interessanteste Bridge für mich ist aktuell die [Whatsapp bridge](https://github.com/tulir/mautrix-whatsapp), denn sind wir ehrlich: Ein Messanger ist nur so viel Wert wie die Leute die man erreicht.

### Wie funktioniert das?

Nun, die Idee ist simpel. Die Brigde loggt sich in die [Web client](https://web.whatsapp.com) ein und bridged die Nachrichten und Kontakte auf meinen Matrix Server. Das ist super, funktioniert aber trotzdem nur wenn Whatsapp auf einem Gerät läuft, denn die Ende-zu-Ende-Verschlüsselung geht nach wie vor vom Gerät aus.

Nun mag folgende Lösung nicht für jedermann nachvollziehbar sein, aber ich für meinen Tel möchte mich gern mehr und mehr von den großen Konzernen und deren Apps auf meinem Handy verabschieden. Einen Matrix-Client habe ich auf meinem Handy installiert, somit brauche ich die Whatsapp-App eigentlich "nicht mehr".

Ich habe lange damit experimentiert ein Andriod in einem Docker-Container stabil zum laufen zu bekommen und Whatsapp dort zu installieren. Leider ohne großen Erfolg. 

### Letztendliche Lösung

Die KISS Lösung war im Endeffekt, dass ich in die Schublade gegriffen habe und ein altes Handy bei dem der Akku schwach geworden war geplättet und neu installiert habe. Ich habe somit jetzt einen WhatsApp-Sklave in form eines Handys, der einfach permanent an der Steckdose hängt und nichts macht außer Whatsapp zu bridgen.

### Was bedeutet das?

Irgendwelche Vor- und Nachteile gibt es immer. Ich für meinen Teil, möchte aber gern  

#### Vorteile:

* Ich habe keine App mehr aus dem Hause Facebook auf dem Handy
* Ich kann wie gewohnt mit allen Leuten kommunizieren, mit denen ich sonst über Whatsapp kommuniziere
* Zukunftsmusik:
  * Ich kann die Nachrichten anderweitig weiterverarbeiten. Vielleicht einen Auto-Response oder ähnliches?

#### Nachteile

* Die Bridge ist leider noch nicht zu 100% stabil und sie erkennt diesen "Broken-State" nicht. Der Problem ist bekannt und es wird daran gearbeitet. Ich für meinen Teil umgehe das Problem, indem ich die Bridge aller 15min neustarte. Spätestens dann, werden alle Nachrichten delivered.
* Ich kann aktuell keine Gruppen mehr eröffnen. Das ist wirklich schade
* Den Web-Messanger von Whatsapp kann ich nicht mehr nutzen, denn Whatsapp lässt immer nur eine Instanz zu.

## Zusammenfassung

Ich gebe zu, dass diese Lösung weit weg von einfach ist. Es ist nerdig. Aber ich habe mein Ziel erreicht! Ich habe keine Facebook-App mehr auf dem Handy und habe von überall Zugriff auf meine Whatsapp-Nachrichten.

Ob es den Langzeit-Test besteht, werden wir sehen :)
]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Matrix Setup]]></title>
            <link>https://www.oliverlorenz.com/2019/03/31/matrix-setup/</link>
            <guid>https://www.oliverlorenz.com/2019/03/31/matrix-setup/</guid>
            <pubDate>Sun, 31 Mar 2019 10:09:00 GMT</pubDate>
            <content:encoded><![CDATA[
Endlich habe ich es geschafft meinen eigenen Matrix-Server aufzusetzen! Zugegebenermaßen, war das nicht der erste Versuch, aber das Setup von Scratch erfordert wirklich ein tiefes einlesen. 

Glücklicherweise habe ich nun ein [Repository](https://github.com/spantaleev/matrix-docker-ansible-deploy) gefunden welches den gesammten Setup-Prozess per Ansible übernimmt. Inklusive Bridges für Whatsapp, Telegram und IRC. Alles schön in Docker Containern, wie man es haben möchte.

Alles was ich zu tun brauchte ist einen neuen Server aufsetzen und 2GB RAM locker machen. Da ich derzeit allein auf dem Server agiere, sollte das mehr als ausreichen.

Ihr könnt mich ab jetzt auch auf matrix erreichen: [https://matrix.to/#/@oliver:oliverlorenz.com](https://matrix.to/#/@oliver:oliverlorenz.com)
]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[35c3]]></title>
            <link>https://www.oliverlorenz.com/2018/12/27/35c3/</link>
            <guid>https://www.oliverlorenz.com/2018/12/27/35c3/</guid>
            <pubDate>Thu, 27 Dec 2018 22:28:00 GMT</pubDate>
            <content:encoded><![CDATA[
Der CCC ist wie jedes mal wenn ich da bin großartig! Der erste Tag ist wirklich erstmal ein sanftes ankommen und exploren.

Jetzt sitze ich das erste mal an meinem Rechner. Und ich schiebe ein bisschen Panik. Denn diese Umgebung lässt dich immer drei mal überlegen ob du das hier machen möchtest. Oft ist die Antwort schlicht nein. Und trotzdem tut man dann doch ein paar Dinge, weil es einfach unvermeidlich ist. Nun: Ich werde die nächsten Tage trotzdem basteln und versuchen dieses Gefühl in Maßnahmen umzuleiten, die mir helfen diese "Schwachstellen" zu minimieren.  
]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Weihnachten IT]]></title>
            <link>https://www.oliverlorenz.com/2018/12/25/weihnachten-it/</link>
            <guid>https://www.oliverlorenz.com/2018/12/25/weihnachten-it/</guid>
            <pubDate>Tue, 25 Dec 2018 13:37:00 GMT</pubDate>
            <content:encoded><![CDATA[
Wenn mir der Chaos Communication Congress etwas vor Augen geführt hat, dann ist es, dass ich nicht der einzige bin, der zu Weihnachten die IT der Eltern und Verwandten fixen muss.

Immerhin muss ich kein Windows XP mehr weg machen. Aber ein Windows Vista ist mir zumindest über den Weg gelaufen.

Trotzdem stelle ich fest, dass sich die typischen Anfragenfelder verschoben haben. PCs spielen kaum noch eine Rolle, dafür mehren sich die Fragen zu SmartTV, Tablets und Handys.

Oft kann ich in diesen Fällen aber nicht groß helfen, denn so divers die Systeme sind, es bilden sich immer mehr goldene Käfige. Und das finde ich beunruhigend. Billig China Tech tut ja erstmal was es soll. Aber wie erklärst du Oma, dass sie ihr geliebtes Tablet nach 2 Jahren wegschmeißen muss und auf dem neuen alles ganz anders ist.

Auch hier macht sich für mich immer mehr bemerkbar, dass man an der Basis ansetzen muss und vor allem Bewusstsein schaffen muss. SmartTVs sind aktuell mein Endgegner. Toll was die alle können, aber ein Dummer TV mit einem Chromecast wäre in vielen Hinsichten die besser Wahl.

Jaja, alle Jahre wieder :)]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Raspberry Pi WebDAV und Docker]]></title>
            <link>https://www.oliverlorenz.com/2018/12/09/raspberry-pi-web-dav-und-docker/</link>
            <guid>https://www.oliverlorenz.com/2018/12/09/raspberry-pi-web-dav-und-docker/</guid>
            <pubDate>Sun, 09 Dec 2018 17:56:00 GMT</pubDate>
            <content:encoded><![CDATA[
Ich betreibe mittlerweile ja alles in Docker Containern. Auch die kleinsten Services. Warum? Nun: Es ist vor allem einfach zu persistieren und stabil zu halten. So habe ich auch auf meinen Raspberry Pis alles in Docker Containern laufen. Dieses mal wollte ich einen WebDAV als Service einrichten was mir ziemliches Kopfzerbrechen bereitet hat.

Dazu muss man wissen dass der Raspberry Pi 2 auf einer arm32v6 Architektur basiert was Docker mitterweile mit allen offiziellen Images unterstützt. Im Falle des NGINX den ich als meinen Webserver ausgesucht habe gibt es dieses Image aber nur als Alpine based Image und die WebDAV-Ext unterstützung für die Methoden PROPFIND und OPTIONS sind nicht standardmäßig enthalten.

Long Story short: Ich habe eine Image erstellt, welches genau diese Lücke füllt. Hier die Facts:

* arm32v6 (Raspberry Pi 2 kompatibel)
* alpine 3.8
* nginx 1.15.7
* [dav-ext Unterstützung](https://github.com/arut/nginx-dav-ext-module)

Das Image ist [hier](https://hub.docker.com/r/oliverlorenz/nginx-webdav-ext/) zu finden. Das Repository ist [dieses](https://github.com/oliverlorenz/docker-nginx-webdav-ext)
]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Raspberry Pi Provisioning]]></title>
            <link>https://www.oliverlorenz.com/2018/12/07/raspberry-pi-provisioning/</link>
            <guid>https://www.oliverlorenz.com/2018/12/07/raspberry-pi-provisioning/</guid>
            <pubDate>Fri, 07 Dec 2018 09:53:00 GMT</pubDate>
            <content:encoded><![CDATA[
Raspberry Pis sind ja eine tolle Sache. Leider erfordern sie für einen produktiven Einsatz immer recht viel Aufwand um sie in Betrieb zu nehmen. Oder wollen wir es mal so sagen: Man muss immer einen HDMI-fähigen Monitor + Kabel da haben, eine USB Tastatur, es umständlich anschließen ect.

Da ich das in letzter Zeit häufiger gemacht habe, habe ich nun mal alle informationen zusammengetragen damit man das ganze schön an einem Rechner machen kann, noch bevor man den Raspberry Pi das erste mal bootet.

### 0. Aufspielen des Image auf die SD-Karte

```
dd if=2018-11-13-raspbian-stretch-lite.img of=/dev/mmcblk0
```

Danach die beiden Partionen mounten

### 1. SSH aktivieren

Dazu einfach auf die `boot` partition der SD-Karte gehen und eine leere datei mit dem Namen `ssh` anlegen.

```
sudo touch ssh
```

### 2. Statische IP Adresse

Nun auf die `rootfs` partition der SD-Karte. Dort muss die Datei `etc/dhcpcd.conf` angepasst werden. Oder einfach nach `etc` auf der SD-Karte navigieren und einen angepassten Befehl dieser Art ausführen:

```
sudo echo "
interface eth0
static ip_address=192.168.0.123
static routers=<IP DES ROUTERS>
static domain_name_servers=<IP DES ROUTERS>
" >> dhcpcd.conf
```

### 3. Hostname

Dazu müssen zwei Dateien im `rootfs` angepasst werden. Oder einfach nach `etc` auf der SD-Karte navigieren und einen angepassten Befehl dieser Art ausführen:

```
sudo echo "<NAME DES RASPBERRY>" > hostname
```

und in der datei `hosts`

```
127.0.1.1	raspberrypi
```

durch

```
127.0.1.1	<NAME DES RASPBERRY>
```

ersetzen.

### Thats it

Nun anschließen und bequem per SSH weiterarbeiten :)]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Raspberry Pi als Print-Server für Brother MFC-L2750DW]]></title>
            <link>https://www.oliverlorenz.com/2018/12/02/raspberry-pi-als-print-server-fuer-brother-mfc-l2750-dw/</link>
            <guid>https://www.oliverlorenz.com/2018/12/02/raspberry-pi-als-print-server-fuer-brother-mfc-l2750-dw/</guid>
            <pubDate>Sun, 02 Dec 2018 15:55:00 GMT</pubDate>
            <content:encoded><![CDATA[Lang hats gedauert. Ich persitiere das gerade für mich selbst. 

1. Auf dem Raspberry pi muss das `cups` package installiert werden. `sudo apt install cups`. Danach steht ein Webinterface auf http://\<IP-address\>:631/. Brauchen wir gleich, erstmal:
2. Nun den Treiber auf den lokalen(!) Rechner [runterladen](https://support.brother.com/g/b/downloadlist.aspx?c=de&lang=de&prod=mfcl2750dw_us_eu_as&os=128&flang=English). Dort auf "Linux printer driver (deb package)" klicken.
3. Nach dem Download folgst du der Anleitung die danach angezeit wird. Diese sagt:
* `sudo dpkg -i --force-all mfcl2750dwpdrv-4.0.0-1.i386.deb`. Ja, auf deinem Rechner! Damit kannst du kontrollieren ob alles tutti ist: `dpkg  -l  |  grep  Brother`
4. So, nun ab ins web interface. Da kann man einen Drucker hinzufügen. Das machste dann.
* Bei `Other Network Printers` wählst du `LPD/LPR Host or Printer`
* Achso! Nicht vergessen den Drucker freizugeben! Das kommt da irgendwo in dem Wizard.
* Adresse ist dann `lpd://\<IP-printer\>/binary_p1`
* Wichtig: Irgendwann sollst du einen konkreten Printer wählen. Das machst du da nicht sondern lädst das PPD file hoch. Das liegt auf deinem lokalen Rechner nun auf: `/opt/brother/Printers/MFCL2750DW/cupswrapper/brother-MFCL2750DW-cups-en.ppd`
5. Drucker im Netzwerk suchen und eine Testseite Drucken. Sollte nun alles passen!]]></content:encoded>
        </item>
        <item>
            <link>https://www.oliverlorenz.com/2018/12/02/title/</link>
            <guid>https://www.oliverlorenz.com/2018/12/02/title/</guid>
            <pubDate>Sun, 02 Dec 2018 13:04:00 GMT</pubDate>
            <content:encoded><![CDATA[
Ich beginne gerade mal wieder ein bisschen mit IoT rumzuwerkeln. Das heißt vor allem, dass man immer sehr viel nach Belegungen und Spannungen googlen muss. Auch wenn die Arduinos relaiv schwer zu grillen sind, sollte man sich vorher ein bisschen informieren.

Eine Sache die ich immer wieder nachschauen muss ist die Belegung der Grove Kabel-Belegung:

* pin 1 - Yellow (for example, SCL on I2C Grove Connectors)
* pin 2 - White (for example, SDA on I2C Grove Connectors)
* pin 3 - Red - VCC on all Grove Connectors
* pin 4 - Black - GND on all Grove Connectors

Quelle: [http://wiki.seeed.cc/Grove_System/#interface-of-grove-modules](http://wiki.seeed.cc/Grove_System/#interface-of-grove-modules)
]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Redis in einem Cluster]]></title>
            <link>https://www.oliverlorenz.com/2018/09/25/redis-in-einem-cluster/</link>
            <guid>https://www.oliverlorenz.com/2018/09/25/redis-in-einem-cluster/</guid>
            <pubDate>Tue, 25 Sep 2018 00:00:00 GMT</pubDate>
            <content:encoded><![CDATA[Heute hatte ich das erste mal bewusst mit  dem Aufbau eines Clusters zu tun. In dem Fall [redis](https://redis.io/).

redis ist eine in-memory database. Der Cluster selbst wird durch [sentinel](https://redis.io/topics/sentinel) verwaltet, der quasi in redis als "mode" eingebacken ist.

Ich wollte mit meiner NodeJS Anwendung sicher gehen, dass immer ein Master vorhanden ist, von der meine Anwendung lesen oder schreiben kann. ioredis hat mir an dieser Stelle das Prinzip näher gebracht.

Neben jedem Redis läuft ein sentinel. Meinem Client müssen alle sentinels bekannt sein. Jedem sentinel sind alle redis Master bekannt.

Fällt ein Master aus, kann der Client aus sentinel die Information holen, woher er sich nun connecten soll.

Resultat meines Versuchsaufbau könnt ihr auf [Github](https://github.com/oliverlorenz/redis-cluster-test) einsehen]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[game-launcher]]></title>
            <link>https://www.oliverlorenz.com/2018/09/07/game-launcher/</link>
            <guid>https://www.oliverlorenz.com/2018/09/07/game-launcher/</guid>
            <pubDate>Fri, 07 Sep 2018 00:00:00 GMT</pubDate>
            <content:encoded><![CDATA[Game Launcher scheinen ja der neue heiße Scheiß zu sein. Wie der Messanger-Boom sind viele davon eine Totgeburt durch Irrelevanz. Bald braucht man für jedes Spiel einen eigenen. 

Wie wäre es denn wenn man dem [GOG.com](https://gog.com) Vorbild folgt und zum einen den Launcher optional macht und zum anderen Spiele von anderen Platformen importieren lässt. Das ist der Selling-Point für mich! Da zahle ich sogar mal den einen oder anderen Euro mehr!

]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Barfussschuhe - Das Soziale Expertiment]]></title>
            <link>https://www.oliverlorenz.com/2018/08/28/barfussschuhe-das-soziale-expertiment/</link>
            <guid>https://www.oliverlorenz.com/2018/08/28/barfussschuhe-das-soziale-expertiment/</guid>
            <pubDate>Tue, 28 Aug 2018 11:12:40 GMT</pubDate>
            <content:encoded><![CDATA[Seit dem ich Barfussschuhe, konkret [diese](https://www.charlesbirch.com/p-27239-five-fingers-v-alpha-gents-size-42-uk-8-black-18m7101.aspx) trage, fällt mir ein interessantes soziales Phänomen auf. 

Üblicherweise:

* Dir kommt jemand entgegen
* Treffen sich die Blicke, schaut man die Person auf den Boden.
* Das machen wir dutzenfach am Tag

Mit Barfussschuhen:

* Dir kommt jemand entgegen
* Die Blicke treffen sich. Die Person auf den Boden
* Die Aufmerksamkeit fällt auf die Schuhe. Ein kurzer Moment der Verwunderung setzt ein
* Die Person will nicht starren, also schaut sie wieder nach oben.
* Nun treffen sich die Blicker erneut. Das fühlt sich merkwürdig an
* Die Person schaut in eine andere Richtung

Das interessante für mich ist vor allem gerade der kurze Moment des sozialen Chaos. Ich beinflusse meine Umgebung gerade passiv. Ich hole Menschen mit meinen Schuhen gerade für wenige Sekunden aus ihrem täglichen trott. Das finde ich sehr interessant. Ich frage mich, ob man dergleiche Effekte auch gezielt einsetzen kann.

]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Poor Man Kubernetes]]></title>
            <link>https://www.oliverlorenz.com/2018/08/02/poor-man-kubernetes/</link>
            <guid>https://www.oliverlorenz.com/2018/08/02/poor-man-kubernetes/</guid>
            <pubDate>Thu, 02 Aug 2018 00:00:00 GMT</pubDate>
            <content:encoded><![CDATA[
Ich bin ja gerade ein bisschen von folgender komination begeistert 

* jekyll
* git
* google cloud builds + google container registry
* [nginx-proxy](https://github.com/jwilder/nginx-proxy)
* [docker-letsencrypt-nginx-proxy-companion](https://github.com/JrCs/docker-letsencrypt-nginx-proxy-companion)
* [watchtower](https://github.com/v2tec/watchtower)

Mag sein dass, dieses setup ein bisschen overpowered für ein bisschen blogging ist. Aber es ist mein kleines "poor man kubernetes"
]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[bookmark-fex]]></title>
            <link>https://www.oliverlorenz.com/2018/06/02/bookmark-fex/</link>
            <guid>https://www.oliverlorenz.com/2018/06/02/bookmark-fex/</guid>
            <pubDate>Sat, 02 Jun 2018 00:00:00 GMT</pubDate>
            <content:encoded><![CDATA[http://fex.rus.uni-stuttgart.de/]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[git-crypt]]></title>
            <link>https://www.oliverlorenz.com/2018/05/28/git-crypt/</link>
            <guid>https://www.oliverlorenz.com/2018/05/28/git-crypt/</guid>
            <pubDate>Mon, 28 May 2018 00:00:00 GMT</pubDate>
            <content:encoded><![CDATA[Mein Kollege [@chaosaffe](https://twitter.com/chaosaffe) hat mir gerade ein sehr cooles Tool empfohlen. [git-crypt](https://github.com/AGWA/git-crypt). Ein sehr cooles Tool mit dem man Credentials auf Basis von PGP in einem Repo ablegen kann. #memotomyself
]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Wo ist der LTE-Sendemast?]]></title>
            <link>https://www.oliverlorenz.com/2018/05/28/wo-ist-der-lte-sendemast/</link>
            <guid>https://www.oliverlorenz.com/2018/05/28/wo-ist-der-lte-sendemast/</guid>
            <pubDate>Mon, 28 May 2018 00:00:00 GMT</pubDate>
            <content:encoded><![CDATA[Das Projekt Lorenz-IT greift um sich! Meine Familie hat nun gesehen was man mit "wenig Aufwand" tolle Projekt umsetzen kann. Und nun haben sie Appetit bekommen. Mein neues Projekt ist es, WLAN in unseren gemeinsam genutzten Bungalow zu bekommen. Und auch wenn ich die Abgeschiedenheit im Spreewald sehr genieße, wäre es manchmal wirklich schön mal schauen zu können wie Öffnungszeiten sind oder wo man mal anrufen kann.

Nun mag es sein, dass die LTE-Abdeckung in Deutschland bei 93% liegt. Ich habe natürlich wieder eine Ecke zunetzen wo es Schnapp-Ab berechnungen zufolge verfügbar sein sollte. Die Realität zeigt aber mal wieder, "dass nicht".

Nun scheint es so, dass die Telekommunikationsunternehmen eine Art Betriebsgeheimnis aus dem Standort ihrer Sendemasten zu machen. Warum, weiß keiner ... Aber die haben ja nicht mit mir altem Geocacher gerechnet.

[Hier](https://www.telekom.de/start/netzausbau) kann man mit einem klick auf die Karte angezeigt bekommen von in welche Richtung der nächste Sendemast steht. Da steht aber keine Entfernung und oft auch keine Gradzahl der Richtung. Aber hey! Man kann auf der Karte grob einer gedanklichen Linie folgen.

Zusätzlich habe ich noch den [EMF-Datenbank](https://emf3.bundesnetzagentur.de/karte/Default.aspx) auf den gleichen Kartenausschnitt gezoomt. Und siehe da: Da steht ein Mast auf dieser Linie. In meinem Fall steht da nur "Sonstige Funkanlage", aber ich glaube die Daten sind veraltet. Dafür passen die Daten einfach zu gut. 3,6km Entfernung konnte ich per [Google Maps berechnen](https://support.google.com/maps/answer/1628031?co=GENIE.Platform%3DDesktop&hl=de)

Was auch schön ist: In der EMF-Datenbank steht die Höhe der Anlage. Ich habe also zwei Koordinaten aber noch keine Ahnung ob eine direkte Sichtverbindung besteht. Aber den Winkel dieser Linie konnte ich berrechnen. Damit ist jemand vor Ort in der Lage, in eine sehr spezifische Richtung zu schauen. Und das haben wir dann auch gemacht. Und siehe an! Es gibt eine direkte Sichtverbindung vom Dach des Gebäudes :)

Wer diesen Luxus nicht hat, kann dieses [Tool für Höhenprofile zwischen zwei Punkten](http://geo.ebp.ch/gelaendeprofil/) nutzen. Das hilft bei Baumwipfeln auch wenig, aber es ist ein Anfang. Vergesst dabei nicht, die Höhe der Sendeanlage und des Gebäudes mit einzuberechnen.

Fazit: Die Daten sind verfügbar, wenn auch nicht leicht zugänglich.
]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Meine Projekte wandeln sich]]></title>
            <link>https://www.oliverlorenz.com/2018/05/04/meine-projekte-wandeln-sich/</link>
            <guid>https://www.oliverlorenz.com/2018/05/04/meine-projekte-wandeln-sich/</guid>
            <pubDate>Fri, 04 May 2018 00:00:00 GMT</pubDate>
            <content:encoded><![CDATA[Ich beobachte gerade wieder eine persönliche Veränderung bezüglich meiner Projekte die ich angehe.

1. Stufe: Früher habe ich 1000 Projekte gehabt. Alles parallel und nicht eines davon fertig gemacht. Das lief viele Jahre so. Ich habe in der Zeit viel gelernt und ausprobiert, aber eben auch eben nicht viel produktive Endergebnisse produziert.

2. Stufe: Irgendwann habe ich realisiert, dass "nur" daraus lernen eigentlich nicht produktiv ist. Zumindest hole ich damit nur 50% aus den Projekten heraus, was sie eigentlich hergeben würden. In dieser Zeit sind einige Open-Source Projekte entstanden, aber auch größtenteils im Sande verlaufen. Solange andere Leute davon profitierten, war ich aber motiviert und bin dran geblieben. Außerdem reduzierte ich die Projekte drastisch.

3. Stufe: Noch später habe ich irgendwann in meinen Glaubenssätzen verankert, dass niemand alle Talente in sich vereint. Und das ist auch völlig Okay. Also habe ich mir einen Partner gesucht um eine Idee voranzutreiben. Diesmal auch mit klarem Monetarisierungsziel. Das hat mich viele Monate bei einem einzelnen Projekt bei der Stange gehalten, bis es dann leider aus anderen Gründen auseinander ging.

4. Stufe: Ich habe verstanden, dass es mir hilft mit jemandem zusammenzuarbeiten. Ideen habe ich ja immer viele. Also habe ich mich mit jemandem anderem Zusammengetan und wir werkeln als 2 Techis gemeinsam an einem Projekt in unserer Freizeit. Das läuft nicht so richtig gut. Beide haben wenig Zeit und wir können uns wenig unterstützen. Oft warten wir auf den anderen. Das zieht meine Motivation nach unten.

5. Stufe: Nun. Ich arbeite gern mit Leuten, aber fehlender Fortschritt durch warten auf andere demotiviert mich. Was nun? Ich habe entschieden einen Schritt zurück zu machen und ein paar Dinge anders zu machen. Mein aktuelles Projekt ist klein, hat bereits eine Userbasis von ca 10 Leuten, ist technisch nicht unendlich anspruchsvoll und langfristig monetarisierbar. Um das aber hinzubekommen brauche ich später Leute. Und das ist aktuell mein Plan. Ich bootstrappe mit meiner Idee auf der Technik-Ebene. Das gibt mir später die Freiheit mich auf unbekanntes Terraint zu wagen.

Wir werden sehen ob das alles klappt.]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[The Way To New Work]]></title>
            <link>https://www.oliverlorenz.com/2018/05/03/the-way-to-new-work/</link>
            <guid>https://www.oliverlorenz.com/2018/05/03/the-way-to-new-work/</guid>
            <pubDate>Thu, 03 May 2018 00:00:00 GMT</pubDate>
            <content:encoded><![CDATA[Ich habe mal wieder einen empfehlenswerten Podcast gefunden. [The Way To New Work](https://www.onthewaytonewwork.com).  

Die haben außerdem eine auf den ersten Blick sehr gute [Auflistung von Literatur](https://www.onthewaytonewwork.com/buecher/) zu dem Thema.]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Reise-IT Lorenz]]></title>
            <link>https://www.oliverlorenz.com/2018/04/02/reise-it-lorenz/</link>
            <guid>https://www.oliverlorenz.com/2018/04/02/reise-it-lorenz/</guid>
            <pubDate>Mon, 02 Apr 2018 00:00:00 GMT</pubDate>
            <content:encoded><![CDATA[Über Ostern haben wir meine Eltern besucht. Wir waren unter Anderem wandern, um uns auf die großen Wanderungen dieses Jahr vorzubereiten. Meine Schwestern haben sich vorgenommen fast 3000km an der spanischen und französischen Küste entlang zu Wandern. In unter einem Monat geht es los.

Meine Schwestern freuen sich schon sehr. Meine Eltern und Großeltern sorgen sich aber sehr und hoffen, dass alles gut geht.

Glücklichweise leben wir in Zeiten wo es EU-Roaming gibt, das heißt potenziell gibt es überall Internet. Somit war schnell die Idee geboren, dass meine Schwestern ihren Standort übertragen könnten. Nicht nur zur Beruhigung meiner Großeltern, sondern auch, damit sie ihre Route im Nachhinein selbst nachvollziehen können.

Als alter IT-Hase weiß man natürlich, dass man nicht alles selbst machen muss. Mit [Owntracks](http://owntracks.org) gibt es bereits eine App die den Standort per MQTT an einen Broker überträgt. Mit der Freunde-Funktion kann man außerdem sehen wo sich die Angeschlossenen Leute befinden. Perfekt für meine Schwestern als Produzenten und meine Eltern und Großeltern als Konsumenten.

Was fehlt ist ein Backend der die Daten dauerhaft speichert. Und eine Oberfläche  wo man den Verlauf sehen kann. Mit [ot-recorder](https://github.com/owntracks/recorder) ist ebenfalls bereits ein Projekt verfügbar, welches dieses Problem löst. Für mich ist also fast nichts mehr zu tun 😉

Nachdem diese Infrastruktur an einem Abend eingerichtet war und dies von außen sehr einfach aus sah, kamen aber schnell neue Wünsche. "Können wir nicht auch die Fotos auf der Karte anzeigen?" Klar! Klar, kann man alles machen. Und ich hab Spaß dran 🙂 Ein wenig Familien-IT kann keiner Familie schaden 😃

Natürlich können meine Schwestern das Location-Tracking jederzeit abschalten.]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Drogenkonsum]]></title>
            <link>https://www.oliverlorenz.com/2018/03/29/drogenkonsum/</link>
            <guid>https://www.oliverlorenz.com/2018/03/29/drogenkonsum/</guid>
            <pubDate>Thu, 29 Mar 2018 00:00:00 GMT</pubDate>
            <content:encoded><![CDATA[
Ich frage mich zunehmend, ob ich die letzten 29 Jahre in einer heile-Welt-Blase gelebt habe. Um mich herum reden Leute immer öfter offen über Drogenkonsum.

Und die Frage ist, was hat sich geändert? Das Umfeld in dem ich mich bewege? Die Altersgruppe in die ich nach und nach eintrete, die offener wird? Die Hemmschwelle der Leute weil die Szene vielleicht größer wird? Vielleicht liegt es an der Stadt in der ich lebe?

Ich meine: Macht was ihr wollt, solange ihr niemandem schadet und mir nicht einreden wollt, dass ich das unbedingt probieren muss.

Für mich fühlt sich das einfach schräg an, dass es irgendwie so in der Mitte der Gesellschaft angekommen zu sein scheint und es dargestellt wird als wäre es wie jede andere Freizeitbeschäftigung. Auf der anderen Seite kommen mir die Leute auch so erschreckend normal und Bodenständig vor.

Ich hab da abschließend keine Meinung zu. Aber es stimmt mich nachdenklich.]]></content:encoded>
        </item>
        <item>
            <link>https://www.oliverlorenz.com/2018/03/24/title/</link>
            <guid>https://www.oliverlorenz.com/2018/03/24/title/</guid>
            <pubDate>Sat, 24 Mar 2018 16:27:00 GMT</pubDate>
            <content:encoded><![CDATA[
Heute waren im Raakmoor bei Hamburg wandern. Wir versuchen uns auf die zwei größeren Touren in diesem Jahr vorzubereiten und tasten uns gerade ein bisschen an unsere Grenzen ran. Nachdem Ronny uns das letzte Mal schon tatkräftig beim Einkauf geholfen hat, haben wir heute zum ersten Mal unsere Ausrüstung ausprobiert.

Wir wollten ein bisschen ins Grüne. [https://www.hamburg.de](https://www.hamburg,de) hat uns geholfen eine grobe Location ausfindig zu machen. Außerdem haben wir uns vorgenommen, die Rücksäcke zu beschweren, sodass wir so langsam ein Gefühl dafür bekommen, was das auf uns zu kommt. Natürlich sind wir jetzt noch nicht mit 12-15kg auf unsere erste Tour gegangen. Aber mit 9kg Gewicht und dem höchsten Berg Hamburgs mit 103m als Ziel fanden wir einen ganz guten Einstieg zu machen.

* [die Tour bei Komoot](https://www.komoot.de/tour/28129049/embed?profile=1)

Am Ende sind wir aber nun auch ganz schön fertig. Unsere täglichen Laufwege sind bei weitem nicht so lang und üblicherweise ist auch unser Gepäck nicht so schwer. Der Berg in der Mitte war fast schon eine Grenzerfahrung, hat uns aber gut aufgezeigt, dass wir noch um einiges fitter werden müssen. Insgesamt war es aber ein sehr schöner Ausflug :slightly_smiling_face:
]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Als Entwickler bei einer Recruiting-Firma]]></title>
            <link>https://www.oliverlorenz.com/2018/03/23/als-entwickler-bei-einer-recruiting-firma/</link>
            <guid>https://www.oliverlorenz.com/2018/03/23/als-entwickler-bei-einer-recruiting-firma/</guid>
            <pubDate>Fri, 23 Mar 2018 12:00:00 GMT</pubDate>
            <content:encoded><![CDATA[
Mein aktueller Kunde ist eine Recruiter-Firma. Ich habe mich schwer mit dieser Entscheidung getan, denn bisher war ich einfach, wie wahrscheinlich viele Entwickler einfach nur genervt von der puren Masse von Nachrichten die da rein kommt.

Nun eines Vorweg: Daran hat sich nichts geändert. Ich bin immer noch genervt von der Masse. Aber ich lerne gerade die andere Seite der Medaille kennen und das gibt mir Hoffnung. Denn anders als ich bisher gedacht habe, sehen die Firmen auch, dass es nichts bringt immer wieder die Leute "falsch" anzusprechen. Die Antwort-Quote bei Entwicklern ist so gering, dass sie wirklich nur mit Samthandschuhen angefasst werden. Eine iterative Verbesserung kann auch nur begrenzt stattfinden, denn die Antwort-Quote ist sehr gering und wenig Aussagekräftig.

Wenn ihr also wollt, dass ich nicht mehr mit unpassenden Angeboten zugespammt werdet, antwortet den Leuten mit Feedback, mit denen sie etwas anfangen können. Wenn ihr, wie ich JavaScript und NodeJS im [Xing-Profil](https://www.xing.com/profile/Oliver_Lorenz29) stehen habt, dann kommen viele Frontend-Jobs rein, wofür ich z. B. aktuell nicht gut geeignet bin. **Sagt den Leuten das!** Die pflegen das in ihre Systeme ein und ihr fallt im Ranking für bestimmte Jobs. Ihr seid eine Black-Box! Alles was die haben ist euer Xing-Profil und Statistiken. Und auch wenn es anstrengend ist, das ist meiner Meinung nach der einzige Weg den "Spam" mittelfristig zu reduzieren und euren Aufwand zu reduzieren.

Ach und noch was: Hass-Mails nützen niemandem. Verschwendet nicht eure Energie in einer Wall-of-Text Leute zu beschimpfen. Die versuchen auch nur ihren Job zu machen. Antwortet von mir aus kurz aber mit Feedback.

Ich hätte selbst nie gedacht, dass ich mal einen Blog-Post zugunsten der Recruiter schreibe, aber wie so oft hilft der Wechsel der Perspektive! :slightly_smiling_face:
]]></content:encoded>
        </item>
    </channel>
</rss>