Next steps in Self-Hosting (pt 2)

In part one I spoke about the start of my journey, which was driven by playing with my smart home playground on topics of energy saving. My home servers have been in place since 2018 – yet, one thing I could never fully solve was how to make it available outside of my home network. For people into DevOps there will be little new here, but I’m no DevOps guy, so I had new things to discover I’d like to share.

So my challenge was to make my home server available via the internet, without making it public.

I was toying with a DynDNS setup at one point, but I never felt comfortable with exposing the full device to the internet. I know my way around Linux, but server security can become a bigger beast. I also didn’t want to invest in a virtual private server setup for this.

This is where Tailscale was a small revelation to me.
Tailscale is a service provider for virtual private networks. Basically, you install client apps on your devices building a virtual network and making machines available even when they are physically apart.
For example, I’m traveling and by flipping a switch on my phone, I see my PCs, my home server, my second phone, and I can access them as if they were in the same room with me. Each device gets a fixed IP and URL in the network and becomes way easier to access than remembering IPs and ports. I could add the Tailscale client to my Home Assistant OS running Raspberry and can access it from everywhere, as long as the Tailscale client is running on my device.
This was straight forward.

Schema of a Tailscale network. You have your home network at … home. This runs different services and has different devices. The home network is made available in your tailscale network either by having clients on your devices, or by inviting other people and their tailscale clients.
Anyone who is not explicitely invited has no access.

What took me some time to learn was integrating not only physical devices, but also virtual containers. What is a virtual container? Basically, systems like Docker or Podman simulate a very slim computer environment specifically set-up and optimized to run one particular software stack. For example I can set up a web blog with the client frontend, backend server and database – each running isolated in their own Docker containers – easy to scale. Here you can find more about the basics of Docker and how to get into it step by step.
I had my first contact with Docker in 2018, but never got around to fully embrace it until now, but grew to love docker-compose quickly. This allows you to create and find recipes to quickly set up full tool stacks easily and self-host your own software infrastructure.

So I was playing and eventually fell into the sweet hole of self-hostable apps, extending my personal toolchain – especially for services for which I never found a good replacement. Now I run my Commafeed RSS reader, a gitea for my most private git projects, Jellyfin as a small media server and netflix alternative, Invidous giving an alternative frontend to Youtube and finally Immich.

What is Immich? I wanted to get rid of Google Fotos. I used the service for a long time with much appreciation, but eventually wanted to have more control over my data on the eve of Google using its foto database for AI training, I wanted to withdraw my pictures and also have better organized backups.
The easiest alternative I can recommend is ente.io which also comes with more tools around data security and multifactor-authentication (MFA). This option is simple to switch to, but still your data is not in your own infrastructure.

Immich has very similar functionality to Google Fotos and quick to set-up with Docker.
You can import your existing fotos either as an external library (very straight forward and simple, but at the cost of small limitations around cleanup options) or by importing all pictures via the API by uploading through the the web interface, the Mobile API, command-line scripts or additional tools like Immich-Go. My photo library has been growing in my filesystem since 2002 and while it is generally well maintained, it slowly became messy, incomplete, metadata was lacking and suffered from duplications. These were all topics Immich and its extended toolchain helped to address.
That is, if the photographs are imported in the “right way”. For me it involved three attempts on my side as image duplications on upload, mistaken metadata and lack of testing my own cleanup scripts (xD) caused several broken attempts with Immich. The software is stable and good, but my ambition in cleaning my library was just too big. May the backups be thanked – these setbacks did not cause any data loss – just wasted time. On the third attempt it worked well.up. I picked Immich as one example, but there are plenty more tools available to self-host and especially play nice with Tailscale.

Immich runs on my NUC 11 in a Docker-Compose setup and thus was now available in my home network, but again I wanted it accessible when I’m away from home. This is where we come back to Tailscale.
Above we only added physical machines to Tailscale, but it is also possible to add virtual containers to the private network. Each container becomes available as its own machine which now becomes available to everyone in your network to access.

Everyone? Oh, yes, I forgot. You can share your private applications in two ways.
You can invite up to 3 people (in the personal free account) to your network and they can have access to all machines if you allow it. Alternative you can share access to single machines to people who already run their own Tailscale network. This way you and your peers are building their own private little part of the internet hosted on your own infrastructure. You can also define machines as exit nodes and thus create your own little distributed VPN. Invite trusted friends over the world and you can run traffic through each other’s exit nodes and now I can watch German Netflix and my friends in Germany can watch Austrian ORF.

Tailscale is providing a good bundle to start your DevOps networking journey. All it offers can be done in other ways with less reliance on a central service orchestrating this network as Tailscale does. However doing this this manually is difficult, complex with a high risk of mistakes that compromises data security – these are factors I’d like to entrust to experts. Tailscale also has a learning curve, but one that is much faster to handle to get into the basics.

Through Tailscale and Docker I have a new toolchain that runs at home, that I have a lot of control over including full ability and responsibility to backup. I picked Immich as one example, but there are plenty more tools available to self-host and especially play nice with Tailscale.

