← Startseite

für Journalismus.

Code für investigative Redaktionen · Daten-Journalismus · OSINT · Menschenrechtsforschung


Acht Jahre als Fixer und investigativer Reporter für die Yomiuri Shimbun, die Financial Times, den Guardian und Amnesty International Türkei — dann begann ich, Python zu schreiben. Heute baue ich Werkzeuge für Redaktionen und Menschenrechtsorganisationen: OSINT-Pipelines, Parser für öffentliche Akten, Graphenanalysen institutioneller Daten. Die Instinkte sind dieselben; der Output ist Code.

[01] batu@batu0:~/for-journalism/past-engagements

  • EuroMed Rights (Auftrag, Nov. 2023 – Mai 2024, Kopenhagen/remote) — Data Engineering für das Forschungsprogramm zur richterlichen Unabhängigkeit; erweiterte die BitzeOOP-Pipeline zu Lieferobjekten, die zwei veröffentlichte investigative Berichte mitformten.
  • Amnesty International Türkei (Okt. 2019 – Sep. 2023) — Officer im Prozessbeobachtungsprogramm. Vier Jahre Teilnahme an Gerichtsverhandlungen zu Meinungsfreiheit, Pressefreiheit und Straflosigkeit; detaillierte Berichte, Anwaltskommunikation, veröffentlichte Erklärartikel.
  • P24 Independent Journalism Foundation (Juni 2019 – Feb. 2021) — 1 von 4 Stipendiaten. Recherchierte Istanbuls Taxi-Branche über 50+ FOI-Anfragen an 8 staatliche Institutionen; veröffentlicht in T24, in einer YouTube-Doku gezeigt.
  • Yomiuri Shimbun, HQ Kairo (Nov. 2015 – Dez. 2018) — Türkei- & Nahost-Berater. Berichte über politische, wirtschaftliche und kulturelle Entwicklungen; Interviews unter Putsch-, Post-Terror- und Ausnahmezustands-Bedingungen.

[02] batu@batu0:~/for-journalism/tooling

  • BitzeOOP — 60.000+ türkische Justizernennungen über 13 Jahre, normalisiert aus chaotischen PDF/CSV-Amtsblättern in personenbezogene Karrierehistorien. Neo4j-Graph aus Personen / Posten / Ernennungen / Orten; Übergangsanalyse und Anomalieerkennung. Lieferte Material für 2 EuroMed-Rights-Berichte.
  • Court Files Parser — extrahierte 4 Jahre Verhandlungsprotokolle und Anklagen aus einem freien Journalismus-Archiv; Export von Straftaten / Richtern / Staatsanwälten als CSV für Folgeanalysen.
  • Jurisprudence Pipeline — Ende-zu-Ende-Pipeline über 8M+ Entscheidungen des türkischen Kassationshofs und 12K Entscheidungen des Verfassungsgerichts: Scraper, Normalisierer und NLP-Operationen (TensorFlow + NLTK + scikit-learn + pytesseract) für Kategorisierung, Topic-Modelling und Textanreicherung.
  • Scraper für MP-Performance-Statistiken — Scraper der türkischen Parlamentswebsite, der Anfragen, Forschungsanträge, parlamentarische Anfragen und MP-Lebensläufe extrahiert; Item-Pipelines, die parallele Seiten aggregieren.
  • TBMM Observation Engine (Jan. – Apr. 2025) — Beobachtungspipeline der türkischen Großen Nationalversammlung, die das tägliche parlamentarische Protokoll (tutanak) liest. Scrapy mit Puppeteer-Middleware; ~68 Commits. Nachfolger des MP-Performance-Scrapers oben — selbes Ziel, größerer Umfang.
  • News-Archiv-Scraper — crawlte Nachrichtensites rückwärts in eine Datenbank zu Archivierung und Suche.

[03] batu@batu0:~/for-journalism/how-i-collaborate

Die Arbeit, die ich annehme: einmalige OSINT-Datenpipelines für eine konkrete Recherche, Werkzeugbau im Haus für wiederkehrende Datenbedürfnisse einer Redaktion, Stringer-mit-Python-Engagements (ich finde die Geschichte und baue das Gerüst) und Beratung für Menschenrechtsorganisationen, die Engineering-Tiefe ohne Festanstellung brauchen. Ich lese außerdem Türkisch und habe Grundkenntnisse Osmanisch, was bei juristischen und archivarischen Quellen zählt.

Alle oben genannten Werkzeuge lassen sich auch für breitere Engineering-Bedarfe wiederverwenden. Siehe die allgemeine Seite /hire für Backend- und LLM-System-Arbeit.