<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Granda | Ideas &amp; Code</title><link>https://granda.org/nl/</link><description>Recent content on Granda | Ideas &amp; Code</description><generator>Hugo</generator><language>nl</language><lastBuildDate>Sat, 16 May 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://granda.org/nl/index.xml" rel="self" type="application/rss+xml"/><item><title>Een LLM op een Sony PSP</title><link>https://granda.org/nl/2026/05/16/een-llm-op-een-sony-psp/</link><pubDate>Sat, 16 May 2026 00:00:00 +0000</pubDate><guid>https://granda.org/nl/2026/05/16/een-llm-op-een-sony-psp/</guid><description>&lt;p&gt;Een Sony PSP-2000 is een 333 MHz MIPS-handheld uit 2007 met 64 MB RAM. De mijne draait deze week een Transformer met 15 miljoen parameters en streamt Engelse tekst naar het LCD-scherm met één à twee tokens per seconde.&lt;/p&gt;
&lt;p style="text-align: center;"&gt;
 &lt;img src="https://granda.org/images/posts/an-llm-on-a-sony-psp-chat.png" alt="PSP-framebuffer aan het einde van een bench-run van 64 tokens. Prompt 'Once upon a time, there was a little girl named Layla', aanvulling eronder, voettekst '64 tokens in 42.6s (1.5 tok/s)'." width="720" /&gt;