In my next article, I will look into another example, that grew out of Docker and Tailscale at work and that describes a self-hosted alternative approach to a Data Intelligence pipeline in the context of a non-technical company.

My first steps in home automation (Pt1)

I have not been writing code for a year, but my current job is still about providing and choosing technical solutions based on requirements and context. While the company I work for has a strong direction towards GenAI and Microsoft solutions (who doesn’t…), in my private projects I look into the other direction of Small Web, Decentralisation, Self-Hosting and the Rot economy of Tech these days. This also proofed a good opportunity to dive deeper into Home Automation and Docker. It’s an ongoing process, but here I’d like to talk about a few pet projects I did in the last year.

It started back in early summer 2023, I got myself some Shelly smart plugs , installed [Home Assistant]() and began to measure my energy consumption. This ran on my mini-pc – a small Intel NUC 11 Performance – I had been using for a year for backups, but little else. The NUC was an upgrade from a RaspberryPi 3 running dietpi I used for the same purpose. For convenience sake I kept using dietpi also on the NUC 11.

By measuring energy consumption, replacing inefficient devices (ffs get rid of old light bulbs!) I was able to reduce my already low energy consumption by another 20%. Having this visually not only helped reducing total consumption, but also shifting consumption to times windows which are either cheaper by having a lower hourly price or by optimizing for lowest CO2 usage by consuming when most renewable energy is in the grid. Often this coincides with low prices, but not always.

Since working on energy projects professionally and switching to a dynamic energy tariff in February I have been looking more into energy topics. In between I tried to build a predictor that could guesstimate the energy prices for upcoming days based on weather and other factors, but eventually I realized, that this is fruitless as the prices is a negotiated market price based on consumption expectation across all of Europe. To say it simple: the price is not only caused by weather, it’s set to provoke and steer market reaction. I have not the data to predict that.

What is more helpful is experience. On average daily energy is cheapest during the week between 3-4am and 11-2pm. Avoid the 6-8pm evening peak. On the weekend, consume between 11-4pm – sometimes you are lucky and zero to negatives prices. By timing dishwasher and washing machine accordingly, 50% of my consumption falls into the cheapest times.
On a regular day, I have 2kWh consumption split with laundry, kettle and dishwasher each at about 1kWh per run being the most hungry devices. Another 1kWh falls to my Tech and I can see in my consumption, when I run the gaming PC with VR. Despite my below-average consumption, I have been dancing around getting a balcony solar-installation for almost a year. At 300€ these have become sooo cheap… story for another day.

I managed all smart home devices in Home Assistant. in the beginning, this ran on the NUC managed by dietpi. Eventually in Spring this year I reactivated the raspberry after all, to run Home Assistant OS on it instead. This offers some more customization and supervising options, necessary to install more custom plugins and integrations.
Add the Home Assistant App to this and you have a neat remote for your home.
I stopped tinkering here with Home Assistant at this point, although topics like MQTT data broadcasting are still on the list of things I’d like to checkout one day.

Home Assistant at this point was in my local network and only accessible at home. How to make it available remotely and what other infrastructure I started hosting at home, I’ll cover in part two.

Henlo, I bims neurodivers

Ein Kessel, der ständig überhitzt, unter Druck steht und das erste Mal abkühlt.
Die Welt läuft 5% langsamer und erstmals in der selben Geschwindigkeit wie ich.
Eine neue Ruhe im Körper – die Anspannung ist weg.

Elvanse lag 8 Monate in meinem Schrank. Zwei Pillen sind einer lieben Freundin vom Laster gefallen für “wenn ich mal schauen will, was an ADHS dran ist”.
Seit dem schob ich es immer vor mir her, dieses Experiment zu beginnen.

Dann kam der März. Am Ende meines ersten Experiment-Tages, schilderte ich ihr meine Eindrücke und sie schrieb trocken “Willkommen bei den Neurodiversen”. Elvanse ist ein Amphetamin, eine Stimulanz – mit einem neurotypischen Gehirn, wäre ich an dem Tag aufgedreht durch die Gegend gesprungen. [1] Stattdessen war ich ruhig, entspannt und konnte das erste Mal seit langem drei Stunden konzentriert arbeiten. Alles war zugänglicher, eine komplett neue Körpererfahrung.
Damit war es klar. Ich habe ADHS.

Seitdem habe ich meine offizielle Diagnose und ich rede regelmäßig drüber. ADHS endlich bestätigt zu haben ist für mich auch ein Coming-Out. I come in pride.
Neu ist mir das Thema nicht, Freunde hatten schon lange die Vermutung und ich wusste ebenso lange, wie ich mich in dem Thema wiederfinde. Gleichzeitig fühlte ich mich wohl Schrödingers ADHSler zu sein und nicht klar als neurodivers oder neurotypisch eingeordnet zu sein. Nun ist diese Einordnung eindeutig.

Die Reaktionen in meinem Umfeld waren fast durchgehend in einem von zwei Lagern:
Das “No, shit sherlock”-Camp, dass als Erstes fragte, ob die Diagnose für mich überraschend sei.
Dem gegenüber steht das Lager “Rehblick” – Menschen, die mich mit großen Augen überrascht und verständnislos anschauen. Deren erste Frage einfach ist, wie es mir damit geht. Danke sehr gut.

