whoami — Programmierprojekte, Berlin programming projects, Berlin
Programme, die eine Aufgabe haben. Programs with one job.
Hier liegt die Programmierarbeit von Mehmet Celalettin Küçük — getrennt von der filmischen. Simulationen, kleine Werkzeuge, Skripte für den eigenen Alltag und die statischen Seiten, auf denen die Filmarbeit steht. Meist Python, oft Bash, gelegentlich nur HTML und ein Stylesheet. This is where the programming work of Mehmet Celalettin Küçük lives — kept apart from the film work. Simulations, small tools, scripts for everyday use, and the static sites the film work stands on. Mostly Python, often Bash, sometimes nothing but HTML and a stylesheet.
01cat werkstatt.md
Ich bin Filmemacher und Historiker und programmiere, weil sich manche Fragen nur beantworten lassen, wenn man das Werkzeug dafür selbst baut. Das Muster ist jedes Mal dasselbe. Für den Film und für historische Recherche führe ich Interviews, und aus Interviews werden Stunden Tonaufnahme, die niemand von Hand abtippt. Fertige Dienste gibt es, aber sie wollen die Aufnahme haben — und was jemand mir im Vertrauen erzählt hat, lade ich nicht auf einen fremden Server. Also steht am Ende ein eigenes Programm, das die Aufnahmen dort lässt, wo sie sind: der Transcriber weiter unten. So ist fast alles hier entstanden — weil eine konkrete Arbeit es gebraucht hat, nicht weil eine Technik ausprobiert werden wollte. I am a filmmaker and historian, and I write software because some questions can only be answered by building the tool for them yourself. The pattern is the same every time. For the films and for historical research I record interviews, and interviews turn into hours of audio that nobody transcribes by hand. Ready-made services exist, but they want the recording — and what someone told me in confidence does not go onto a stranger's server. So it ends in a program of my own, one that leaves the recordings where they are: the Transcriber below. Nearly everything here came about that way — because a piece of actual work needed it, not because a technology wanted trying out.
Ein Schwerpunkt hat sich daraus ergeben: Technologie für Bildung. Werkzeuge, die beim Lernen helfen, ohne dass es nach Unterricht aussieht — und die ohne Konto, ohne Werbung und ohne Datensammlung auskommen. rapbot ist davon das deutlichste Beispiel: Kinder üben Reim, Metrum und Wortschatz, während sie glauben, sie spielen. Auf Tech4Everybody habe ich Tutorials veröffentlicht, und dieselbe Haltung steckt in der Arbeit an Vermittlung und Public History — eine Sache so zu erklären, dass sie hängenbleibt. One focus has grown out of that: technology for education. Tools that help people learn without looking like a lesson — and that work without an account, without advertising and without collecting data. rapbot is the clearest example: children practise rhyme, metre and vocabulary while they believe they are playing. On Tech4Everybody I published tutorials, and the same attitude runs through the work on public history — explaining a thing so that it stays explained.
Drei Dinge halte ich dabei durch. Kommentare erklären das Warum, nicht das Was — was der Code tut, steht im Code. Jedes Modul hat eine Zuständigkeit und greift nicht in die Parameter der anderen. Was nicht geprüft ist, ist nicht fertig — auch bei einem Skript, das nur ich benutze. Three things I hold to. Comments explain the why, not the what — what the code does is in the code. Each module has one responsibility and does not reach into another's parameters. What is not tested is not finished — even for a script only I will ever run.
Die meisten Repositories sind privat. Wo unten ein Name verlinkt ist, ist der Quelltext öffentlich; wo nicht, gibt es ihn auf Anfrage. Most repositories are private. Where a name below is a link, the source is public; where it is not, it is available on request.
02ls -l projekte/
-
2026
Transcriber
Aus einem Ordner voller Tonaufnahmen wird lesbarer Text. Das Programm nimmt ganze Interviewstapel auf einmal und schreibt sie mit OpenAI Whisper mit — aber vollständig auf dem eigenen Rechner. Nichts wird hochgeladen, es braucht kein Konto und keine Verbindung nach außen; bei Interviews ist das keine Bequemlichkeit, sondern Bedingung. Eine Oberfläche für macOS, Rechnung über die Apple-Grafikeinheit statt über den Prozessor, Ausgabe als Text, Untertitel, Tabelle, JSON oder PDF — und ein Wächter im Hintergrund, der sich meldet, bevor der Arbeitsspeicher knapp wird. Entstanden mit opencode. A folder full of recordings turns into readable text. The program takes whole batches of interviews at once and transcribes them with OpenAI Whisper — but entirely on my own machine. Nothing is uploaded, no account and no outward connection are needed; with interviews that is not convenience but a condition. A macOS interface, computation on the Apple GPU rather than the processor, output as plain text, subtitles, a table, JSON or PDF — and a watchdog in the background that speaks up before memory runs short. Built with opencode.
Python · OpenAI Whisper · PyTorch · Tkinter · macOS
In BenutzungIn use
-
2024—26
rapbot
Ein Rap-Battle-Spiel für Kinder: Der Rechner antwortet auf einen Reim mit einem eigenen. Gedacht als Sprachspiel — Reim, Metrum und Wortschatz üben, ohne dass es nach Unterricht aussieht. A rap battle game for children: the machine answers a rhyme with one of its own. Meant as a language game — practising rhyme, metre and vocabulary without it looking like a lesson.
Python · OpenAI API
In ArbeitIn progress
-
2026
poormansalgo
Ein Haushaltsbuch, das keine Buchhaltung verlangt. Man trägt ein, was im Monat hereinkommt, setzt eine Grenze für das, was man höchstens ausgeben will, und schreibt die Ausgaben auf, sobald sie anfallen. Sichtbar bleibt dabei immer die eine Zahl, auf die es ankommt: was noch übrig ist. Reißt die Grenze, sagt das Programm es deutlich — verbieten kann und will es nichts. Nichts wird hochgeladen, keine Bank angebunden, kein Konto angelegt. Das Ziel dahinter: dass jeder sein Budget im Blick behalten und haushalten kann, auch ohne Tabellenkalkulation und ohne Beratung. Bisher rechnet es eine Runde; dauerhaftes Speichern, Kategorien und der Import einer Haushaltstabelle stehen noch aus. A household budget book that demands no bookkeeping. You enter what comes in each month, set a ceiling for what you are willing to spend, and note the expenses as they happen. The one number that matters stays in view throughout: what is left. If the ceiling breaks, the program says so plainly — it neither can nor wants to forbid anything. Nothing is uploaded, no bank is connected, no account is created. The aim behind it: that anyone can keep an eye on their budget and manage a household, without a spreadsheet and without advice. So far it handles one round; saving between sessions, categories and importing a budget spreadsheet are still to come.
Python · Tkinter
In ArbeitIn progress
-
seit 2026
Agenten-Teams Agent teams
Ein Sprachmodell kann vieles, aber es kann nicht gleichzeitig Ingenieur, Prüfer und Personalabteilung sein — jedenfalls nicht gut. Deshalb baue ich keine einzelnen Assistenten, sondern Teams: mehrere Agenten mit je einer klar umrissenen Zuständigkeit, angeordnet nach einer Unternehmensstruktur. Eine Leitung verteilt die Aufgaben, mehrere Ingenieure arbeiten parallel, eine Instanz wacht über die Architektur und darf einen Entwurf auch ablehnen; dazu Technik und Umgebung, Recht und Papiere, Berichte, Prüfung der Dokumentation. Jeder Agent hat eigene Werkzeugrechte, und mancher darf ausdrücklich weniger als die anderen — wer alles darf, macht früher oder später alles kaputt. Der interessantere Teil ist dabei nicht die Technik, sondern die Organisation: wer an wen berichtet, wer was entscheiden darf, und welche Regel über allen steht. A language model can do a great deal, but it cannot be engineer, reviewer and human resources all at once — not well, at any rate. So I do not build single assistants but teams: several agents, each with one clearly bounded responsibility, arranged as a company. A lead distributes the work, several engineers run in parallel, one instance guards the architecture and may reject a design; alongside them tooling and environment, legal and paperwork, reporting, documentation review. Every agent has its own tool permissions, and some are deliberately allowed less than others — whoever may do everything eventually breaks everything. The more interesting part is not the technology but the organisation: who reports to whom, who decides what, and which rule stands above all of them.
Claude Code · Sub-Agenten · Rollen und Rechte
LaufendOngoing
-
2021
Mars-Rover — Wilhelm-von-Siemens-Gymnasium Mars rover — Wilhelm von Siemens Gymnasium
Als Lehrkraft an der Schule in Berlin-Marzahn habe ich das Mars-Rover-Projekt zusammen mit der IT-Abteilung betreut. Grundlage war ein Baukastensystem von Siemens; die Aufgabe bestand darin, den Rover unter Ubuntu und Debian überhaupt erst zum Laufen zu bringen und anschließend die Algorithmen für seine Fahrt zu schreiben. Für die meisten Schülerinnen und Schüler war es der erste Kontakt mit Linux — und mit der Erfahrung, dass ein Gerät genau das tut, was im Code steht, und nichts anderes. As a teacher at the school in Berlin-Marzahn I supervised the Mars rover project together with the IT department. It was built on a modular kit supplied by Siemens; the task was first to get the rover running under Ubuntu and Debian at all, and then to write the algorithms for how it drove. For most of the pupils it was their first encounter with Linux — and with the experience that a machine does exactly what the code says and nothing else.
Ubuntu · Debian · Robotik
AbgeschlossenCompleted
-
2026
Data_Science
Linguistische Auswertung deutschsprachiger Raptexte mit pandas — Reimschemata, Wortschatzbreite, Wiederholung. Der Datensatz aus dem Rapbot-Umfeld, hier ohne Spielmechanik, nur als Analyse. Linguistic analysis of German rap lyrics with pandas — rhyme schemes, vocabulary range, repetition. The dataset from the rapbot work, here without the game, purely as analysis.
Python · pandas
ÖffentlichPublic
-
2023—24
Themenanalyse — Datensätze und Auswertungs-Workflows Topic analysis — datasets and analysis workflows
Im Team entstanden, im Zuge meines Bachelorstudiums in Geschichte, Publizistik- und Kommunikationswissenschaft — und die unscheinbarste Arbeit von allen: Für die meisten Fragen, die sich wirklich stellen, gibt es keinen fertigen Datensatz. Man muss ihn erst herstellen. Genau darum ging es — Quellen sammeln, Tonspuren verschriftlichen, Rohtext säubern, lemmatisieren und so lange in Form bringen, bis eine Auswertung überhaupt möglich wird. Darauf setzt die eigentliche Analyse auf: Themenmodelle für kommunikationswissenschaftliche Fragen — welche Themen in einem Korpus vorkommen, wie sie sich über die Zeit verschieben, mit welcher Sprache geredet wird. Gearbeitet wurde in R und RStudio und dokumentiert in R Markdown, damit jeder Schritt nachvollziehbar bleibt und nicht nur das Ergebnis. Der Umweg, Whisper dafür in R einzuspannen, war übrigens der Anfang des Transcribers weiter oben. Built as a team during my BA in history, journalism and communication studies — and the least conspicuous work of all: for most questions worth asking there is no ready-made dataset. You have to build it first. That was the job — gathering sources, turning audio into text, cleaning the raw text, lemmatising it and shaping it until an analysis becomes possible at all. The actual analysis rests on that: topic models for questions in communication studies — which topics occur in a corpus, how they shift over time, what language is used. The work was done in R and RStudio and documented in R Markdown, so that every step stays reproducible and not just the result. Harnessing Whisper from R for this was, incidentally, where the Transcriber above began.
R · RStudio · tidyverse · quanteda · R Markdown
AbgeschlossenCompleted
-
seit 2023
bash-scripts
Mein Ziel ist es, Automatisierungen zu erfinden und zu bauen, die Technologie für Menschen zugänglicher machen. Dafür arbeite ich mit Algorithmen und mit KI-Modellen. Diese Werkzeugkiste ist der Alltag davon: Aufräum-, Umbenenn- und Sicherungsskripte, dazu Handgriffe rund um Videoschnitt und Transkription. Nichts davon ist schön, alles davon läuft täglich — und jedes einzelne Skript ist eine Handbewegung weniger, die jemand tun muss. My aim is to invent and build automations that make technology more accessible to people. For that I work with algorithms and with AI models. This toolbox is the everyday side of it: cleanup, renaming and backup scripts, plus small helpers around video editing and transcription. None of it is pretty, all of it runs daily — and every single script is one manual step somebody no longer has to take.
Bash · ffmpeg
LaufendOngoing
03cat kontakt.md
Etwas gebaut,
das jemand brauchen könnte?
Built something
someone else could use?
Für Fragen zum Quelltext, für Hinweise auf Fehler oder wenn Sie eines der privaten Repositories sehen möchten: For questions about the source, for bug reports, or if you would like to see one of the private repositories:
[email protected]Am Rande: Hier entstehen auch Websites. shiitake-film.eu und atopics-film.eu sind von Hand gebaut — kein Framework, kein Cookie, kein Tracker, keine Schrift von fremden Servern. As an aside: websites are made here too. shiitake-film.eu and atopics-film.eu are built by hand — no framework, no cookie, no tracker, no font from a foreign server.