&lt;/p&gt;</description></item><item><title>xAI's nieuwe coderingsagent Grok Build levert zijn prompts in platte tekst</title><link>https://granda.org/nl/2026/05/15/xais-nieuwe-coderingsagent-grok-build-levert-zijn-prompts-in-platte-tekst/</link><pubDate>Fri, 15 May 2026 00:00:00 +0000</pubDate><guid>https://granda.org/nl/2026/05/15/xais-nieuwe-coderingsagent-grok-build-levert-zijn-prompts-in-platte-tekst/</guid><description>&lt;p&gt;xAI &lt;a href="https://x.ai/news/grok-build-cli"&gt;lanceerde Grok Build&lt;/a&gt; gisteren — hun antwoord op Claude Code en Codex CLI. Het installatiecommando is één regel, de binary is alleen beschikbaar voor hun hoogste consumentenniveau ($299/maand, $99 intro), en de agent zelf communiceert met Grok 4 via een OpenAI-compatibel HTTP-oppervlak.&lt;/p&gt;
&lt;p&gt;Ik downloadde de binary omdat ik nieuwsgierig was in welke taal hij gebouwd was. Ik kwam eruit met een dertigtal woordelijke systeemprompts, de namen van elke interne subagent, elke tooltbeschrijving en een vrij compleet beeld van de architectuur. Niets ervan kostte meer dan &lt;code&gt;tr&lt;/code&gt; en &lt;code&gt;grep&lt;/code&gt;.&lt;/p&gt;</description></item><item><title>Een Deadman Switch voor Firewall-aanpassingen</title><link>https://granda.org/nl/2026/05/05/een-deadman-switch-voor-firewall-aanpassingen/</link><pubDate>Tue, 05 May 2026 00:00:00 +0000</pubDate><guid>https://granda.org/nl/2026/05/05/een-deadman-switch-voor-firewall-aanpassingen/</guid><description>&lt;p&gt;De enge regel in homelab-automatisering is de regel die een firewallregel aanpast op de router waarmee je via SSH verbonden bent.&lt;/p&gt;
&lt;p&gt;Zo bewerken Claude Code en ik ze toch.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="de-angst"&gt;De Angst&lt;/h2&gt;
&lt;p&gt;Ik moest een UDM Pro-regel genaamd &lt;em&gt;&amp;ldquo;Block inter-VLAN traffic&amp;rdquo;&lt;/em&gt; van &lt;code&gt;accept&lt;/code&gt; naar &lt;code&gt;drop&lt;/code&gt; omzetten. De regel was al eeuwen verkeerd ingesteld — op &lt;code&gt;accept&lt;/code&gt; gezet, waardoor elke per-flow toestemming daarboven werd kortgesloten — en dit weer sluiten was het hele doel. De orchestrator die de wijziging uitvoerde was een NixOS VM op mijn thuisnetwerk. Als de wijziging het pad verstoorde dat die VM (of mijn eigen SSH) gebruikte, zou ik buitengesloten zijn van mijn eigen router zonder consolefallback.&lt;/p&gt;</description></item><item><title>LLM-gewichten met de Hand Aanpassen</title><link>https://granda.org/nl/2026/04/15/llm-gewichten-met-de-hand-aanpassen/</link><pubDate>Wed, 15 Apr 2026 00:00:00 +0000</pubDate><guid>https://granda.org/nl/2026/04/15/llm-gewichten-met-de-hand-aanpassen/</guid><description>&lt;p&gt;Ik schreef een implementatie van nul af van ROME — rang-één modelbewerking — met niets anders dan &lt;code&gt;torch&lt;/code&gt; en &lt;code&gt;transformers&lt;/code&gt;. Het doel: één enkel feit herschrijven in GPT-2 Medium met één matrixoptelling, en kijken wat er daarna gebeurt met alles wat het model verder weet.&lt;/p&gt;
&lt;p&gt;Ik voerde vier bewerkingen uit. Drie waren chirurgisch. De vierde liet zien dat de &amp;ldquo;chirurgische precisie&amp;rdquo; van ROME extreem gevoelig is voor implementatiedetails waar je van tevoren niet per se aan denkt.&lt;/p&gt;</description></item><item><title>Analyse</title><link>https://granda.org/nl/analytics/</link><pubDate>Fri, 03 Apr 2026 00:00:00 +0000</pubDate><guid>https://granda.org/nl/analytics/</guid><description/></item><item><title>Een Ruimtevaartuig-computersimulator Bouwen met Claude Code</title><link>https://granda.org/nl/2026/03/30/een-ruimtevaartuig-computersimulator-bouwen-met-claude-code/</link><pubDate>Mon, 30 Mar 2026 00:00:00 +0000</pubDate><guid>https://granda.org/nl/2026/03/30/een-ruimtevaartuig-computersimulator-bouwen-met-claude-code/</guid><description>&lt;p&gt;Ik wilde begrijpen hoe computers op ruimtevaartuigen werken. De realtime planning, de stralingsbestendigheid, het vertragingstolerante netwerken dat Mars-rovers in contact houdt met de Aarde. Met Artemis II in het verschiet (de eerste bemande maanmissie in meer dan 50 jaar) leek het het juiste moment om dieper te duiken. Dus bouwde ik een simulator. Van de grond af. Met Claude Code als mijn pair programmer.&lt;/p&gt;
&lt;p&gt;Geen fysieke hardware. Alles draait in QEMU en Docker op een laptop. &lt;a href="https://github.com/granda/spacecraft-computing-sim"&gt;Code op GitHub.&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Jouw geparkeerde Tesla is een datacentrum</title><link>https://granda.org/nl/2026/03/13/jouw-geparkeerde-tesla-is-een-datacentrum/</link><pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate><guid>https://granda.org/nl/2026/03/13/jouw-geparkeerde-tesla-is-een-datacentrum/</guid><description>&lt;p&gt;Je auto staat 95% van de tijd geparkeerd. Binnenin zit een chip die 300 tot 500 biljoen bewerkingen per seconde aankan, gekoppeld aan koeling, vermogensomzetting en een mobiele radio. Hij doet niets.&lt;/p&gt;
&lt;p&gt;Tesla en xAI willen dat veranderen. Op 11 maart onthulde Elon Musk &lt;a href="https://www.cnbc.com/2026/03/11/musk-unveils-joint-tesla-xai-project-macrohard.html"&gt;&amp;ldquo;Macrohard&amp;rdquo;&lt;/a&gt; — intern Digital Optimus genoemd — een gezamenlijk project dat geparkeerde Tesla&amp;rsquo;s omzet in persoonlijke AI-agenten. Geen chatbots. Agenten die je scherm in de gaten houden, je muis en toetsenbord bedienen, en echt werk verrichten.&lt;/p&gt;</description></item><item><title>Visuele QA als CI Pipeline Stadium</title><link>https://granda.org/nl/2026/02/06/visuele-qa-als-ci-pipeline-stadium/</link><pubDate>Fri, 06 Feb 2026 00:00:00 +0000</pubDate><guid>https://granda.org/nl/2026/02/06/visuele-qa-als-ci-pipeline-stadium/</guid><description>&lt;p&gt;Ik mergede een PR vorige maand. De code review zag er goed uit. Tests slaagden. Toen opende ik de site op mijn telefoon en de sidebar was compleet kapot.&lt;/p&gt;
&lt;p&gt;De oplossing was triviaal—een ontbrekende media query. De bug was overduidelijk zodra je daadwerkelijk naar de mobiele weergave keek. Niemand deed dat.&lt;/p&gt;
&lt;p&gt;Dus voegde ik een pipeline stadium toe dat kijkt.&lt;/p&gt;
&lt;p&gt;Ik open een GitHub issue dat zegt:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Implementeer de Handmatige Invoer optie voor het toevoegen van klanten. Bij klikken opent een brede slide-over drawer met een formulier om een nieuwe klant aan te maken.&lt;/p&gt;</description></item><item><title>Voor Wie Is Agent Trace?</title><link>https://granda.org/nl/2026/01/30/voor-wie-is-agent-trace/</link><pubDate>Fri, 30 Jan 2026 00:00:00 +0000</pubDate><guid>https://granda.org/nl/2026/01/30/voor-wie-is-agent-trace/</guid><description>&lt;p&gt;Cursor bracht &lt;a href="https://github.com/cursor/agent-trace"&gt;Agent Trace&lt;/a&gt; uit, een open specificatie voor het bijhouden welke code in een repo door een LLM is geschreven. Het registreert het model, de tool, het gesprek en de exacte lijnbereiken — allemaal toegevoegd aan een JSONL-bestand in je project.&lt;/p&gt;
&lt;p&gt;De pitch: &amp;ldquo;Naarmate agents meer code schrijven, is het belangrijk om te begrijpen wat van AI kwam versus mensen.&amp;rdquo;&lt;/p&gt;
&lt;p&gt;Ik heb tijd besteed aan het lezen van de spec en de referentie-implementatie. De engineering is solide — schoon schema, doordachte uitbreidbaarheid, goede partnerlijst (Amp, Amplitude, Cloudflare, Cognition, Google, Vercel). Maar ik bleef terugkomen bij één vraag: wat &lt;em&gt;doe&lt;/em&gt; je met deze data?&lt;/p&gt;</description></item><item><title>Afmelden</title><link>https://granda.org/nl/unsubscribe/</link><pubDate>Sat, 10 Jan 2026 00:00:00 +0000</pubDate><guid>https://granda.org/nl/unsubscribe/</guid><description>&lt;p id="unsubscribe-message"&gt;Verwerken...&lt;/p&gt;
&lt;script&gt;
(function() {
 const params = new URLSearchParams(window.location.search);
 const msg = document.getElementById('unsubscribe-message');

 if (params.get('success') === 'true') {
 msg.textContent = 'Je bent afgemeld voor de nieuwsbrief.';
 } else if (params.get('error') === 'missing') {
 msg.textContent = 'Fout: Geen afmeldtoken opgegeven.';
 } else if (params.get('error') === 'invalid') {
 msg.textContent = 'Fout: Ongeldige afmeldlink.';
 } else {
 msg.textContent = 'Fout: Er is een onbekende fout opgetreden.';
 }
})();
&lt;/script&gt;</description></item><item><title>Rijke Links voor Luie Ontwikkelaars</title><link>https://granda.org/nl/2026/01/10/rijke-links-voor-luie-ontwikkelaars/</link><pubDate>Sat, 10 Jan 2026 00:00:00 +0000</pubDate><guid>https://granda.org/nl/2026/01/10/rijke-links-voor-luie-ontwikkelaars/</guid><description>&lt;p&gt;Wanneer ik een bloglink deel op Twitter of Slack, verschijnt het als platte tekst. Geen voorbeeldafbeelding. Gewoon een URL zoals &lt;a href="https://granda.org/en/2026/01/02/claude-code-on-the-go/"&gt;granda.org/en/2026/01/02/claude-code-on-the-go/&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Ik had Open Graph afbeeldingen nodig. De standaard aanpak: handmatig een 1200x630 afbeelding maken voor elk bericht. Dat is saai. Ik vroeg Claude om het te automatiseren.&lt;/p&gt;
&lt;div class="desktop-only"&gt;
&lt;pre tabindex="0"&gt;&lt;code class="language-mermaid" data-lang="mermaid"&gt;flowchart LR
 Push[git push] --&amp;gt; GHA[GitHub Actions]
 GHA --&amp;gt; Hugo[Hugo Server]
 GHA --&amp;gt; PW[Playwright]
 PW --&amp;gt;|screenshot| Hugo
 PW --&amp;gt; IMG[OG Image]
 IMG --&amp;gt; Commit[git commit]
 Commit --&amp;gt; Deploy[Deploy]
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;div class="mobile-only"&gt;
&lt;pre tabindex="0"&gt;&lt;code class="language-mermaid" data-lang="mermaid"&gt;flowchart TB
 Push[git push] --&amp;gt; GHA[GitHub Actions]
 GHA --&amp;gt; Hugo[Hugo Server]
 GHA --&amp;gt; PW[Playwright]
 PW --&amp;gt;|screenshot| Hugo
 PW --&amp;gt; IMG[OG Image]
 IMG --&amp;gt; Commit[git commit]
 Commit --&amp;gt; Deploy[Deploy]
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h2 id="de-opzet"&gt;De Opzet&lt;/h2&gt;
&lt;p&gt;Ik vertelde Claude het probleem: berichten hebben sociale voorbeeldafbeeldingen nodig, maar ik wil ze niet handmatig maken. Maak een screenshot van de artikelinhoud, sla het op als een OG-afbeelding, update de frontmatter automatisch.&lt;/p&gt;</description></item><item><title>Mijn QA Engineer is een LLM</title><link>https://granda.org/nl/2026/01/09/mijn-qa-engineer-is-een-llm/</link><pubDate>Fri, 09 Jan 2026 00:00:00 +0000</pubDate><guid>https://granda.org/nl/2026/01/09/mijn-qa-engineer-is-een-llm/</guid><description>&lt;p&gt;Claude kan op knoppen klikken.&lt;/p&gt;
&lt;p&gt;Dat klinkt triviaal, maar het verandert hoe ik UI&amp;rsquo;s bouw. Met Playwright MCP schrijft Claude niet alleen code—het opent een browser, navigeert naar localhost en verifieert dat dingen daadwerkelijk werken. Het vangt bugs die ik zou missen in code review.&lt;/p&gt;
&lt;h2 id="de-setup"&gt;De Setup&lt;/h2&gt;
&lt;p&gt;Playwright MCP geeft Claude browserautomatisering. Ik voer het uit met headless Chromium:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;mcpServers&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;playwright&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;command&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;npx&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;args&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;@anthropic-ai/mcp-server-playwright&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;--headless&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Nu kan Claude navigeren, klikken, typen en screenshots maken. Het ziet wat gebruikers zien.&lt;/p&gt;</description></item><item><title>Mijn Eigen Nieuwsbrief Bouwen met Claude</title><link>https://granda.org/nl/2026/01/07/mijn-eigen-nieuwsbrief-bouwen-met-claude/</link><pubDate>Wed, 07 Jan 2026 00:00:00 +0000</pubDate><guid>https://granda.org/nl/2026/01/07/mijn-eigen-nieuwsbrief-bouwen-met-claude/</guid><description>&lt;p&gt;Dag twee van de Hacker News verkeersspits. Veertigduizend bezoekers, geen manier om ze opnieuw te bereiken. Ik had een nieuwsbrief aanmelding nodig.&lt;/p&gt;
&lt;p&gt;Ik keek naar Buttondown, Beehiiv, Substack, ConvertKit. Allemaal overdreven. Ik moest alleen e-mailadressen verzamelen. Ik had geen campagnes, analyses of abonneebeheer nodig. En ik wilde eigenaar zijn van mijn gegevens.&lt;/p&gt;
&lt;p&gt;Dus vroeg ik Claude om het te bouwen.&lt;/p&gt;
&lt;div class="desktop-only"&gt;
&lt;pre tabindex="0"&gt;&lt;code class="language-mermaid" data-lang="mermaid"&gt;flowchart LR
 User([User]) --&amp;gt; Form[Newsletter Form]
 Form --&amp;gt;|POST /api/subscribe| Worker[Cloudflare Worker]
 Worker --&amp;gt; KV[(Cloudflare KV)]
 KV -.-&amp;gt;|Daily sync| GHA[GitHub Actions]
 GHA -.-&amp;gt; Repo[(subscribers.jsonl)]
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;div class="mobile-only"&gt;
&lt;pre tabindex="0"&gt;&lt;code class="language-mermaid" data-lang="mermaid"&gt;flowchart TB
 User([User]) --&amp;gt; Form[Newsletter Form]
 Form --&amp;gt;|POST /api/subscribe| Worker[Cloudflare Worker]
 Worker --&amp;gt; KV[(Cloudflare KV)]
 KV -.-&amp;gt;|Daily sync| GHA[GitHub Actions]
 GHA -.-&amp;gt; Repo[(subscribers.jsonl)]
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h2 id="de-opzet"&gt;De Opzet&lt;/h2&gt;
&lt;p&gt;Ik gaf Claude een Cloudflare API-token via een omgevingsvariabele en beschreef wat ik wilde: een formulier dat e-mailadressen verzamelt en opslaat op een plek die ik beheer.&lt;/p&gt;</description></item><item><title>Claude Code Onderweg</title><link>https://granda.org/nl/2026/01/02/claude-code-onderweg/</link><pubDate>Fri, 02 Jan 2026 00:00:00 +0000</pubDate><guid>https://granda.org/nl/2026/01/02/claude-code-onderweg/</guid><description>&lt;p&gt;Ik draai zes Claude Code agents parallel vanaf mijn telefoon. Geen laptop, geen desktop—alleen Termius op iOS en een cloud VM.&lt;/p&gt;
&lt;h2 id="de-setup"&gt;De Setup&lt;/h2&gt;
&lt;pre tabindex="0"&gt;&lt;code class="language-mermaid" data-lang="mermaid"&gt;flowchart LR
 A[Phone] --&amp;gt;|Termius + mosh| B[Tailscale VPN]
 B --&amp;gt; C[Vultr VM]
 C --&amp;gt; D[Claude Code]
 D --&amp;gt;|PreToolUse hook| E[Poke webhook]
 E --&amp;gt;|Push notification| A
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;De cyclus is: start een taak, telefoon in je zak, krijg een melding wanneer Claude input nodig heeft. Asynchroon ontwikkelen vanaf elke locatie.&lt;/p&gt;</description></item><item><title>De AI het Laten Doen</title><link>https://granda.org/nl/2025/12/28/de-ai-het-laten-doen/</link><pubDate>Sun, 28 Dec 2025 00:00:00 +0000</pubDate><guid>https://granda.org/nl/2025/12/28/de-ai-het-laten-doen/</guid><description>&lt;p&gt;Ik had een dev server nodig: VM met SSH-toegang en dev tools geinstalleerd. Ik beschreef aan Claude Code wat ik wilde en liet het de setup regelen.&lt;/p&gt;
&lt;h2 id="de-prompt"&gt;De Prompt&lt;/h2&gt;
&lt;p&gt;Ik vroeg om een Vultr VM met 8 cores en 32GB RAM, alleen toegankelijk via Tailscale, met persistente sessies die netwerkonderbrekingen overleven.&lt;/p&gt;
&lt;h2 id="wat-claude-code-bouwde"&gt;Wat Claude Code Bouwde&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;1. Provisioneerde de VM via Vultr API&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Het creeerde een 8-core/32GB Ubuntu instantie, wachtte op de IP, en SSH&amp;rsquo;de vervolgens in als root.&lt;/p&gt;</description></item><item><title>Automatische Blogvertalingen met Claude en GitHub Actions</title><link>https://granda.org/nl/2025/12/23/automatische-blogvertalingen-met-claude-en-github-actions/</link><pubDate>Tue, 23 Dec 2025 00:00:00 +0000</pubDate><guid>https://granda.org/nl/2025/12/23/automatische-blogvertalingen-met-claude-en-github-actions/</guid><description>&lt;p&gt;Elke post die ik schrijf wordt automatisch vertaald. Claude handelt de vertaling af, commit de resultaten naar main, en de vertaalde versies worden samen met het origineel gedeployed.&lt;/p&gt;
&lt;h2 id="de-flow"&gt;De Flow&lt;/h2&gt;
&lt;p&gt;De vertaalworkflow draait in GitHub Actions wanneer Engelse content naar main wordt gemerged:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;on&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;push&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;branches&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="l"&gt;main]&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;paths&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="s1"&gt;&amp;#39;content/**/*.en.md&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;pre tabindex="0"&gt;&lt;code class="language-mermaid" data-lang="mermaid"&gt;flowchart LR
 B[Merge naar main] --&amp;gt; C[Vertalingen gegenereerd]
 C --&amp;gt; D[Gecommit naar main]
 D --&amp;gt; E[Productie deploy met alle talen]