Seit dem Sommer hab ich die offizielle Diagnose und bekomme meine eigenen Medis. Ich bin aufgewachsen als jemand, dem immer eingetrichtert wurde mit Medikamenten solange zu warten, wie es geht. Dies lege ich langsam ab. Für Menschen mit Sehschwäche ist eine Brille ein total normale Hilfe. Für Menschen mit einem anders verdrahtetem Gehirn, sind halt Medikamente die Sehhilfe. Ich hab lang genug gezeigt und bewiesen, wie weit ich ohne komme und zu welchem Preis.

Ein Thema, nach dem ich auch gefragt werde ist, ob ich mit Medikamenten nicht die “Fähigkeiten” verliere, die mich aus machen, bzw die ADHS mir gibt. Ich bin top organisiert, super Problemlöser und klasse in Analyse, Pattern-Matching und letztlich vielseitig und kreativ. Ja, den Gedanke, das zu verlieren hatte ich auch, jedoch hörte aber von allen Seiten, dass dies nicht passieren wird. War auch nicht so. All dies blieb Teil von mir, ich gewinne aber Fokus um es besser umsetzen und stärken zu können.

Trotzdem ist es natürlich nicht nur rosig. Ich freue mich über die Diagnose und die Möglichkeiten nun Erleichterung zu finden. Ich sehe auch, wo ADHS mir in den letzten 30 Jahren viele Steine in den gelegt hat. Manche konnte ich selbst von alleine navigieren – andere nicht. Ich bin stolz, was ich in der Zeit alles hinbekommen habe und es gibt trotzdem auch Momente der Trauer, was mir verwehrt blieb und, dass diese Diagnose Teil meines restlichen Lebens sein wird. Einige Dinge werden niemals leicht werden und ich weiß, wie ich manche Themen derzeit auch noch nach hinten schiebe, wo ich selbst eine neue Position entdecken muss, bzw meine Alte reflektieren werde.

Ich dachte vor 6 Monaten es würde jetzt ein ewig langer Side-Quest beginnen, bis ich Diagnose und die Verschreibung habe. Aber ich bin sehr glücklich, dass durch gute Vernetzung und die Hilfe toller Menschen, alles sehr schnell ging. (Therapeuth*Innen, hört auf die Selbstdiagnose eurer Neurodiversen.)
Darüber bin ich sehr dankbar und nun nach einem halben Jahr kann ich mir nicht mehr vorstellen, wieviel Lebensqualität ich ohne die Medikamente auf der Strecke ließ.

[1] Eine andere Freundin schrieb später, sie hätte ADHS herausgefunden als sie gerade feiern war, sich Amphetamine einwarf und wunderte, warum sie plötzlich so hochkonzentriert und fokussiert ist.

n8n – “Invalid DateTime” error on time processing

Over the past week I have been playing with a self-hosted instance of n8n – a Zapier-like automation platform. I quickly ran into an issue, that took a while to debug and I’d like to share my solution here.

I run a pretty standard docker-compose setup.

services:
  n8n:
    image: n8nio/n8n:latest
    ports:
      - "5678:5678"
    environment:
      - GENERIC_TIMEZONE="Europe/Berlin"
      - DB_TYPE=postgresdb
      - DB_POSTGRESDB_HOST=n8n-db
      - DB_POSTGRESDB_PORT=5432
      - DB_POSTGRESDB_DATABASE=n8n
      - DB_POSTGRESDB_USER=n8n
      - DB_POSTGRESDB_PASSWORD=n8n
    volumes:
      - "./n8n-node/:/home/node/"
    depends_on:
      - n8n-db
      - warehouse-db
    restart: unless-stopped

[…]

I live in Timezone Europe/Berlin, so I added the timezone ENV-variable.
The container starts fine and I can create workflows.

Now the weird thing was that date/time processing was broken.

Whenever I would create date/time converting nodes or expressions like {{ $now }} or {{ new Datetime("2024-05-12") }} or {{ DateTime.fromISO("2022-12-24") }} it would always bring up an error message Result: [invalid DateTime]

N8n is using Luxon library for date/time processing and I didn’t get why all provided examples where failing. Several searches and debugging did not bring me closer to a solution. I made sure I was using the latest version of n8n.
When I came across this question, where somebody had a similar problem a year ago. This pointed towards the timezone.

I had my time zone configured as:

…
    - GENERIC_TIMEZONE="Europe/Berlin"
–

Which turns out is just wrong… writing it this way has the quotation marks as part of the string thus the timezone n8n was parsing wasn’t ‘Europe/Berlin’. but ‘”Europe/Berlin”‘.
Removing this faulty line, the date/time processing with Luxon worked like a charme!

…
    - GENERIC_TIMEZONE=Europe/Berlin
–

So getting Invalid DateTime means, luxon fails to parse the timezone and can’t return a valid result. You can try this also with unknown time zones like “Europe/Berlin123” – same error.
So fix your time zone config and the error will vanish!

Meine Podcast-Empfehlungen

