i decided to blog about [ privacy | society | arts ]

Spleeter and Traktor Stems in 2021

[en] 6-7 Minute read - Topic: Art, Music

I've been ramping up my DJ activities and Techno production lately. I had great interest in DJing with stems, and mapped an APC 40 mk2 for 2-4 decks. All I needed where more actual Traktor Stems.

Spleeter x Traktor Stems

Spleeter is a Deezer research project and a source separation library that sparked new interest in audio source separation. Soon after its release a command line utility to generate Traktor Stems with it was created. Its great, but not easy to use.

NUO Stems seemed like a convenient way of transforming my collection with Spleeter into stems. After running for ~8h it had split up all tracks and reassembled them into ".stem.m4a" files with most metadata transferred that played in Traktor. The option to transfer cue points was neat. At a first glance, everything was fine. Activly using the generated tracks for a while now, ill share my experience with it.

Spleeter problems

Spleeter seems to be trained poorly on electronic music. As soon as a track has an synthetic element that spans across all frequencies, Spleeter just looses its shit. Try anything with noise or a great synth buildup and the speration will absolutly ruin it. Frequency bands are lost, reverb is sucked away, the result sounds awful. The lossy AAC encoding does the rest and kicks an already ruined track into abysmal quality deterioration.

Quick genre performance review

The cleaner the mix, the better Spleeter works and its really good with acoustic elements. Synth pads, noise, mangled samples and heavily processed vocals are usually messed up. If you play Techno, Rave, House or Drum and Bass, its impossible to have a full stem library, ~40% is crap. Clean organica tracks work well enough to blend them nicely in the afterhours. HipHop/Rap tracks and beats usually work well enough to mix them freely.

NUO Stems problems

Not all metadata is transferred: "Label" and "Catalog nr." where usually missing. If the track isn't already in Traktor but has correct metadata embedded, this data is not transferred at all.

Lossy AAC tracks sound usually WAY worse than their lossy FLAC or ALAC counterparts when they are pitchshifter or timestreched. This intersects with the quality loss due to spleeter and makes timestretching those stems an audible pain.

The m4a container supports ALAC, windows does, traktor does, and most media players do. I dont get why NUO Stems doesn't.

Traktor problems

When moving the library, I encountered that Traktor messes up my FLAC and stem.mp4 variants, which results in the stem variant beeing flagged as broken, because traktor trys to load the previously discovered FLAC file with the stem.mp4 metadata into a stem deck. The preview player works.

The sanity check of the library does NOT catch this, so I was left fixing half of my library for HOURS and still having some tracks that wont play. After manually relocating them, so that they work again, the beatgrid is usually messed up and needs a second run of analyzing.

Cue points and beatgrids have to be independently maintained, I think a way of simply linking/syncing stem and non-stem versions would be really great.

As discussed earlier, Stems aren't the best choice for techno people without a production background. If you do make your own tunes, there is a second way: creating your own stems is easy.

...in theory.

Mastering for Traktor Stems

I mastered the first track of a new project in the STEM format, and it was an absolute pain. The NI Stems Creator preview will sound like you're in the middle of a war, unless your individual tracks are inaudibly quiet. Even -12db will is too loud, WTF. The export sounds fine, you just have no way of quickly previewing your dynamics settings.

Im no mastering expert with years of experience. I work with ozone and insight to earball educated guesses. That works well enough and produces good results, but transferring that to stems is impossible. The submix must be cleaner, less elements work better and more intensive EQing is a must. I'd say this forces you to generally make better mixes and masters. But: Simply taking an old track, creating four groups and duplicating the previous mastering chain four times will not sound very well.

Mashups / Edits from Spleeter

Tried it, but again: this is really hit or miss. Especially for Techno its usually a miss, because separation isn't so clean. With iZotope RX and some time the results can be greatly improved. If you have the v8 Standard, Spleeter is included as Music Rebalance. If you dont, Spleeter GUI is a great little windows app, Spleet it a little hacky (but working) app for macOS.
RX v8 Advanced includes the Spectral Recovery module, which does a decent job of quickly fixing the higher frequencies of not-so-clean spleeter seperations.

If you simply want to overlay some edits and rebalance the levels on the fly, Ozones music rebalance does a clean job without the need for bouncing/rendering.

Final words

Traktor Stems are a really nice feature, but the currently available tooling is lacking. I'd love to see Native Instruments take the initiative to embrace the use, since multitrack/stem DJing seems to be more popular again (take a look at recent updates in Virtual DJ and Algoriddim djay for mac). In my opinion pre seperated stems are better than live generated ones, because they're easier on the CPU in live situations and very reliable. But again, they need proper official support and good tooling to take off.

