Voor CreativeNotes ben ik altijd op zoek naar nieuwe, inspirerende makers om te interviewen. Al eerder luisterde ik de podcast Ervaring voor Beginners van Theo Maassen. Theo praat hierin precies een uur met bekende Nederlanders zoals theatermakers, comedians en muzikanten over het creatieve proces. Hier zou ik best eens interessante mensen kunnen vinden voor mijn project. Maar met zo’n 120 afleveringen is het vrijwel onmogelijk om ze allemaal te luisteren. Daarom besloot ik slimmer te werk te gaan en gebruikte ik AI en automatisering om de voor mij relevante pareltjes eruit te vissen. Het gevolg is dat ik mijn eigen competentie train en documenteer om uit grote hoeveelheden data de relevante informatie weet te vinden. Door mijn eigen creatieve en logische denken te combineren met AI en code.

Voor onderstaande project gebruikte ik ChatGPT 4.1 Mini en Claude Opus 4.0 via OpenwebUI (interface) en Openrouter (API keys). Ik gebruik de gratis versie van Google’s NotebookLM.

RSS feed vinden en omzetten naar JSON

De podcast-RSS feed was niet eenvoudig te vinden, maar via de netwerk-tab van mijn browser vond ik op podcastluisteren.nl alsnog de juiste URL. Deze gebruikte ik om een JSON bestand te maken met alle afleveringen, waarbij ik de titels opschoonde: de seizoens- en afleveringsnummer “Sxx Afl x” haalde ik weg, zodat alleen de naam van de maker overbleef. Van elke aflevering heb ik ook de URL naar het audiobestand (MP3) opgenomen. Zo ontstond een overzichtelijk én machineleesbaar bestand om verder mee te werken.

netwerktab voor de feed JSON file

Filteren voor meer diversiteit

Ik wil graag meer diversiteit in mijn boekproject, daarom filterde ik het JSON-bestand nogmaals. Ditmaal zocht ik expliciet naar namen die niet typisch Nederlands én mannelijk waren. Hiervoor gebruikte ik een automatische herkenning van typisch Nederlandse mannennamen als filter, waarlangs ik de overige namen er juist uitpikte. Dit hoefde ik niet handmatig te doen en het gaf me meteen een handige startlijst met interessante, diverse makers.

Ik gebruikte de volgende prompt, let hier vooral op de laatste opdracht. Ik wil dat het LLM me eerst teruggeeft wat hij gaat doen, een soort dry-run voor hij echt aan de slag gaat.

Haal nu uit dit JSON alle entries (title en audio_url) waar de naam in “title” een typische Nederlandstalige mannennaam is. Bijvoorbeeld “Bram Bakker” is een typische Nederlandse mannennaam, omdat Bram een typische Nederlandse voornaam is. “Jandino Asporaat” is NIET typisch Nederlands man, evenals Elien van den Hoek. Jandino is geen veel voorkomende Nederlandse mannennaam en Elien is een vrouwennaam. Dus ik wil twee feeds van je: Een feed met alle typische mannennamen, zowel title als audio_url en dan de overgebleven namen in een tweede feed. Is deze opdracht duidelijk? Kun je me eerst in stappen uitleggen wat je exact gaat doen? Als ik dan akkoord geef, dan kun je pas echt aan de slag.

Dit werkte direct foutloos. Ik kreeg twee JSON bestanden terug die ik daarna nog handmatig heb gecheckt op de namen. Alles klopte.

MP3-collectie downloaden via een bash-script

De volgende stap was om alle audio te downloaden. Ik kon nergens transcripties vinden, dus die moest ik maken. Daar heb je de audio voor nodig. Om de MP3 audiobestanden te downloaden schreef ik een bash-script dat:

  • Controleert of een MP3 bestand al op mijn schijf staat.
  • Bij een bestaand bestand vergelijkt of de lokale bestandsgrootte gelijk is aan de remote versie.
  • Als het lokaal bestand kleiner blijkt, downloadt het script het bestand opnieuw (want dat impliceert dat de vorige download voortijdig eindigde).
  • Wisselende user-agent headers meestuurt, alsof het vanuit bekende podcastspelers komt. Meer een voorzorgsmaatregel om blokkeren van de server te voorkomen.
  • Tussen downloads willekeurige time-outs plaatst om netjes te blijven. Wederom uit voorzorg en omdat het wel zo netjes is een server niet continu te belasten.
  • Een werking met voortgangsbalk, logging en een retry-mechanisme voor mislukte downloads heeft.

Hiermee werkte ik efficiënt en betrouwbaar, zonder elk bestand handmatig te hoeven binnenhalen. Ik had alle MP3 bestanden in 6 minuten binnen, het script werkte bij de eerste poging al foutloos.

iTerm2