Seit über 15 Jahren gehören Podcasts zu meinem täglichen Medienkonsum. Da mich auch immer mal wieder die Frage erreicht, welche ich empfehlen kann, gibt es hier meine Liste geordnet nach verschiedenen Themenbereichen. Dabei sind nicht nur aktuelle Podcasts, sondern auch einige Abgeschlossene. Ich finde nämlich Podcasts schließen viel zu selten ab und ihr Ende wird oft viel zu lang hinausgezögert.

Continue reading “Meine Podcast-Empfehlungen”

The Weekly Dependency Chart

In the last 5 years I as Product Manager, I often found myself disliking the common ways on how to express project status and deadlines. They’d either hide important complexity or are a mess to keep up to date. Over time have grown a visualizations technique and meeting format I call the Weekly Dependency Chart. This helped me get structure and overview in projects I inherited, that were complex, late or required reliable schedules. I applied this in several private and professional contexts successfully. It was originally inspired by the Puzzle Dependency Charts used by Ron Gilbert in his adventure games.

The idea is to have a quick high level overview of timelines, to-dos, blockers all lined up in a weekly calendar view. Each item connected to the items it’s dependent upon.
Over time this graph evolved into a meeting structure, you can use to keep the overview up to date while synchronizing the status with the people involved.

Continue reading “The Weekly Dependency Chart”

Holzschemel

Platt drückte sich ihr Hintern auf die Sitzfläche des weißen Holzschemel. Sie merkte die Unebenheiten seiner Oberfläche. Die platzende weiße Farbe täuschte nicht über den abgenutzten Zustand des Holzes hinweg. Der kleine Spalt würde nach dem Aufstehen eine kleine Markierung auf ihrer Wade hinterlassen. Kein Schmerz, aber sie spürte es. Wie das Jucken, dass ein jeder Mensch hat, wer bei geschlossenen Augen in sich reinhört. Sie lächelte.

Sie rutschte etwas, betastete seine Beine. Ihr Blick wanderte ihrer Hand hinterher, wie sie an einem entlang stricht. Dieser sollte es sein. Er war perfekt. Sie nahm die Säge und setzte an.

Drinnen war nichts zu hören. Niemand hegte verdacht.

Kebus – Bus Ticket Apps Near You

Im Dezember war ich eine Woche in der nähe von Neapel unterwegs. Mehrmals kam es, dass ich aus dem Zug ausstieg, direkt in den nächsten lokalen Bus wollte und nicht gefunden habe, wo ich Bustickets kaufe. Es ist aktuell ein ziemliches Elend. ÖPNV-Unternehmen sind entweder gar nicht digital oder jedes hat seine eigene Ticket-App. Ich habe selbst 2021-2022 an der ÖPNV-App in Wien mitgewirkt und kenne die politischen Spiele, die dahinter stehen. Die Unternehmen wollen keine offenen Schnittstellen, sondern selber die Hand über dem Ticketverkauf haben, bauen gleichzeitig aber nicht die nötige Infrastruktur und Know-How auf um dies bequem anzubieten. Das Ergebnis ist, dass jede Stadt, jeder Landkreis, jedes Bundesland unterschiedliche und nicht-miteinander kompatible Apps verwenden. Als Reisender in dieses Trara reingeworfen zu werden ist Scheiße.

Nun war ich in Italien dieser Reisende und die Idee für Kebus kam auf.

Kebus ist eine kleine Web-App, die für deine aktuelle Position die verfügbaren Apps für den öffentlichen Personennahverkehr ausgibt. Derzeit sind etwa 50 Apps für über 60 Regionen enthalten. Das reicht von einzelnen Städten bis ganze Länder – hauptsächlich Europa. Derzeit ist es noch sehr kompakt, es spuckt nur die Apps für die aktuelle Position aus. Es gibt noch keine Suche und Ticketverkauf wird nie enthalten sein. Für mich war es mal wieder ein Pet-Projekt um einige Technologien zu testen. Der Aufwand liegt aber in der Pflege und das ist ohne lokales Wissen durchaus kompliziert. Wie es weitergeht hängt jetzt etwas davon ab, ob ich etwas Traction sehe.

Wenn in deiner Gegend noch keine App eingetragen ist, dann gerne Mail an mich – am Besten welche App für welche Region hinzugefügt werden soll.

Everchords – The Story

Als ich 2014 mit Songwriting began hatte ich ein Problem. Ich lernte in dem ich Songs nachspielte und dafür die Texte und Akkorde nachspielte. An die zu kommen ist meistens nicht schwer, aber die sich auf eine kompakte und nicht-nervende Art anzeigen zu lassen war fast immer unmöglich. Seiten wie Ultimate Guitar, oder ähnliche haben zwar große Kataloge, aber die visuelle Aufarbeitung und UX ist oft mangelhaft. Liedtexte werden meist vertikal dargestellt, Akkorde als Zwischenzeilen – fast immer sprengen sie die Bildschirmhöhe, wodurch Scrollen nötig wird. Das versuchen manche durch Auto-Scroll zu kompensieren, aber geil ist es nicht. Will man die Texte mal ausdrucken ist das Resultat auch eher schwach.