Spleeter, the technology responsible for the new rise of stems, is neat. But without a good set of tools and some time, the output is very rough and not great for bootlegs. Id argue that with a good ear and decent knowledge of sound design, you can rebuild things pretty fast while having fun. Spleeter separation and proper cleanup will take some time and it's a mundane and tedious work.

Traktor Stems with Spleeter source separation are fun and I'll keep using them for sure. But they are FAR from what I expected, and sadly not in a good way.

Organizing 101

[en] 5-8 Minute read - society

As a first act, ill be absolutly honest: im the most disorganized person struggeling with EVERYTHING. However, that doesn't keep me from getting shit done: my personal process is usally an absolute and utter mess, usually I barely make it until deadlines or slightly miss them. Yet somehow lots of people I work with have the fucked up impression of me beeing quite professional, well organized and productive.

I set out to find why and looked at what common things where done in past well-working projects, mixed with some general best practices:

  1. prepared routines
  2. accessible documentation
  3. friendly reminders
  4. dedicated workspace

Lets go over some details on what usually works for me (or rather others).

1 Prepared routines

Don't just start a meeting and fuck around for 2 hours, everyone hates that.

Make a list of things you want to talk about, plan the time you'd like to spend on them. Time assumtions don't have to be perfectly accurate, but should provide a rough guideline. If its crowd sourced, write down a responsible person:

0. Check in
1. Quick updates (15min) <-- everyone
2. New team: content creation (10min) <-- Lea
3. Discussion: (20min) <-- Leon
n. Check out

Notice the check in/check out?
Use the check in to sense the general mood, find a common ground to work on. Time per person should depend on your team size: don't make everyone go through the pain of a 30min checkin. Also, make it clear that this isn't the place for discussions or even worse, extensive monologues.
It sucks when lots of people tell everyone they have to leave early, this hurts the motivation of everyone. If that happens on a regular basis, make it clear that people are either attending, or not. If they can't, find a new timeslot.

The check out is meant as a short reflection of how everything went, maybe small sidenotes and hype building. Ideas for improvement of the workflow should also be noted here before they are lost.

Important: its not beneficial AT ALL if every person tells everyone that is was exhausting. Don't get me wrong, if people where missbehaving thats a no-go, but public shaming is as well. If no names are mentioned, people who've done nothing wrong may feel adressed, but the person misbehaving probably wont see themselves mentioned.
Use an anonymus awareness box for that and regularly check it. Nextcloud forms or a pad on a different host worked well for me.

2 accessible documentation

Personally, I've seen great success with etherpad for linear documentation and a kanban board like cryptpad, nextcloud deck or trello.

2.1 Linear Documents

Just write a damn protocol! Not all people can attend everytime, made decisions need to be written down. Important: rotate the people doing it, ideally let a person self-assign for the next meeting at the start of the current one. Note the assigned responsibilities and number of attending people at the start and end, maybe like this:

## Organisation
1  Next time:
      writing the minutes: NAME
      moderation: NAME
2  Today: writing the minutes: NAME // moderation: NAME // participants: 11-12
3  Setting todays agenda

2.2 Boards

I like using kanban boards to have a general overview over a project.
It also has the added bonus that you can keep track of

  • who should do which tasks
  • whats the state of a task

Although cryptpad boards are infearior feature wise and generally "less great" they are easily accessable without an account or mobile app. This is important for open projects!

If you work in an enviroment with fixed teams where you can dictate the usage of a cloud platform, I absolutly recommend nextcloud. Its the all-in-one solution you can easily selfhost or rent starting at 4€/Month depending on the team size. It allows you to really attach cards to a person, which is immensly helpful to also keep track of progress.
If its a visual project, go with trello: it has card images, something thats only alpha in deck. In case you are working on software, make use of github projects or gitkraken glo boards.

3 friendly reminders

Make them a habit for everyone. Personally I forget to attend meetings in the process of preparing them, so I'm sometimes 5 minutes late, shame on me. Its great if everyone is aware that a little reminder the day before and ~15 Minutes before the meeting helps. All people should be aware that if there hasn't been one yet, they are welcome to write one.

4 dedicated workspace

Dont (ab)use a personal messenger like signal, telegram or whatsapp. Seriously. It may work right away and be convinient, but mixing private and work/activism chats isn't healthy in the long run. It makes it hard to take a break, information gets lost quickly and it may result in people spending more time chatting than actually working.
In case of whatsapp and telegram its also a serious privacy concern. I've had a good experience with Matrix + spaces in element. Rocket.Chat is nice if you configure it well.
If you really have to, go use Slack, MS Teams or fucking Discord. Just be aware that, just like with whatsapp and telegram, there are serious privacy concerns attached to them.

