OnePlus 8 Pro: Erster Eindruck

Heute kam das OnePlus 8 Pro bei mir an. Deutlich schneller als erwartet. Die Ersteinrichtung ist wie bei allen Android-Telefonen eine Sache von wenigen Minuten, inklusive der wichtigsten Anwendungen wie Nextcloud, AndOTP, Keepass2Android und MailDroid.

Anschliessend hab ich zwei SchnappschĂŒsse mit der Kamera gemacht, bei normalem Licht im Wohnzimmer:

Der Fokus auf dem normalen Bild ist natĂŒrlich falsch auf einer der hinteren BlĂŒten gelandet, aber in der Nahaufnahme sieht man die Details sehr schön.

Übers Wochenende werde ich natĂŒrlich noch ein paar Fotos und wahrscheinlich auch ein Workout Video machen. Das Ergebnis gibt’s dann wieder in einem Update hier im Blog. 😀


Move React files into custom directories

This morning I tried to rebuild my instapaper clone for Nextcloud from PHP and plain javascript to React, but I needed to move the compiled javascript and CSS files into a custom directory structure for the nextcloud app release. I’m using create-react-app and react-app-rewired and apparently there is no simple way to modify the output directory „build“ to something different.

To avoid additional tools and steps in my process, I decided to write a piece of javascript and execute it with node after building my app via npm. To do this I created the following file move.js next to package.json:

const path = require('path');
const fs = require('fs');

const build = path.resolve(__dirname, 'build');
const target = path.resolve(__dirname, '..');

const errorLogger = (err) => err && console.log(err);