In meinem Songwriting-Prozess, iteriere ich viel über meine Texte. Ich schreibe, ich spiele, ich ändere und das auch oft unterwegs. Tools wie Ukegeeks Song-O-Matic kann man auch selbst hosten und bieten gute Funktionen, aber leider fiel es mir schwer meine Songs zwischen der mobilen Notizen-App und dem Song Editor synchron zu halten. Es brauchte etwas, das beides verbindet.

2015 entstand die erste Version von Everchords, einem schlanken Frontend, dass Evernote als Song-Datenbank nutzt. Notizbücher in Evernotes, die meine Songs als Notizen enthalten werden in Everchords importiert und Everchords bietet dafür eine Oberfläche, diese Songs genau so zu formatieren wie ich es brauche. Ãœber die Zeit wuchs dies ein bisschen, aber nicht massiv. Das Tool sollte immer kompakt und den Focus auf die Song-Inhalte haben. Grifftabellen und Akkord-Diagramme kamen dennoch mit der Zeit dazu.

Die Anbindung von Evernote ist gleichzeitig die größte Stärke und die größte Hürde. Evernote ist zufällig mein Notizentool und bietet im Gegensatz zu vielen anderen eine gute API zum Synchronisieren von Inhalten. Allerdings ist Everchords ohne Evernote nicht benutzbar wodurch eine Nischanwendung noch weiter in seiner potenziellen Zielgruppe eingeschränkt wird. Dies ist letztlich auch der Hauptgrund warum ich es nie größer gezogen oder ein vollständiges Produkt draus gemacht habe. Dies ist ein Tool, für mich, für mein Songwriting und ein Pet-Projekt um bei Programmieren nicht ganz einzurosten.

Warum nun schreib ich davon: Everchords ist nun auf www.everchords.app dennoch online gegangen und ich habe mich entschieden es schließlich doch voll öffentlich for anyone zu machen. Enjoy.

Spiele-Empfehlungen Pre-2020

Schon vor der Pest war ich ein Spiele-Fan und habe die Jahre mit diversen Indie- und Coop-Games verbracht. Da meine letzte Games-Liste gut angenommen wurde, ist hier Teil 2 mit älteren Spielen, die mich vor 2020 begeistert haben.

Wieder gilt, es ist ein kleiner Hang zu Indie- und Story-Games. Die absoluten Blockbuster wie Legend of Zelda – Breath Of The Wild, lass ich hier aus.

Continue reading “Spiele-Empfehlungen Pre-2020”

Spiele-Empfehlungen 2020/2021

Der Beginn der Pandemie platzte mein Plan 2020 einige Monate nach Japan zu gehen spektakulär. Stattdessen verbrachte ich die Pandemie einerseits zuhause, andererseits an vielen Orten, die ich danke der Spiele, die ich im Laufe des Jahres konsumiert habe, besuchen konnte. Ich hab schon vorher regelmäßig gespielt, aber über die letzten 18 Monate war es mehr als vorher. Neben einigen bekannte Blockbustern (Age of Empires, GTA, Tomb Raider), aber auch manche wenig bekannten Perlen, die ich hier gerne weiter empfehlen möchte. Dabei spielt es keine Rolle wann die Spiele erschienen sind. 2020 war nur zufällig das Jahr in dem ich sie in die Hand bekam.

Continue reading “Spiele-Empfehlungen 2020/2021”

Bettlektüre

2013 kaufte ich mir nach einem Konzert von Amanda Palmer eine Ukulele und spielte ab da täglich.
2019 kanalisierte ich ein überaus frustrierendes Jahr in ein kleines Musik-Album namens Bettlektüre.

Songs hatte ich genug. Über die vergangenen fünf Jahre schrieb ich regelmäßig Neue und auch auf der offenen Bühne Ukeboogie aufzutreten brachte den monatlichen Ansporn etwas Neues zu machen. Dabei entpuppte sich drei Uhr morgens als eine meiner kreativsten Zeiten, wenn ich wach im Bett lag und nicht schlafen konnte.

Den Song Mondtherapie hatte ich bereits 2 Jahre vorher geschrieben. Müde öffnete mir die Tür zu einem Klang, in dem ich mehrere Songs fand, die thematisch zusammen passten. Verloren sein, Suchen, Verlust, Heilen und Finden. Passing Places entstand auf einer Fahrt durch die schottischen Midlands, Schweigen am Mekong in Laos und Seher in folge einer Fahrt durch Irland.
Über neun Monate nahm ich die Songs auf, spielte fast alles selbst und lernte zu produzieren. Für manche Songs konnte ich befreundete Musiker dazu holen, für den Gesang buchte ich mich zwei Abende in ein Studio. Am Ende kamen 5 Songs und ein Interlude raus.

Die EP erschien und mit einmal war alles raus und meine Kreativität erschöpft.
Ich legte die Ukulele beiseite und jetzt erst ein Jahr später kann ich in die EP hören und genießen, was ich gemacht habe.

The Not-Always-On Manager

Sunset over Etosha national park