If you decided to meet up virtually, check out jitsi and bigbluebutton and ideally self-host them. I strongly advise to stay away from zoom, discord, skype or other closed source centralized platforms.

Don't be too authoritarian, everyone should be participant, not ettendee.
Limit the dominance of certain people, all people should be able to safely voice their opinion without beeing talked down by a toxic male.
Value all work. Don't be an asshole.

Thats about it, thanks for coming to my ted talk.


[de] 6-9 Minute read

in meinem letzen post habe ich recht ausführlich über verschiedene Messenger geschrieben, danach wurde ich darauf hingewiesen, dass ich gar nicht erklärt habe was eigentlich "Datensparsamkeit" ist. Blöd gesagt ist es ein sehr simples Konzept, mit oft unterschätzten, gravierenden Auswirkungen. Etwas sachlicher bedeutet es, dass von einem Anbieter (zB WhatsApp) nur so viele (Meta)Daten zu Chats und Nutzer:innen gesammelt werden wie zum Betrieb wirklich nötig sind. Die Realität sieht natürlich anders aus, denn Daten sind das neue Öl. Unternehmen wie Facebook oder Google, deren Geschäftsmodell es ist Daten zu sammeln und zu verkaufen, arbeiten alles andere als Datensparsam.

Was sind Metadaten

Metadaten sind erstmal nichts schlimmes, im Gegenteil: bei Bildern gibt es neben dem eigentlichen bild noch Infos wann das Bild aufgenommen wurde, wie (also das Kameramodell und Belichtungseinstellungen) und vielleicht sogar einen Standort um den Aufnahmeort wiederfinden zu können.

Wie über Bildern gibts auch über andere Daten Metadaten. ein gutes beispiel ist email, denn dadurch dass es ein offenes Protokoll ist können wir recht einfach hineinsehen.

ein typischer eMail Header (einige Daten wurden entfernt, IPs und Domains geändert um es etwas übersichtlicher zu machen und natürlich auch sensible Informationen zu entfernen)
Return-Path: Received: from mail.inbox-domain.tld by mail.inbox-domain.tld with LMTP id WNW8GsPwemBY5AAA1wz7rw (envelope-from ); Sat, 17 Apr 2021 16:29:23 +0200 Received: from mo4-p02-ob.smtp.rzone.de (mo4-p02-ob.smtp.rzone.de []) by mail.inbox-domain.tld (Postfix) with ESMTPS id 8E2D43EC0202; Sat, 17 Apr 2021 16:29:17 +0200 (CEST) ARC-Authentication-Results: i=1; strato.com; dkim=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1618669735; s=strato-dkim-0002; d=sender-domain.tld; h=Subject:Message-ID:To:From:Date:Cc:Date:From:Subject:Sender; bh=2LGejkwDNwZt24h3aSXjYEJlcIv5/gTTEkFUCN0iVSc=; X-RZG-AUTH: ":I38QYU+9ad9dx7xjbn4yOv4OJn2YXqhPiGgDDlBKLRW4int4RUvlrwJzO6yfbiz3Ciw=" X-RZG-CLASS-ID: mo00 Received: from MBPvonGünter.fritz.box (unknown []) by smtp-ox.front (RZmta 47.24.3 AUTH) with ESMTPSA id Q0189ex3HESt6vL (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (curve X9_62_prime256v1 with 256 ECDH bits, eq. 3072 bits RSA)) (Client did not present a certificate); Sat, 17 Apr 2021 16:28:55 +0200 (CEST) Date: Sat, 17 Apr 2021 16:28:55 +0200 (CEST) From: Custom username - name To: "stadt@domain.tld" , "land@domain3.de" , "fluss@domain2.tld" , "datenschutzbeauftrage@domain2.tld" Message-ID: <486e68ea-0d00-df9as-5ad7-99fa7f30fdcb@domain.tld> Date: Mon, 14 December 2021 21:30:44 +0200 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0) Gecko/20100101 Thunderbird/78.10.1 MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_Part_587656_536969451.1618669735452" X-Priority: 3 Importance: Normal X-Mailer: Open-Xchange Mailer v7.10.4-Rev21 X-Originating-Client: open-xchange-appsuite ARC-Seal: i=2; s=2020; d=domain.tld; t=1618669757; a=rsa-sha256; cv=pass; ARC-Authentication-Results: i=2; mail.inbox-domain.tld; dkim=pass header.d=sender-domain.tld header.s=strato-dkim-0002 header.b="aOSLzny/"; arc=pass ("strato.com:s=strato-dkim-0002:i=1"); spf=none (mail.inbox-domain.tld: domain of name@sender-domain.tld has no SPF policy when checking smtp.mailfrom=name@sender-domain.tld ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=domain.tld; s=2020; t=1618669757; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: Authentication-Results: mail.inbox-domain.tld; dkim=pass header.d=sender-domain.tld header.s=strato-dkim-0002 header.b="aOSLzny/"; arc=pass ("strato.com:s=strato-dkim-0002:i=1"); spf=none (mail.inbox-domain.tld: domain of name@sender-domain.tld has no SPF policy when checking smtp.mailfrom=name@sender-domain.tld; dmarc=none X-Spamd-Bar: -

