Build a stateful serverless Telegram bot - Part 1

January 18, 2020

For the first time in my life I bought a plant to decor my room. The plant is a Monstera, growing up to 2 meters if watered properly. It actually needs to be watered every two weeks. Now there are various options to remind myself of watering it. Installing an app, set an alarm on my phone or place a paper calendar next to the plant. But this is to easy, lets make it more complicated.


Surveillance Berlin

December 16, 2019

Last week I visited my favorite city Berlin once more. As the season changes so does Berlin. Clear and crisp air, dim lights and early sunsets brought the city into a different perspective. This time I wanted to know more about the GDR (German Democratic Republic) it’s people and the surveillance machinery. For this I visited a Stasi prison and the HQ of the security bureau. It has been a tense and also fulfilling experience visiting this places. I don’t want to talk about the GDR, but recommend everybody to read more about it. It is a remarkable historic event that has not been finished yet. Here are some pictures of the trip:


Build multiple Docker image from Yarn workspace packages

December 13, 2019

If you decide to manage your node application repository as a monorepo you sure heard about Yarn workspaces. Yarn has an out-of-the-box support for managing multiple packages in a single codebase. Using yarn workspaces package dependencies can be centralized and packages can reference each other. Tasks can be executed for all packages at once. It solves various build related problems for a monorepo.


Apollo Graphql integration testing in practice

December 5, 2019

The Apollo Graphql documention offers a pretty comprehensive guide on how to test your Graphql API. But sure its different once you implement tests for your non generic project. That is why I wrote this post. First I would like to introduce you to integration tests and how they are different from the other testing levels. And then I’ll give you a hands on experience for writing integration tests for Apollo Graphql with Ava.


Professionalism versus Friendship

December 4, 2019

Personal intro:

There are these moments when you face a sheer unsolvable conflict in life. This conflict can be of a personal nature or be a dispute at the workplace. A lack of sleep might be a side effect. A lack of orientation and perspective become an enduring feeling.


O3M 82 - Localhost

November 29, 2019

Localhost is where the home is. The perfect playlist when you are alone at home.


An unfinished story

November 12, 2019

I found this funny text editor, started writing a story and this was the result:


Find dead links in your markdown files

November 11, 2019

The markdown ecosystem is growing. Markdown has become an universal standard with various extensions. Software repositories, websites, documentation systems, all store their content in markdown. This blog is written in markdown as well.

Of course there are downsides to markdown. Portability comes at the cost of missing features. Thus you have to built them on your own. If you run a blog you probably reference tons of other stuff on the internet. Links that point to usefult resources or nowhere. I wanted to find out which links in my markdown documents are dead.


Deploy ELK stack with Ansible and Docker

October 28, 2019

This post was first published at Abilium - Blog.

Recently, we decided to setup a new monitoring service. We opted for the ELK stack. The ELK stack constists of three products:


Making hierarchies more efficient

October 25, 2019

I tend to come up with the important questions always a bit late. “Why do I not like working in hierarchical organizations?” is the question I should have asked a year ago. I gave it some thought and here are my notes.