[path.join(target, 'js'), path.join(target, 'css')].forEach(dir =>
  fs.readdir(dir, (err, files) => {
    if (err) throw err;
    files.forEach(file => fs.unlink(path.join(dir, file), errorLogger));

// copy javascript+css into custom directories
fs.readdir(build, (err, files) => {
  if (err) throw err;
  // copy javascript+map files
  files.filter(file => {
    return file.endsWith('.js') || file.endsWith('.map');
  }).forEach(file =>
    fs.copyFile(path.join(build, file), path.join(target, 'js', file), errorLogger)
  // copy CSS files
  files.filter(file => {
    return file.endsWith('.css');
  }).forEach(file =>
    fs.copyFile(build + '/' + file, target + '/css/' + file, errorLogger)

Now I can modify my npm scripts in package.json:

"scripts": {
  "build": "react-app-rewired build && node move.js"

When running npm build the files are now copied into the proper directories for JS and CSS in my nextcloud app structure.


Updating the URL in your wordpress feed

Today I noticed that my feed did not have the correct URL in the element atom:link because I run my installation of wordpress behind a reverse proxy. There are several things that can go wrong when using this setup, and this seems to be another one which is not documented anywhere…?

I added a new filter to my theme functions:

add_filter('self_link', 'CustomFeedUrlFilter', $priority = 10);
function CustomFeedUrlFilter($url) {
    return home_url() . '/feed/';

I’m now pulling the URL I configured as my WP_HOME from the database and overwrite any value coming from the original installation. This is possible because wordpress already runs the link through the filter self_link when generating the feed.

I don’t know why it’s so complicated to run behind a reverse proxy, but I hope this will get easier in the future. It’s the default setup when using containers, which means basically all cloud infrastructure at this point. I think there are some more things still broken, because sometimes I get redirected to the wrong URLs when I click links in the admin UI, i.e. when moderating comments. đŸ€·â€â™‚ïž


Bestellt: OnePlus 8 Pro

Es wird langsam Zeit, mein aktuelles Smartphone Sony XZ Premium durch ein neues Modell zu ersetzen. Nach ein paar Tagen Recherche habe ich mich entschlossen, das neue OnePlus 8 Pro zu bestellen.

Ich hatte letztes Jahr schon mit dem 7 T Pro geliebĂ€ugelt, allerdings war es mir noch etwas zu frĂŒh, das Sony auszutauschen. Aber ich hatte darauf spekuliert, dass OnePlus dem 7er wieder ein ordentliches Upgrade spendieren wird und das war auch so. Jetzt bin ich also nach 6 Jahren wieder zurĂŒck bei OnePlus. 😎

Der Versand soll nĂ€chste Woche starten und das Telefon wird vor dem 05. Mai bei mir ankommen – so die Notiz bei der Bestellung. Ich hab natĂŒrlich das schwarze Modell genommen. Leider kann man keine microSD Karte mehr in das Telefon stecken, aber im Moment komme ich auch mit 2x 64GB aus, also werden die 128GB im 8 Pro wohl auch ausreichen…

Ich bin gespannt, wann das Telefon kommt und ob ich wieder so zufrieden damit sein werde, wie mit dem OnePlus One und meinem jetzigen Sony XZ Premium.


So hilft Deutschland

Es gibt zwei Meldungen, die ganz gut zeigen, welche Art von Hilfe Deutschland zu leisten bereit ist.

Trotz Corona-Pandemie dĂŒrften je 40.000 Saisonarbeiter aus Osteuropa im April und Mai nach Deutschland einreisen, teilte Landwirtschaftsministerin Julia Klöckner mit.


Und dann das hier:

Die deutsche Regierung bleibt auch auf Nachfrage vage. Es ist noch nicht einmal klar, ob Deutschland 400 MinderjÀhrige aufnehmen möchte oder mehr oder weniger.


In den Medien war auch oft von 150 Kindern zu lesen, die Deutschland aufnehmen will. 150. Also 10 pro Bundesland. Wieviele das pro 100000 Einwohner sind, will ich gar nicht ausrechnen.

Hauptsache die Erntehelfer kommen, damit der Spargelpreis nicht steigt…

P.S. Ja, ich weiß. Es gibt auch andere Beispiele von Hilfsbereitschaft, aber es sind wenige, bei denen es nicht um wirtschaftliche Hilfe geht.


MobilitÀtsbericht von Google

Google stellt seit ein paar Tagen MobilitĂ€tsberichte zur VerfĂŒgung, die VerĂ€nderung der Bewegung der Nutzer zeigen. Kategorisiert werden die Berichte nach Land und z.B. Grocery & pharmacy.

Auszug aus dem Mobility Report fĂŒr Deutschland. Zeigt -77% Bewegung fĂŒr "Retail & recreation", -51% fĂŒr "Grovery & pharmacy".

Alle verfĂŒgbaren Reports sind unter https://www.google.com/covid19/mobility/ zu finden. Ein Blogpost beschreibt die Einzelheiten.

Bei arstechnica gibt es auch noch einen Blogpost, der eine Einordnung der Zahlen versucht. Ein paar Dinge sind ĂŒberraschend, wie die Schwankungen bei Bewegungen in Parks, die nicht ĂŒberall hoch bzw. runter geht. Ich habe mir auch den Report fĂŒr Italien angesehen und wie erwartet ist die VerĂ€nderung in der Bewegung dort extrem.

Wer Interesse an Zahlen und Graphen hat, der sollte sich die Reports auf jeden Fall ansehen.



Seit 2 Wochen geht der Coronavirus SARS-CoV-2 (COVID-19) durch die Welt. Mittlerweile ist er auch in Deutschland großflĂ€chig angekommen und Schule, Ämter und öffentliche Veranstaltungen sind geschlossen.

Mein Arbeitgeber hat beschlossen, den Mitarbeitern freizustellen, ob sie zuhause arbeiten oder ins BĂŒro kommen. Da auch die Schulen geschlossen bleiben, hilft diese Regelung hoffentlich auch den Kollegen mit Kindern bei der Betreuung.

Das klappt natĂŒrlich nicht fĂŒr alle Mitarbeiter, aber fĂŒr mich und meine unmittelbaren Kollegen stellt das keine Schwierigkeit dar. Ich werde also erstmal zuhause bleiben und vermeide damit eine Menge BerĂŒhrungspunkte in ZĂŒgen, U-Bahnen und auf dem Hamburger Hauptbahnhof.

Wie lange dieser Zustand andauert, weiß ich nicht. FĂŒr mich ist das aber keine große Umstellung und ich wĂŒrde es begrĂŒĂŸen, wenn in Deutschland der Wert von Remote Arbeit in Zukunft auch etwas höher angesehen wird. Leider leben die Arbeitgeber in Deutschland da immer noch in der Vergangenheit… đŸ€” Vor allem in meiner Branche sollte es eigentlich mittlerweile eine SelbstverstĂ€ndlichkeit sein, dass man nicht in einem BĂŒro sitzen muss.

Ich verfolge die Entwicklung weiter, aber ich informiere mich eher aus Quellen wie das oben verlinkte Robert Koch Institut, statt aus TV & Zeitungen. Wie hoch die Zahl der FĂ€lle wirklich ist und wie schwerwiegend der Verlauf, kann man sowieso nur rĂŒckwirkend sagen.



Heute war das Wetter dann wieder etwas besser und die Sonne schien, langsam wird es wirklich FrĂŒhling.


KubeConEU wurde verschoben

Eigentlich wollte ich Ende MÀrz zur KubeConEU. Durch die letzten Meldungen zur Grippewelle und COVID-19 hatte ich mich schon gefragt, ob die Konferenz wirklich stattfindet bzw. ob ich wirklich an einen Ort möchte, an dem viele Menschen aus vielen LÀndern zusammenkommen. Die Entscheidung wurde mir jetzt abgenommen: die Konferenz wurde auf Juli/August verschoben.

The health, safety, and wellbeing of our attendees and staff are our highest priority, and we know that what makes KubeCon + CloudNativeCon such a great event is the people who gather there. Thus, after discussions with many community members, we have made the difficult decision to postpone KubeCon + CloudNativeCon Amsterdam (originally set for March 30 to April 2, 2020) to instead be held in July or August 2020.


Erste Lichtblicke

Das Jahr war bisher verregnet, dunkel und grau. Heute gab es erste Lichtblicke, es war etwas wÀrmer und es hat zwischendurch auch mal nicht geregnet.

Baumaschienen am Strand