Huiuiuiui, ganz schön viel text. Aber mit etwas Zeit lassen sich viele interessante dinge herauslesen: ich weiß auf Anhieb

  • woher die eMail kam,
  • wohin sie ging,
  • die IP-Adresse (und so den ungefähren Aufenthaltsort!) von dem Rechner der die eMail verschickt hat
  • den Klarnamen des Absenders (der Gerätename im Netzwerk)
  • das Betriebssystem (ein veraltetes macOS 10.15)
  • den Mailclient (thunderbird)

Klar, einiges davon wird dringend benötigt (sender, receiver) und einiges ist praktisch zum beheben von eventuellen Fehlern. (Serverinfos, Mailclient, Betriebssystem). Es ist lediglich ein Beispiel, dass selbst eine eMail ohne Inhalt schon sehr viele interessante Informationen preis gibt. Email ist hier mit sicherheit schon Datensparsamer als manch anderer messenger.

Die Quintessenz der Dinge

Auch ohne den Inhalt zu kennen können Chatverläufe sehr interessant sein!

  • wer spricht mit wem,
  • wann und wie lange,
  • von wo aus,
  • wie viele Nachichten werden versandt
  • was für Medientypen (Bilder, Dateien, Audios) werden versandt
  • welche (gemeinsamen) kontakte haben die Menschen im Telefonbuch

...sind alles Dinge, die wir eigentlich für uns behalten möchten.

Und es sind auch alles Dinge die nicht an den Plattformbetreibende gegeben werden müssen, wenn eine Plattform (wie z.B. Signal) richtig konstruiert ist. Eine noch bessere Möglichkeit sind dezentralisierte Plattformen: hier laufen solche Informationen (wenn überhaupt) nicht an einem Ort zusammen, sondern werden auf verschiedene Server verteilt. Das bekannteste beispiel hier ist eMail, ein aktuelles und nutzbares Matrix.

Auch wenn es hier viel um Chat's ging, sind Clouds wie Google Drive oder Microsoft OneDrive auch wichtig: hier laufen MASSIVE Datenmengen zusammen die so einfach nicht zusammenkommen sollten. Eine gute Alternative ist Nextcloud, auch wenn es oft gar nicht so einfach ist eine öffentliche Instanz zu finden. Hetzner hat ganz gute Angebote ab 3.50€/Monat, selber hosten ist natürlich ideal.


[de] 12-15 Minuten Lesezeit

Es gibt definitiv zu viele messenger(Plattformen).

Allein für privates gibt es WhatsApp, Telegram, WeChat, Facebook Messenger, Instagram, Threema, Signal und viele weitere, für Teams und Unternehmen ist das Angebot ebenfalls gigantisch.

In letzer Zeit häufen sich bei mir Fragen, welcher Messenger denn nun der richtige sei, oder warum ich bestimmte Messenger so sehr hasse. Gerade letzeres ist nicht aus einer Laune heraus, sondern tatsächlich begründet. Ich habe hier aufgeschrieben warum einige Dienste einfach nicht mehr genutzt werden sollten und wie wir Kommunikation freier gestalten können.

Whacke Begriffe