When I started my first job I had a colleague who only worked 4 days a week and I knew, this is something I want to try too. So when I interviewed in my current company, a 36-hour workweek was one of the first conditions we agreed on. Working in Germany, this used to be a regular week length, but for over a decade 40 hours have become the norm. It was a agreed. As a developer, this never posed an issue. As I switched into Product and Project Management, I resisted the expectation to go full-time. What this decision meant for my work, I’d like to share with you.

Reduced time as a developer

Doing a 36 workweek as a developer was easy, because you can work quite independently. As long as everyone could retrace where I am, it was no topic. So I created my “Availability calendar” and put any home office or off hours at least a week in advance in there.

Getting asked if I want to extend my working hours became an annual ritual with my bosses with everyone knowing I wouldn’t do it. Everyone was happy with the arrangement, so why change what’s working.

When I became a Senior Developer I was cautioned — moving into a position of higher responsibility would also mean having to go full-time. We would talk about it when it becomes necessary.

It never happened. I became a Product manager on my 36 hour work schedule. Granted, I’m new to Product management with only 2 years experience at this point, and it was a gradual switch from engineering — no one questioned the existing setup. Eventually, before anyone could ask again, I’d shown the job can be done with my established time management.

Mini vacation once a week

I usually take my four free hours as a block. It’s easier to switch off for me and also for the company to track my work hours. The timing switched over the years though, it was Wednesday, then Thursday, now Friday. It depends on the sprint rituals and other recurring meetings I have to consider.

And of course it also depends on my hobbies. Or when I want to get a good sleep in. Or when I really need to do some household activities, or administrative duties. Being able to manage my private life’s necessities in the 4 hour I take “off” from work, means I have much less disruptions in my work schedule than the average colleague.

The effect of having a mini vacation should also not be forgotten or understated for that matter. I realize after working in this setup for years now, I feel much more refreshed and can perform better over the duration of the whole week compared to when I put in overtime and end up working the 40-hours. It makes a noticeable difference to me, and my company benefits from it too. Burnouts and keeping good mental health in creative jobs are recurring topic nowadays, and having shorter weeks can really help with this too. Everyone wins, yay!

What about my manager job?

It’s important for me that my personal values are reflected in my workplace and my position. Independence is one of those — for my own work and also my colleagues working proficient and autonomous.

As a manager I see myself as the one who enables other people to build awesome things. My task is removing any road blocks my colleagues may have. Being unavailable for a few hours every week, requires them to foster this independence. My colleagues can rely that I’m available on the given times. Outside of work, I leave my phone and Slack off.
If something is blocking them, they know when they can get their answers, or they are creative to work around it and find their own solution that they check with me later on.

This off-time actually helps to find these blockers and eliminate them, thereby growing independence and autonomy in the team.

Another aspec is Parkinson’s law. If you have a work and a given time slot, the work will expand into the time available. Working slightly less hours, forces me to do the job in shorter time and thereby focus on the priorities. And don’t even get me started on the negative effects of working beyond 40 hours.

Crunch time

This all sounds nice and well, but what about deadlines and launch dates? The usual craziness that can be product — I hear you asking.

Let me tell you about the flexibility that comes with a 36 hour arrangement. It’s actually like having a load balancer — when a big release is coming up, of course I pull my part and go 40 hours. I log these as overtime that I take off when times are calmer again. Again, this is about transparency, expectation and supporting the team the right amount at the right time.

From a company point of view, this load balancing has another effect: they have me as a quality employee slightly cheaper, since they pay less hours in total.

Studies have shown, that extra hours per week do not increase the actual valuable output. So I get paid for my working time and not for the additional hours, that creep in during a week. Meanwhile reducing time actually shows many welcomed side effects from health, productivity to traffic.

When does it end?

My current setup is comfortable and privileged. I’m aware that with rising responsibilities it may not hold up forever. At a certain management level, you are expected to be always on and as you care for your projects, you may want to be. Something is always in need of support and you do want to provide that. My goal is to keep on working on strategies to keep my arrangement for as long as possible.

Is this a privilege? Hell yes!

In my working live I inspired at least three colleagues to reduce and be more flexible about their working hours. I have two more Product management colleagues who work only four days.

When I’m talking with Engineering students and mention this, I can see their eyes lighten up. They never considered this option for themselves before. I know for most people in many industries it is not so easy to negotiate their hours. I hope by being transparent about it, I can help make it become a new normal.

So consider this as a topic for your next negotiation. It’s not always about the money, your time is valuable too!

Something to read on:

Kissen

Immer ein gutes Thema, um mich zu einem längeren Monolog zu bewegen ist das Thema “Komfortzone” an zu stechen. Kürzlich hab ich mir neue Kissen gekauft. Eins davon kann ich nicht benutzen, weil es zu warm am Kopf wird. Es ist super flauschig, urst gemütlich und wärmt sich so stark auf, dass ich Kopfschmerzen kriege. Und genauso ist das auch mit der Komfortzone.

Autostop

