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.