Technik ist halt leider nicht immer einfach, oft gibt es etwas längere Namen für bestimmte Konzepte, die dann wieder Abgekürzt werden.
Hier eine kleine Übersicht:

  • e2ee = "end-to-end-encryption" --> nur Sender und Empfänger können die Information lesen. Der Server kann NICHT mitlesen.
  • Transportverschlüsselung --> Die Nachricht wird vom Gerät zum Server Verschlüsselt, zb mit SSL oder TLS. Andere geräte im gleichen wlan oder der internet provider können so nicht mitlesen. Aber Achtung: der Server KANN hier mitlesen!
  • OSS = "Open Source Software" --> Der Code ist für alle einsehbar und kann überprüft werden.
  • FOSS = "Free and Open Source Software" --> wie OSS + der code kann von allen modifiziert, weiterentwickelt und in anderen Projekten wiederverwendet werden.
  • Properitäre oder closed-source Software --> das absolute Gegenteil von FOSS. Das Endprodukt kann zwar kostenfrei sein (siehe Facebook, WhatsApp, YouTube, Google etc), der code ist aber nicht einsehbar oder veränderbar.
  • Features --> Funktionen wie zB Umfragen, Sprach- oder Videoanrufe
  • UI = user interface --> die Oberfläche mit der Nutzer:innen die App bedienen.
  • UX = user experience --> wie Features zugänglich werden. Die UX umschließt natürlich die UI, aber auch grundlegende Mechanismen und Abläufe. Hinweis: Eine optisch schöne UI kann eine miese UX bieten.

Anderer kram lässt sich oft leicht nachschlagen (merke: nachschlagen != googeln, es gibt andere Suchmaschinen!), Wikipedia ist gerade bei Informatik-kram eine gute quelle. Andere gute Quellen sind z.B. heise.de, netzpolitik.org, der Chaos Computer Club (CCC.de).

Dämliche Vergleiche

Team-messenger (wie z.B. Slack, Rocket.Chat oder MS Teams) mit Privat-messengern (wie z.B. WhatsApp, Signal, Telegram) zu vergleichen ist unglaublicher Quatsch. Der Fokus von Privatmessengern liegt auf 1:1 Chats und kleinen Gruppen, Team-messenger sind für ganze Firmen oder Teams mit vielen zusammenhängenden Chats gedacht.

Trotzdem kommt dieser abwegige Vergleich zu oft. Einige Menschen scheinen einfach nicht zu kapieren, dass 1:1 Messenger für größere Teamarbeit per Design eine absolute Scheißidee sind.
Oft wird, vermutlich aus eigener Faulheit und einer gewissen portion Egoismus, nicht gesehen wie stark sich eine unpassende und intransparente Kommunikationsstruktur auf die Zusammenarbeit des Kollektivs auswirkt. Die Einarbeitung von neuen Menschen leidet besonders stark.

Nervige Annahmen

Der Satz "aber ich habe ja nichts zu verbergen" oder inhaltlich ähnliche Formulierungen als "Argeument" gegen Datenschutz bringen bei mir intensive schmerzen hervor.

Zeit oder Interesse für technische Erklärungen aufzubringen ist nicht einfach, deshalb enden wir oft bei viel zu simplen Beispielen fern der Realität. Klar, kaum ein Mensch will mir das Handy entsperrt überlassen, im Glaskasten auf dem Alexanderplatz kacken gehen oder mir die Schlüssel für das Eigenheim übergeben, denn das ist wirklich etwas ganz anderes. Es ist dann doch etwas komplizierter.

Unangenehmer Nebeneffekt: Durch solche stark vereinfachten Beispiele fühlen sich anscheinend selbst die technisch unfähigsten Menschen auf einmal in der Position standhaft so krude Dinge zu behaupten, dass eine ernsthafte Diskussion nur mit viel Mühe möglich ist.

Ich möchte hier einfach kurz einige Worte an all die Menschen richten, die der Meinung sind Datenschutz wäre eh nicht so wichtig, weil sie auf google bei Ergebnis 2 gelesen haben das sei so. Hört verdammt noch mal auf die Leute die sich damit seit langer Zeit beschäftigen! Nein, mit 3 Minuten googeln bist du kein:e cybersicherheitsexpert:in! Nein, nach 30 Minuten CCC Talk schauen kein:e hacker:in und nach 1h Drosten Podcast hören auch kein:e Virologin! GOTTVERDAMMT!

Auch ich bin nichts davon, doch ich

  • habe ganz generell nach Jahren der Ausbildung und im Feld ein recht solides IT-Wissen und
  • habe mich über einen langen Zeitraum mit dem Thema beschäftigt.
  • finde mich als Design-mensch und Informatik-mensch auch oft zwischen den Fronten und kann hier beide Seiten (simplicity vs security) gut verstehen.

Kurz und überheblich: ich hab etwas mehr Plan von dem Kram als die meisten Menschen.

Gerne diskutiere ich mit anderen über das Thema, lerne dazu, gebe Workshops und leiste Bildungsarbeit. Doch ich habe weder Zeit noch Lust mich auf boomereske Unterhaltungen einzulassen, bei denen ich genau merke mein Gegenüber hat so gar keinen Plan, aber will mir grade mit dem Ellenbogen die Welt erklären.