Ich war 18, ich befand mich im Wald auf einer Landstraße. Es regnete und ich feierte meine sichere Ausmusterung. Ich kam vom Außenstandort der Bundeswehr und war auf dem Weg nach Hause – auf dem Land, eine einsame Straße, und Busse genießen Seltenheitswert. Es war eine gute Stunde in die nächste Stadt zu laufen. Ich steckte feige den Daumen raus in der Hoffnung mitgenommen zu werden. 2-3 Autos fuhren vorbei und das bisschen Mut, was ich hatte, war weg. Ich lief.

IMG_20120908_133242

Ich war 27, stand am Rande einer Straße 30km außerhalb von Limassol auf Zypern. Ich nahm mittags den Bus in die Berge, vergewisserte mich bei jeder Busfahrerin, dass es noch einen Bus zurück gäbe. Es war jetzt 17 Uhr und nach dem angepriesenen 7-Uhr-Bus fragend wurde ich auf 7 Uhr des nächsten Morgen verwiesen. Mein Handy war alle – es so blieb nur, ein Schild zu schreiben und erneut den Daumen aus zu strecken. Das vierte Auto hielt und mit dem ehemaligen 1. Maat eines Containerschiff hatte ich eine überaus spannende Rückfahrt

IMG_20131005_150123

Ein Jahr später, müde nach einem Tag am Autodromo di Monza bei Mailand, schleppten sich ein Freund und ich uns im Nieselregen zur nächsten ungewissen Bushaltestelle. Den Weg zum Bahnhof hätten wir mit unseren eingelaufenen Blasen nicht mehr geschafft. An uns fuhren die Besucher und Marshals von der Rennstrecke, ich war geneigt per Anhalter zu fahren, hatte aber nicht mehr die Kraft meinen Mitstreiter zu überzeugen, dass es eine gute Idee sei.

Ein weiteres Jahr später war ich im Oman bei einem Iren das erste Mal Couchsurfen. Er war großer Fan davon per Anhalter zu reisen und motivierte mich es doch zu probieren – sei ganz normal hier. Ich machte alles falsch, was man falsch machen konnte: stand mit Sonnenbrille am Straßenrand einer viel zu dicht und schnell befahrenen Straße und irgendwann rief ich mir entnervt doch ein Taxi.

IMG_20140212_173814

Dieses Jahr stand ich mit einer lieben Freundin auf einem Fahrradstreifen in Frankfurt, dem Beginn unserer Autostop-Tour nach Paris. Gewohnt aus Berlin erwartete ich jederzeit einen Radfahrer, der uns ankackt, weil wir den Radweg blockieren. Es hielt einer an, sagte, wir stünden hier sehr blöd – die Autos sind viel zu schnell; halten hier niemals; wir sollten besser 3km weiter zur Autobahnraststätte. Dort nahm uns das zweite Auto, das wir fragten, mit und wir waren auf unserem Weg. Der Fahrdienst einer Schönheitsklinik brachte uns mit 240 bis Karlsruhe, von Straßburg fuhr uns ein französisches Paar bis vor die Haustür in Paris. Nach 11 Stunden mit 5 Hopps wurden wir mit Makaronen empfangen.

IMG_20150430_160222 2

Etwas wagen, Grenzen überwinden ist toll und belohnend.

Auf einem Segeltörn wird mir der Floh ins Ohr gesetzt, man könne als Deckshand auf dem Panama-Kanal per Anhalter reisen kann.

Busspur-Hack Neukölln

Meine Weg zur Arbeit geht 7km die Sonnenallee entlang. Mit dem Fahrrad ist dies eine der beschissensten Strecken Berlins, weil eng, unübersichtlich, reich an Verkehr und vor allem: reich an Idioten. Es ist selten, dass ich nicht in eine brenzlige oder ärgerliche Situation gerate, egal wie defensiv ich fahre. Weil ich nicht gleich mit schlechter Laune morgens zur Arbeit will, überlege ich mir daher mehrmals ob ich fahre oder nicht.

Am entspanntesten sind noch die Abschnitte Neuköllns, in denen es keine Fahrstreifen gibt und man sich den nötigen Raum nehmen kann.
Heute morgen hatte ich fast Pipi in den Augen, es wurden in diesen Abschnitten jetzt Bus-Streifen eingerichtet. Bus-Streifen die weiterhin zugeparkt werden.

Ãœber die letzten 2 Legislaturperioden gab es jeweils Anträge in der BVV, der Sonnenallee Fahrradspuren zu verpassen, die jeweils abgelehnt wurden mit dem Verweis auf den starken Durchgangsverkehr. Und überhaupt, denk doch jemand an die Parkplätze! Parkplätze stehen im Artenschutz immerhin noch höher als Arbeitsplätze! Da Radwege so nie durchgesetzt werden konnten, sehe ich hier einen geilen Hack:

Die neue Busspur nimmt 2/3 der Straße in Anspruch. 2/3 der Busspur wird zugeparkt. Damit bleibt ein 2m Fahrbereich, der für Busse zu eng und für Radfahrer perfekt ist.

Vielleicht les ich hier zuviel hinein, vielleicht kommt das Parkverbot ja noch, wenn nicht, dann:
Gratulation, schöner Hack!

Dazwischen