Het volledige script vind je hier op Github. Gebruik er van wat je nodig hebt.

Batch transcriptie met MacWhisper

Nu had ik alle audio. De volgende stap was om deze te transcriberen. Ik zette MacWhisper aan voor een lokale batch-transcriptie. 43 afleveringen van elk een uur werden automatisch uitgeschreven, waarvan het proces liep terwijl ik lag te slapen. Tussen 23:03 en 3:09 heeft de app alle 43 MP3 bestanden in het Nederlands uitgeschreven en lokaal opgeslagen. Het is nog niet helemaal perfect: de transcripties geven logischerwijs geen echte sprekersnamen, alleen generieke aanduidingen zoals “Spreker 1” en “Spreker 2”, wat de nabewerking iets ingewikkelder maakt. Ik zou dat nog met wat slimme bewerkingen kunnen oplossen. Spreker 1 is namelijk altijd Theo Maassen en spreker 2 kan ik uit de filename halen. Maar voor nu was dit prima. MacWhisper is gratis te gebruiken maar heeft dan beperkingen. De betaalde versie is voor mij zeker zijn geld waard. Niet in de minste plaats omdat het van Nederlandse makelij is. Hou er wel rekening mee dat je voor MacWhisper een stevige Mac nodig hebt. Minimaal met een M1 chip.

Analyse met NotebookLM: quotes & tijdcodes zoeken

De 43 transcripties upload ik in NotebookLM, een tool waarmee ik op makkelijke wijze relevante quotes en tijdcodes kan opzoeken. Zo vond ik snel passages die inspirerend waren, die nuttig kunnen zijn voor nieuwe interviews binnen CreativeNotes. De combinatie van automatisering en slimme analyse versnelt zó het creatieve proces. Waarom NotebookLM? Omdat het alleen in de transcripties zoekt en niet nog externe bronnen of andere onderwerpen er bij verzint, wat de overijverige ChatGPT vaak wel wil doen. Mijn prompt bij NotebookLM

Zoek in alle transcripties waar heel expliciet wordt gesproken over notities, notitieboeken, pen, papier, briefjes, schetsen of vergelijkbare analoge hulpmiddelen in het creatieve proces. Hoe gebruikt de geïnterviewde deze instrumenten?
Laat dat zien met een quote per geinterviewde. Geef de quotes in een puntsgewijze lijst per geinterviewde. Laat duidelijk zien dat iets wordt gebruikt als papier, systeemkaartjes, notitieboeken, losse vellen.

Het eindresultaat

Ik heb na een eerste check al zeker 5 namen die mogelijk interessant zijn voor mijn project. Uit de enorme berg informatie van 10 seizoenen Ervaring voor Beginners heb ik de parels gevonden die ik zocht. Nu wil ik de specifieke fragmenten nog wel afluisteren, inclusief de context van de quote. Als het een waardevolle lead is voor mijn project, dan moet ik op zoek naar een contact. Allemaal mensenwerk, maar zó leuk om te doen!

Over de balans tussen scrapen en research

Ik vroeg me af of het wel verantwoord is om een podcast op deze manier te “scrapen” en alle audio binnen te halen. Aan de andere kant realiseerde ik me dat ik inmiddels al vier à vijf namen heb gevonden waar ik echt dieper in wil duiken. Het doel is niet om zomaar alles te verzamelen, maar om die specifieke momenten zorgvuldig af te luisteren en te verifiëren wat er gezegd wordt. Bovendien ga ik die makers zelf nog benaderen voor een gesprek. Het voelt dan meer als gericht onderzoek dan als ongericht scrapen. Ondanks het scrapen en geautomatiseerd verwerken van de podcast, de afleveringen en de interactie tussen Theo Maassen en zijn gast is altijd heerlijk om naar te luisteren. Ik kan je de podcast sowieso aanraden!

Waarom werkt deze aanpak

Door data en creativiteit te combineren, voorkom ik dat ik verdrink in een zee aan audiofiles. In plaats daarvan filter ik gericht interessante makers en haal ik snel de kern uit de transcripties. Dit soort iteratieve workflows helpt me om helder te blijven focussen op wat echt belangrijk is in het creatieve avontuur. Daarnaast leer ik met deze stappen hoe ik met AI, code en logisch nadenken grote hoeveelheden data kan uitpluizen en er relevante informatie uit kan halen voor dit specifieke project. Dat is een competentie die je als kenniswerker meer en meer nodig zult hebben. Het is daarom goed die te trainen en te documenteren.

Volg mijn CreativeNotes avontuur!

Wil je volgen hoe zich dit verder ontwikkelt? Kijk dan op https://notes.frankmeeuwsen.com, waar ik al mijn ontdekkingen, stappen en gedachten deel. Schrijf je daar ook in voor de nieuwsbrief om niets te missen. Of direct hieronder.