Weil die Liste mit Features so lang und technisch geworden ist, habe ich sie ins Wiki ausgelagert. HIER kannst du genau nachlesen welche Unterschiede ich im Detail betrachtet habe. hier nur ein detaillierte Beschreibung zu den relevantesten akteuren.

WhatsApp ist gerade im deutschen Raum der beliebteste Dienst und prahlt gerne mit Ende-zu-Ende-Verschlüsselung ("End-to-end-encryption" oder kurz: e2ee). Ob diese korrekt umgesetzt ist, ist unnachprüfbar, denn der Code ist nicht öffentlich. Es ist keine "Open Source Software" oder kurz OSS.
Doch selbst mit der Annahme dass Facebook nicht den genauen Nachichteninhalt kennt, sind die Metadaten eine wahre Goldgrube: “wer spricht wann, wie lange, wie oft, mit wem“ sind informationen die unglaublich viel preisgeben. Dazu kommen verschiedene größere Fehltritte beim Datenschutz, unverschlüsselte Link-previews (die kleinen Vorschaubilder bei Webadressen) und natürlich das gesamte Kontaktbuch. Google und Apple bekommen auch etwas vom Kuchen: Chat Backups sind nicht verschlüsselt. Mit all diesen Daten lassen sich detaillierte Profile erstellen, die dann an die meistbietenden Verkauft werden. All das macht WhatsApp auch für Menschen die auf dem Boden der FDGO stehen eine absolut beschissene Wahl. Bitte nicht benutzen.

Telegram keine Namen, keine Strukturen. Auch wenn mir das Prinzip an sich zusagt, ist es zusammen mit dem nicht existierenden Geschäftsmodell und ausbleibender Verschlüsselung hochproblematisch. Dazu kommt das viele Features unter dem Deckmantel der UX Nutzer:innen extrem an Telegram binden (z.B. eigene Kontaktverwaltung). Auch wird Gerne der Anschein erweckt Telegram sei OSS, doch für alle interaktionen muss eine proprietäre Schnittstelle verwendet werden, die die Verbindung zum ebenfalls proprietären Server aufbaut. Gerade diese vorgegaukelte Sicherheit ist mmn. problematisch, deshalb sollten Menschen Telegram nicht benutzen.

Facebook Messenger ist glücklicherweise in Deutschland nicht so beliebt, aber generell ein Datenschutz-albtraum in jeglicher Hinsicht. Finger weg. Gleiches gilt übrigends für andere in Social media eingebettete chats wie Instagram, Twitter, Reddit, oder anderen kram.

eMail ist ein offener standard und wird so universell verwendet, dass es viele Menschen kaum hinterfragen. Es ist jedoch nicht unbedingt datensparsam und pgp Verschlüsselung wird sehr schlecht umgesetzt. Alles was pgp Verschlüsselungswürdig ist, hat nichts in eMails zu tun. Siehe die alternativen unten.

XMPP ist ein offizieller Internet-Standard zur Kommunikation. Mit clients wie Conversations und blabber.im kann es für 1:1 chat verwendet werden. Es ist FOSS, erweiterbar und kann selber gehostet werden, erlaubt also dezentrale kommunikation. Nachichten können mit OMEMO verschlüsselt werden. Eigentlich alles gute Dinge. Aber: es ist nicht einfach einzurichten, verschlüsselung fehleranfällig, wird generell von extrem wenigen leuten genutzt und

Na gut, dann nicht

...aber was sind die alternativen?

Signal oder Threema sind sehr gute Messenger für Privatmenschen und liegen nah beieinander, Threema hat insgesamt ein paar mehr Features und ist etwas Datensparsamer. Signal hat eine etwas bessere Verschlüsselung, aber leider ist eine Telefonnummer nötig und die Finanzierung ist nicht so sauber. Signal ist für Endnutzer:innen kostenlos, was sicher dazu beiträgt dass es mittlerweile sehr weit verbreitet ist, sogar so weit dass ich persönlich lieber auf Kleinkram wie Abstimmungen oder absolut ungebundene accounts verzichte solange ich eine Plattform benutzen kann, die extrem datensparsam konstruiert ist.
Kritik: beide Systeme benötigen eine zentrale Infrastruktur. Das hat technisch seine Vor- und Nachteile, doch Politisch gesehen ist es unschön: es bilden sich große Knotenpunkte.
Für Privatchats und kleinere Gruppen würde ich trotzdem definitiv Signal empfehlen.

