My Profile Photo

Sheogorath's Blog


Depending on the time of the day a friend, a colleague, a wise guy. The beauty of the world is its sense of humor to show humans their way by letting them search their own.


  1. In Ansible "omit" doesn't omit sometimes

    Today I learned that in Ansible the | default(omit) filter doesn’t omit the value within a string. Instead it replaces the statement with a random string looking like this: __omit_place_holder__17ce35dc24337a3145aee27cda2d6baefa37ddea. This is rather unintuitive as one would expect that omit would result in an empty string or alike, but it seems like the Ansible implementation of omit works by replacing it with randomly generated string, and then check if each parameter is equal for this string. The lifetime of this string is limited to the lifetime of the Ansible process and used throughout its runtime wherever someone using omit as value. …


  2. smtps is dead, long live submissions

    Today I learned that in 2018 with RFC8314 a new mail submission service was standardized by the IETF and the IANA. It’s called submissons and re-allocates the original well-known port of smtps which was introduced in 1997 and revoked again in 1998 after the standardization of STARTTLS for SMTP and submission. submissions standardizes the quite common but not standard-conform usage of the smtps port 465 as a port for mail submission by clients (MUAs) instead of MTAs, which should have used the submission port 587 instead when following the IETF and IANA standards at the time. RFC8314 tries to fix that but might causes just more chaos as people like me are, or better were, still convinced that 465 was not to be used as it was revoked as well-known port in 1998. Well, now we can say, not any more. …


  3. 'Today I learned…' is hard

    Today I learned that this series is harder to make that I thought in first place. I thought you happen to do so many things every day, that there is for sure something new, worth writing about. Turns out, not necessarily. It seems like one might learns something every day, but not everything you learn about is what you want to share on your website. …


  4. Steueridentifikationsnummer

    Today I learned that the German “Steueridentifikationsnummer”, in English “tax identification number”, was introduced with the warning about, but also the explicit promise that it would not become a universal identifying number for citizens. And that the German constitution or “basic law” also was already used to protect German citizens from such attacks on their privacy. For the first time in 1969 when the government wanted to collect general statistics about German citizens and how they live. …


  5. Coconut milk vs Coconut water

    Today I learned that coconut milk is not the same as coconut water. While coconut water is found in young coconuts, coconut milk extracted from “mature coconuts”. Coconut water, also known as coconut juice, is rather clear and nice to drink in summer. Coconut milk on the other hand is rather rich and contains a lot more fat and oil. There are even different kinds of Coconut milk based on how much fat it contains. …


  6. Font Hinting

    Today I learned that font hinting is a thing. Font hinting is used to optimize fonts to display properly on low resolution screens. In web fonts they can increase the size of the font-file drastically but are almost never used since screen sizes are rarely that small these days. …


  7. SELinux kernel flags

    Today I learned that SELinux can be disabled in two ways during boot. Besides enforcing=0 there is also selinux=0. The former will obviously set SELinux in permissive mode but still label all new files properly. While the latter will disable SELinux entirely and therefore break your system by labelling all newly created files with default_t on next SELinux-enabled reboot. …


  8. 30€ Infrastructure

    Today I learned that I spend roughly 30€ per month on my private IT infrastructure. I collected all server, storage and backup storage cost as well as calculating the domain costs down to a monthly basis. I think those 30€ are well invested and provide me a lot better web experience than most people out there have, even when I have to solve problems myself. …


  9. Gitlab uses Cloudflare

    Today I learned that Gitlab.com uses Cloudflare. Generally speaking I’m not a big fan of Cloudflare but also not neglecting the value they provide as a WAFaaS provider. My main issue with Gitlab.com using it, is that it does this browser check, which takes roughly 5 seconds and since I use temporary containers to throw everything away after closing a tab, this results in 5 seconds every time I open the page in a new tab. …


  10. Recover LineageOS on OnePlus 7 Pro

    Today I learned that to recover LineageOS after a broken update bringing you stuck in the boot animation, the first step is to press the Volume Up + Power button and hold it for more 10 seconds, before you can boot into recovery and continue your regular flashing process with the previous LineageOS image from their official page. …