&lt;/code&gt;&lt;/pre&gt;&lt;h2 id="de-prompt"&gt;De Prompt&lt;/h2&gt;
&lt;p&gt;De workflow gebruikt &lt;a href="https://github.com/anthropics/claude-code-action"&gt;claude-code-action&lt;/a&gt;:&lt;/p&gt;</description></item><item><title>Over</title><link>https://granda.org/nl/about/</link><pubDate>Mon, 22 Dec 2025 00:00:00 +0000</pubDate><guid>https://granda.org/nl/about/</guid><description>&lt;h2 id="samenvatting"&gt;Samenvatting&lt;/h2&gt;
&lt;p&gt;Dit document biedt achtergrondinformatie over de auteur van dit blog.&lt;/p&gt;
&lt;h2 id="1-achtergrond"&gt;1. Achtergrond&lt;/h2&gt;
&lt;p&gt;Software-ingenieur met 15 jaar ervaring, waarvan 10 jaar actief in het werkveld.
Aandachtsgebieden:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Gedistribueerde systemen&lt;/li&gt;
&lt;li&gt;Backend-ontwikkeling en infrastructuur&lt;/li&gt;
&lt;li&gt;Full-stack en end-to-end productontwikkeling&lt;/li&gt;
&lt;li&gt;Gebruikersinterfaceontwerp&lt;/li&gt;
&lt;li&gt;Bouwen van veilige en betrouwbare systemen&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="2-contact"&gt;2. Contact&lt;/h2&gt;
&lt;p&gt;Altijd blij om in contact te komen met anderen in de industrie:
&lt;a href="https://x.com/mtt"&gt;@mtt&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Over</title><link>https://granda.org/nl/authorship/</link><pubDate>Mon, 22 Dec 2025 00:00:00 +0000</pubDate><guid>https://granda.org/nl/authorship/</guid><description>&lt;h2 id="samenvatting"&gt;Samenvatting&lt;/h2&gt;
&lt;p&gt;Dit document beschrijft de auteursmethodologie die door deze blog wordt gebruikt.&lt;/p&gt;
&lt;h2 id="1-inleiding"&gt;1. Inleiding&lt;/h2&gt;
&lt;p&gt;Deze blog wordt grotendeels gegenereerd met behulp van Large Language Models (LLMs). De auteur biedt richting, redactie en kwaliteitscontrole; de machine levert initiële concepten en vertalingen.&lt;/p&gt;
&lt;h2 id="2-beweegredenen"&gt;2. Beweegredenen&lt;/h2&gt;
&lt;p&gt;De auteur gelooft in transparantie met betrekking tot AI-ondersteunde contentcreatie. In plaats van de gebruikte tools te verhullen, heeft deze openbaarmaking tot doel:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Passende verwachtingen voor lezers te scheppen&lt;/li&gt;
&lt;li&gt;Bij te dragen aan eerlijke normen rond AI-content&lt;/li&gt;
&lt;li&gt;De collaboratieve aard van modern schrijven te erkennen&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="3-wat-dit-betekent"&gt;3. Wat Dit Betekent&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Ideeën&lt;/strong&gt;: Van menselijke oorsprong&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Structuur&lt;/strong&gt;: Collaboratief&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Proza&lt;/strong&gt;: Voornamelijk AI-gegenereerd, door mensen gecontroleerd&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Vertalingen&lt;/strong&gt;: Volledig AI-gegenereerd (niet door mensen gecontroleerd)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="4-kwaliteitsborging"&gt;4. Kwaliteitsborging&lt;/h2&gt;
&lt;p&gt;Engelse content ondergaat menselijke controle vóór publicatie. Vertalingen worden automatisch gegenereerd en kunnen fouten of onhandige formuleringen bevatten. De auteur neemt verantwoordelijkheid voor de definitieve gepubliceerde Engelse content.&lt;/p&gt;</description></item><item><title>Hallo Wereld</title><link>https://granda.org/nl/2025/12/20/hallo-wereld/</link><pubDate>Sat, 20 Dec 2025 00:00:00 +0000</pubDate><guid>https://granda.org/nl/2025/12/20/hallo-wereld/</guid><description>&lt;p&gt;Welkom op mijn blog! Dit is mijn eerste bericht.&lt;/p&gt;
&lt;p&gt;Ik zal hier ideeën, notities en interessante dingen delen.&lt;/p&gt;</description></item></channel></rss>