для журналистики.
код для редакций расследований · data-журналистика · OSINT · правозащитные исследования
Восемь лет фиксером и журналистом-расследователем для Yomiuri Shimbun, Financial Times, Guardian и Amnesty International Турция — а потом я начал писать на Python. Теперь строю инструменты для редакций и правозащитных организаций: OSINT-конвейеры, парсеры публичных записей, граф-анализы институциональных данных. Инстинкты те же; результат — код.
[01] batu@batu0:~/for-journalism/past-engagements
- EuroMed Rights (контракт, нояб. 2023 – май 2024, Копенгаген/удалённо) — data engineering для исследовательской программы по независимости судебной власти; расширил конвейер BitzeOOP в результаты, которые легли в основу двух опубликованных журналистских расследований.
- Amnesty International Турция (окт. 2019 – сен. 2023) — офицер программы наблюдения за судебными процессами. Четыре года присутствия на слушаниях по свободе слова, свободе прессы и безнаказанности; детальные отчёты, связь с адвокатами, опубликованные пояснительные статьи.
- P24 Independent Journalism Foundation (июн. 2019 – фев. 2021) — 1 из 4 стипендиатов. Расследование таксомоторной отрасли Стамбула через 50+ FOI-запросов в 8 государственных институтов; опубликовано в T24, представлено в YouTube-документалке.
- Yomiuri Shimbun, штаб-квартира Каир (нояб. 2015 – дек. 2018) — консультант по Турции и Ближнему Востоку. Репортажи о политических, экономических и культурных событиях; интервью в условиях переворота, после терактов и при чрезвычайном положении.
[02] batu@batu0:~/for-journalism/tooling
- BitzeOOP — 60 000+ турецких судебных назначений за 13 лет, нормализованных из неструктурированных PDF/CSV-вестников в персональные карьерные истории. Neo4j-граф людей / должностей / назначений / локаций; анализ переходов и обнаружение аномалий. Лёг в основу 2 отчётов EuroMed Rights.
- Court Files Parser — извлёк 4 года записей слушаний и обвинительных заключений из архива свободной журналистики; экспорт преступлений / судей / прокуроров в CSV для последующего анализа.
- Jurisprudence Pipeline — сквозной конвейер по 8M+ решений Кассационного суда Турции и 12K решений Конституционного суда: скраперы, нормализаторы и NLP-операции (TensorFlow + NLTK + scikit-learn + pytesseract) для категоризации, тематического моделирования и обогащения текста.
- Скрапер статистики работы депутатов — скрапер сайта турецкого парламента, извлекающий предложения вопросов, исследовательские предложения, парламентские запросы и резюме депутатов; item-конвейеры, агрегирующие параллельные страницы.
- TBMM Observation Engine (янв. – апр. 2025) — конвейер наблюдения за Великим национальным собранием Турции, читающий ежедневный парламентский протокол (tutanak). Scrapy с Puppeteer-middleware; ~68 коммитов. Преемник скрапера статистики депутатов выше — та же цель, больший охват.
- Скрапер архивов новостей — пробежал новостные сайты вглубь в базу для архивирования и поиска.
[03] batu@batu0:~/for-journalism/how-i-collaborate
Работа, которую я беру: разовые OSINT-конвейеры, привязанные к конкретному расследованию, сборка внутренних инструментов для повторяющихся data-нужд редакции, стрингер-с-Python формат (нахожу историю и строю каркас) и консалтинг для правозащитных организаций, которым нужна инженерная глубина без штатной позиции. Также читаю по-турецки и на базовом уровне знаю османский — это важно для судебных и архивных источников.
Любой из инструментов выше можно переиспользовать и для более широких инженерных задач. См. общую страницу /hire для backend- и LLM-системной работы.