Matrix + Element ist technisch eine hervorragende Lösung, weil sie Nutzer:innen guten Datenschutz bietet und es generell schwer mitzulesen ist. Matrix ist ein offenes Protokoll, hat viele Features und die größte potentiell erreichbare Zielgruppe: es ist nicht an ein zentrales Gerät oder eine Telefonnummer gebunden und es gibt eine Vielzahl an Clients für wirklich alle Gerätetypen. Mit Bridges kann ein sanfter Übergang zu bestehenden Chats gebaut werden.
Aber: Element hat noch einiges aufzuholen was usability angeht. Auch die Benutzung von Matrix ist für viele Menschen oft verwirrend, da wir z.B. durch WhatsApp und Telegram an integrierte Plattormen gewöhnt sind. Das Protokoll Matrix kann wie eMail mit vielen verschiedenen Clients benutzt werden, Element ist bloß der am meisten genutzte. Ich persönlich empfehle SchildiChat für nicht-techies.
Gerade für Aktivisti Gruppen ist Matrix mit etwas Einarbeitung eine wirklich gute Lösung.

Rocket.Chat ist eine sehr gute Alternative zu Slack oder Microsoft Teams. Es gibt zwar auch einige andere FOSS Teamchats, zB Mattermost und Zulip, aber insgesamt ist es am einfachsten aufzusetzen, die App ist auch für technisch nicht versierte Benutzer:innen einfach zu verwenden. Einziges Manko und auch der Grund warum es so weit unten ist: alle diese Lösungen sind bei minimal vom ideal abweichenden Setup halb unbrauchbar, da Benachrichtigungen nur verspätet oder gar nicht ankommen.


Abschließend lässt sich sagen dass es genug Alternativen zu problematischer Software wie WhatsApp oder Microsoft Teams gibt, auch ohne freien Speicher für "noch eine app". Gerade Matrix wird garantiert für alle Personen einer Gruppe benutzbar sein, auch wenn es an einigen Ecken noch unfertig ist. Für private Konversationen ist Signal eine sehr ausgereifte und relativ weit verbreitete Lösung.


We need a (communication) system change

[en] 3 Minute read - privacy

From the very beginning, communication was standardised.

First through a common vocabulary, then through mail (the paper thingy), telecommunication and more “recently“ http and eMail.
Anybody can participate and exchange information freely as long as they comply with the open standard that ensures everyone knows how to talk to each other. Other than that, there where no gatekeepers.

But somehow, this all changed:
gatekeeping became accepted, either through non-standard closed off applications like WhatsApp or even hardware lock-ins like iMessage.
It was accepted to have no actual control over personal data.
This is wrong, every part of it is.

How did we get here

The development of widespread decentralised protocols like http (the thing that makes websites work), email and xmpp (a simple and extensible chat protocol) slowed down. With widespread adoption radical changes take lots of time to implement on the whole global network. Even worse, there will always be a small number of devices and services that do not update at all, since no authority is forcing them to do so. Right into this miserable position proprietary communication services where born. They could easily force users to comply with certain criteria to make development faster and easier. Another thing that makes software development for communication systems very easy, is centralisation.

With that in mind, lets take a look at WhatsApp: it was originally built on top of the open protocol xmpp, but pretty fast went off track to implement custom features. For some time it was only available on iPhones and later, when there weren't enough users, it simply killed blackberry and windows mobile support. Because the way devices communicate and send messages to the WA server is not open, nobody can build and maintain a client for their non-standard device. It also means that data MUST ALWAYS be sent through (and stored on) the WA Server. Just in case you haven't noticed: that means you do not know

  • how any of it works
  • what it does on your device
  • what the server does to your data

All you can do is hope that whatever the service provider tells you is the truth. Maybe someone will reverse-engeneer some parts, but generally speaking, that's it.

You do not know what happens to your private messages and data.

You can not do anything about it, you are locked in this system. (vendor lock-in).

We need a change

Communication and collaboration is the driving force behind humanity's success, while capitalism literally endangers our whole world. The capitalist ideology of the abiding working class to fulfill their basic needs has creeped into the way we communicate: we are forced to comply with rules we cannot change. We are at the mercy of the provider that they do not abuse their power. But they do it, again and again, and every fucking time theres a huge outrage but after some time, the dust settles and business continues as usual. The sad truth is: we depend on those closed systems too much and they are too powerful to let us go.

With free and open communication we can take a first step to break free!
Free from gatekeeping,
free from pressure to buy certain devices just to be able to communicate,
free from the commercial interest in our data.

How YOU can do it

Join the revolution, be the change.
Get your family and friends to move to a different system.

Try Matrix and maybe even host your own server, try Signal if Matrix is to complicated for grandma.
Go move your team from slack to rocket.chat and build communities in matrix spaces instead of discord "servers".