Ich stehe vor Konzertbeginn der Beatsteaks in der Wuhlheide und habe die dumme Idee, eine Nachricht an eine der Nummern, der ich nicht mehr schreiben will, zu senden. Ich stelle eine Stimmung in mir fest, die ich sehr genau 3 Jahre zuvor an eben dieser Stelle bereits hatte.

Ich stand vor Konzertbeginn von Die Ärzte in der Wuhlheide.
Ich mag die Magie, das besondere, die Vorfreude, die Spannung, die Entladung und die Entspannung. Ich bin großer Konzertefan, ohne ständig auf eins gehen zu müssen. Meist ohne Begleitung verliere ich mich in der Menge, wenn ich frei tanzen will. Konzerte sind eins meiner Ventile, auf denen ich ausgelassen bin und versuche den Kontrollzwang abzulegen. Es ist schön sich buchstäblich in, mit und auf der Menge treiben zu lassen.
Wenn ich sage, ich will mit dir auf ein Konzert, ist das ein Vertrauensbeweis, noch mehr wenn es eine meiner Lieblingsbands ist.

Ich stand in der Wuhlheide, mir rasen die Gedanken, ich sehe viele tolle Menschen, die wenigsten gehen alleine und ich frage mich, warum find ich es OK ohne Begleitung unterwegs zu sein. Dann wandern die Gedanken zu den wenigen weiblichen Personen, die ich mir hier an meiner Seite vorstellen könnte. Damals wie heute waren dies nur Menschen der Vergangenheit, die mich manchmal noch in Gedanken begleiten, weil sie etwas zurück ließen, aber aus guten Gründen nicht mehr da sind. Ich fühlte mich ausgeglichen, hatte vieles hinter mir gelassen und war bereit für Neues: Bereit für Aufruhe, Chaos, halt Herzscheiße und so.
Ich betrachtete die Nachricht und drücke Löschen.

Keinen Monat später trat sie in mein Leben und stellte es auf den Kopf. Es reichte nicht für uns. Sie nahm mich mit auf Festivals. Ich fragte sie, ob sie auf ein Konzert meiner Lieblingsband mitkommen mag – sie sagte ja und sagte mir später für einen Anderen ab.
Auf einem Festival endete unsere Freundschaft.

Ich stand im Huxley’s Neue Welt und wollte mich in Luft auflösen.
Ich stand vor der Freilichtbühne des Tempelhofer Felds und als zu ‚Himmelblau‘ die ISS über das Publikum flog, lag ich in Tränen.
Ich stand auf dem Highfield-Festival und sah sie überall.
Ich stand in der Columbia Halle, schrie mir die Seele raus und fühlte mich frei.

Ich stehe vor Konzertbeginn der Beatsteaks in der Wuhlheide und stelle eine Stimmung in mir fest, die ich sehr genau 3 Jahre zuvor an eben dieser Stelle bereits hatte.
Ich ändere die Nummer und drücke Senden.

Madrid – Tegel

Es war einer meiner ersten Flüge seitdem ich regelmäßig reise und wurde der unvergessenste und schönste, mit dem sich kein Flug seither messen konnte.

Nach einigen Tagen Besuch in Valencia und einigen Stunden Warten in Madrid fand ich mich im Flieger zurück nach Berlin neben einem hübschen und charmanten Mädchen wieder. Wir sagten beim Hinsetzen kurz Hi und verdrehten zusammen die Augen über die orchestralen Cover-Versionen 90er-Jahre-Popsongs der Hintergrundmusik. Nach dem Start verschwand sie in ein Buch und ich  erst in meine Kopfhörer und dann in die Welt des Sandmann. Es verging eine gute Stunde bis ich aufwachte. Sie guckte mich happy an – sie musste auf Klo und wollte mich nicht wecken. Zurück began ein Gespräch, dass sich von Valencia und Leipzig, Reisen, Sprachen, Musik und über vielen weitere Themenstöckchen entwickelte. Wir waren in uns vertieft – genossen es und die Stunden verflogen. Zum Landeanflug stellten wir fest, dass wir vergaßen unsere Namen auszutauschen. Sie hieß Annette.

Manchmal fantasiere ich über geschlossene Geschichten. Perfekte Momente, die sich von allein entwickeln. Die keine Nachhilfe brauchen. Die für sich stehen. Die ein Ende haben. Die für die schöne Erinnerung bleiben. Die keine offenen Fragen hinterlassen. Keine Wünsche.

Alles sei getan – keine Reue.

Wir landeten, wir sponnen beim Warten auf unser Gepäck nach Andalucia zurück zu kehren. Wir verpassten unseren Bus, standen hungrig vor dem nächtlich geschlossenen Burger King und entschieden uns zusammen in die Stadt zu fahren – so weit uns unsere gemeinsame Strecke führen würde, teilten dabei die Notfall-Snickers. Wir lachten ausgelassen über Betrunkene in der S-Bahn, die uns blöd anmachten. Mit der letzten Station stellte ich die Frage, ob wir es bei diesem Abend belassen – happy nahm sie meinen Kontakt. Nach Valenzianischen Abschiedsküsschen schloss sich die Tür vor mir und sie war weg.

Und ließ nie wieder von sich hören.

“Immer bleibt etwas zurück.”