Version controlling my Zettelkästen

Recently I created my own little Zettelkasten and a public version of it, my wiki. While I skimmed through my setup in the initial post, I thought it may be reasonable to take a deeper dive into how you can setup something like this and have a blast writing 💥


These where my thoughts, or rather requirements, before setting up my version controlled zettelkasten:

  1. Local storage, remote backup
  2. Interoperable (plain text) file format (no system or vendor lock-in)
  3. easy mobile editing must be possible
  4. Only use open software Optional: version control

This just screams git, right? So that’s what I went with. 🤗



  • create a public or private repo
  • if nonexistent: generate an SSH key pair on your machine
  • add the public key to your account Done!


  • install zettlr
  • go throught the tutorial
  • "git clone *" the remote repo to the desired location
  • open the repo folder as a workspace in zettlr (File/Open Workspace) Done!

I also automated repetitive git actions, take a look at how I did it for windows.


  • install gitjournal
  • connect it to your remote host (Github and Gitlab oAuth work very well and take care of the auth setup)
  • add the repo Done!

IMPORTANT NOTE: you should always make sure you synced (pull, add --all, commit -all, push) before and after working to avoid running into conflicts. While those can be resolved easily, its still something that gets in the way and takes time. 🙄

So far so great

With some hickups its now working pretty well! 🥳 However, I also noticed that (unlike standardnotes) its definitely not a "set and forget" solution and requires some maintenance. For me its worth it, Zettler is just the superior markdown editor and better suited for long texts and connected notes than standardnotes.

Problems I ran into

  • referencing from one workspace into another works, but there is no fancy autocomplete for ID's, although to be fair that generally shouldn't be done too often anyways.
  • New files where not added by my script because I used the wrong git commands. → use "git add --all" instead of "git add ." to add files from subdirectories as well
  • spaces in folders or filepaths are not possible, even if the links contain '%20'

Creating my second mind

I work on many projects and need to keep track of more information than I can actually remember. This habit has grown to a point where it leads to actual problems:

In case of projects im working on, it may lead to unintended knowledge-hirarchies,
generally it may render me unreliable ("sorry, I totally forgot about X") or slow ("shit, i didn't write that down, now I gotta research it again"), both of which im not a fan of. So join me on my journey to solve those problems!


All the small things, the small ideas and thoughts that wont be relevant in the long term still need a place. Standardnotes helped me unifying all my different private notes from an actual book, Simplenote, Keep, OneNote and a Git repo.

Standardnotes' excellent reliability and ease of use makes it perfect for collecting all the things and thoughts. With some tags it can be quickly organized quite well. Listed is a great minimal blogging platform tightly integrated with it, which is very neat.

Problems with Standardnotes (and Listed)

  1. Both are quite linear spaces, and I'd love a nonlinear space with bidirectional linking.
  2. I write markdown on my computers, because its fast. And for the most part Standardnotes is fine, but im used to HedgeDoc + Sublime bindings, which (for bigger projects) leads to me working in an actual file with another editor and then copy/pasting its contents.
  3. The export/backup of standardnotes does not resemble my tag structure AT ALL, which sucks.
  4. As my notebox is growing, it becomes more visible to me that Standardnotes is not great for everything and excels at its most basic form: quick notes with crossplatform e2ee sync.

Looking for a Zettelkasten

I want plain text files that I can version control with git and throw in remote repos, one for private and one for public stuff.

A quick search lead me to Obsidian MD which works on top of a folder full of markdown files. Sync is e2ee and with mobile apps in the pipeline its exactly what I want and DAMN, I just love graphs. 🤤

However, while it looked great at a first glance, within a few minutes it was clear to me that in my case, Obsidian is not the way to go. It's closed source, handles multiple workspaces with muliple windows instead of a unified browser and its idea of a Zettelkasten seems to put the identifier in the filename, which imho is working against a simple navigation. 😐

Enter Zettlr. This is an awesome, activly maintained open source project ticking all the boxes. It just works the way I expect a digital Zettelkasten to work. Awesome! 🎉

Writing on the run

If we ever reach a post-corona situation in Germany, Id like to use my Zettelkästen on my mobile device as well. Luckily theres GitJournal, which is built with compatibility in mind, most notably obsidian. While its backlinks work a little bit different to zettlr, its generally looking very promising. And it is, unlike obsidian, actually open source. It even supports multiple repos. Awesome! ✨


I'll continue using standardnotes for quick notes and Listed for blogging.

However: I'll move everything with more permanent importance to plain markdown files in (remote) git repos fed into Zettlr and GitJournal. One of those is my wiki which I'll fill in the next days as im transitioning.