<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Webdevelopment nieuws en tips | Nixo News</title>
	<atom:link href="https://nixonews.nl/category/webdevelopment/feed/" rel="self" type="application/rss+xml" />
	<link>https://nixonews.nl</link>
	<description>Het laatste nieuws over AI, Webdesign en Development</description>
	<lastBuildDate>Sat, 19 Sep 2026 22:06:58 +0000</lastBuildDate>
	<language>nl-NL</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	
	<item>
		<title>AMD GPU lokale AI draaien: ROCm vs Vulkan uitgelegd</title>
		<link>https://nixonews.nl/amd-gpu-lokale-ai-rocm-vulkan-setup/</link>
					<comments>https://nixonews.nl/amd-gpu-lokale-ai-rocm-vulkan-setup/#respond</comments>
		
		<dc:creator><![CDATA[Sepp Stokbroekx]]></dc:creator>
		<pubDate>Sat, 19 Sep 2026 22:06:54 +0000</pubDate>
				<category><![CDATA[Development Tools]]></category>
		<category><![CDATA[Webdevelopment]]></category>
		<category><![CDATA[AMD GPU]]></category>
		<category><![CDATA[development tools]]></category>
		<category><![CDATA[GPU compute]]></category>
		<category><![CDATA[HIP SDK]]></category>
		<category><![CDATA[LLM]]></category>
		<category><![CDATA[LM Studio]]></category>
		<category><![CDATA[lokale AI]]></category>
		<category><![CDATA[Ollama]]></category>
		<category><![CDATA[ROCm]]></category>
		<category><![CDATA[Vulkan]]></category>
		<guid isPermaLink="false">https://nixonews.nl/amd-gpu-lokale-ai-rocm-vulkan-setup/</guid>

					<description><![CDATA[AMD GPU en lokale AI-modellen draaien is een frustrerende combo. ROCm herkent je GPU niet, Vulkan doet het wel maar is trager. Twee tools lossen dit op.]]></description>
										<content:encoded><![CDATA[<p><strong>Kort antwoord:</strong> Met een AMD GPU lokale AI draaien lukt niet altijd meteen: lokale AI-tools zoals Ollama of LM Studio herkennen je GPU niet automatisch. ROCmFix lost de herkenningSfout op met één Python-commando. InferBench meet daarna welke backend, ROCm of Vulkan, sneller is op jouw specifieke GPU. Zonder deze stap gooi je rekenkracht weg.</p>
<h2>Waarom herkent Ollama je AMD GPU niet?</h2>
<p>Lokale AI-tools zoals Ollama en LM Studio zijn gebouwd met Nvidia in gedachten. AMD-ondersteuning is er wel, maar vraagt meer handwerk. De kern van het probleem: ROCm, de software-laag die AMD-GPU&#8217;s laat praten met AI-frameworks, herkent niet elke GPU-architectuur automatisch. Nieuwere of minder gangbare AMD-chips krijgen een foutmelding, terwijl de hardware zelf prima modellen kan draaien.</p>
<p>ROCm staat voor Radeon Open Compute. Het is AMD&#8217;s antwoord op CUDA, de technologie van Nvidia waarmee GPU&#8217;s rekentaken uitvoeren zoals AI. Het probleem: ROCm heeft een lijst van officieel ondersteunde GPU-architecturen. Valt jouw kaart er net buiten, dan crasht de software of negeert hij je GPU gewoon.</p>
<p>De workaround die al jaren de ronde doet op forums: stel de omgevingsvariabele <code>HSA_OVERRIDE_GFX_VERSION</code> handmatig in. Hiermee vertel je ROCm dat jouw GPU zich moet gedragen als een andere, wel ondersteunde architectuur. Werkt prima, maar je moet weten welke waarde je invult. Verkeerde waarde? Crashes, trage output, of een model dat helemaal niet laadt.</p>
<p>Ik heb dit zelf verkeerd ingeschat toen ik voor het eerst een lokaal model probeerde te draaien op een AMD-systeem. Ik dacht dat het een driver-probleem was en heb een uur gezocht in de verkeerde richting. Het was gewoon die ene omgevingsvariabele. Sindsdien check ik dit altijd als eerste bij AMD-hardware.</p>
<p>Meer weten over hoe AI-tools en hardware samenwerken in een development-setup? In dit overzicht over <a href="/ai-code-editor-cursor-windsurf-zed-vergelijking/">AI code editors vergelijken in 2026</a> bespreek ik ook hoe de onderliggende hardware je workflow beïnvloedt.</p>
<h2>ROCmFix: één commando, GPU herkend</h2>
<p>ROCmFix is een Python-script dat de HSA_OVERRIDE_GFX_VERSION-instelling automatisch bepaalt en instelt. Het leest je GPU-informatie uit het Windows-register of via lspci op Linux, zoekt de juiste architectuurwaarde op, en schrijft de variabele permanent weg. Je hoeft geen forumdraden door te spitten voor de juiste waarde.</p>
<p>De tool werkt op zowel Windows als Linux. Op Windows leest hij de PCI-ID van je GPU uit het register. Op Linux gebruikt hij <code>lspci</code>, het standaardcommando om hardware-informatie op te vragen. Op basis van die ID zoekt ROCmFix de juiste GFX-versie op en stelt die in.</p>
<p>Draaien doe je zo:</p>
<pre><code>python rocmfix.py</code></pre>
<p>Wil je eerst checken wat er allemaal geïnstalleerd is? Gebruik dan:</p>
<pre><code>python rocmfix.py doctor</code></pre>
<p>Dat geeft een overzicht van je geïnstalleerde HIP SDK en Vulkan-componenten. Handig als startpunt voordat je begint met modellen laden.</p>
<p>ROCmFix werkt met CMD, PowerShell, Bash, Zsh en Fish. Je stelt de variabele permanent in of alleen voor de huidige sessie, afhankelijk van wat je kiest. Permanent is handig als je altijd met dezelfde GPU werkt. Sessie-instelling is beter als je wisselt tussen systemen of GPU&#8217;s.</p>
<p>Let op: ROCmFix is een community-tool, geen officieel AMD-product. Controleer altijd de broncode voordat je een onbekend script uitvoert met systeemtoegang.</p>
<h2>ROCm of Vulkan: welke backend is sneller op jouw GPU?</h2>
<p>Als je GPU eenmaal herkend is, komt de volgende vraag: draai je je modellen via de ROCm/HIP-backend of via Vulkan? Vulkan is een grafische API die je ook voor compute-taken inzet. ROCm is specifiek gebouwd voor GPU-rekentaken. Welke sneller is, verschilt per GPU-generatie. InferBench meet dit automatisch op jouw systeem.</p>
<p>Vulkan en ROCm/HIP geven op papier andere prestaties. In de praktijk hangt het af van je specifieke GPU, het model dat je draait, en de hoeveelheid VRAM die je tot je beschikking hebt.</p>
<p>InferBench automatiseert het vergelijken. Het werkt zo:</p>
<ol>
<li>Eerst stuurt het een warm-up query, zodat het model volledig in VRAM geladen is.</li>
<li>Dan dwingt het een VRAM-unload tussen elke testrun, zodat caching de resultaten niet vertekent.</li>
<li>Het berekent de mediaan van tokens per seconde (tok/s) en de TTFT (Time-to-First-Token, de tijd tot het eerste woord verschijnt).</li>
</ol>
<p>Die twee getallen zeggen je alles. Tok/s bepaalt hoe snel een lang antwoord gegenereerd wordt. TTFT bepaalt hoe snel de tool <em>voelt</em> voor de gebruiker. Een hoge tok/s met een hoge TTFT is frustrerend in gebruik, ook al is de totaalsnelheid goed.</p>
<p>Naar mijn idee is InferBench de ontbrekende schakel die mensen altijd overslaan. Ze draaien een model, het lijkt te werken, en ze stoppen daar. Maar zonder meting weet je niet of je 40% snelheid laat liggen omdat je de verkeerde backend gebruikt. Dat is zonde als je toch al de moeite hebt genomen om alles lokaal op te zetten.</p>
<p>Zie ook hoe lokale AI-tools passen in een bredere developer-workflow in dit artikel over <a href="/developer-rol-ai-tijdperk-veranderingen/">de rol van developers in het AI-tijdperk</a>.</p>
<h2>Wanneer kies je voor een lokale LLM-setup op AMD?</h2>
<p>Lokaal draaien van een AI-model heeft voordelen: geen API-kosten, geen data die de deur uitgaat, en je kunt offline werken. Maar het vraagt meer technische kennis dan een cloud-API aanroepen. Op AMD-hardware vraagt het nog wat extra stappen. Dit is mijn eerlijke afweging van wanneer het de moeite waard is.</p>
<p>Ik zou een lokale AMD-setup overwegen als je aan drie van de volgende vier punten voldoet:</p>
<ul>
<li>Je hebt een AMD GPU met minimaal 8 GB VRAM (minder werkt, maar dan draai je alleen kleine modellen).</li>
<li>Je verwerkt gevoelige data die je niet naar een externe API wilt sturen.</li>
<li>Je maakt intensief gebruik van AI en de API-kosten lopen op.</li>
<li>Je hebt een half uur om de setup te doen en wil geen cloudafhankelijkheid.</li>
</ul>
<p>Heb je een Nvidia GPU? Dan is de setup aanzienlijk eenvoudiger. CUDA werkt zonder gedoe, en Ollama herkent de meeste Nvidia-kaarten direct. AMD vraagt die extra ROCmFix-stap.</p>
<p>Heb je geen eigen GPU of wil je niet sleutelen? Dan is een cloud-API gewoon sneller en goedkoper voor de meeste use cases. De tools die hier besproken worden zijn voor developers die bewust kiezen voor lokaal draaien en de technische overhead accepteren.</p>
<p>Als je al werkt met lokale AI in je projecten, bekijk dan ook hoe je <a href="/llm-model-migratie-ai-applicaties/">van het ene LLM-model naar het andere migreert</a> zonder dat je applicatie omvalt.</p>
<div class="nn-related-posts">
<h3>Dit vind je misschien ook interessant</h3>
<ul>
<li><a href="https://nixonews.nl/deerflow-open-source-multi-agent-framework/">DeerFlow: open-source multi-agent framework van ByteDance</a></li>
<li><a href="https://nixonews.nl/zelf-digital-signage-bouwen-open-source/">Digital signage open source: Visio-Display zelf bouwen en beheren</a></li>
<li><a href="https://nixonews.nl/ide-stijl-portfolio-nextjs-gsap/">Portfolio website bouwen als IDE met Next.js en GSAP</a></li>
</ul>
</div>
]]></content:encoded>
					
					<wfw:commentRss>https://nixonews.nl/amd-gpu-lokale-ai-rocm-vulkan-setup/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>DeerFlow: open-source multi-agent framework van ByteDance</title>
		<link>https://nixonews.nl/deerflow-open-source-multi-agent-framework/</link>
					<comments>https://nixonews.nl/deerflow-open-source-multi-agent-framework/#respond</comments>
		
		<dc:creator><![CDATA[Sepp Stokbroekx]]></dc:creator>
		<pubDate>Tue, 08 Sep 2026 06:02:39 +0000</pubDate>
				<category><![CDATA[AI Development]]></category>
		<category><![CDATA[Webdevelopment]]></category>
		<category><![CDATA[agent framework]]></category>
		<category><![CDATA[ai development]]></category>
		<category><![CDATA[AI workflow]]></category>
		<category><![CDATA[ByteDance]]></category>
		<category><![CDATA[developer tools]]></category>
		<category><![CDATA[Docker]]></category>
		<category><![CDATA[LLM]]></category>
		<category><![CDATA[multi-agent]]></category>
		<category><![CDATA[open-source]]></category>
		<category><![CDATA[sandboxing]]></category>
		<guid isPermaLink="false">https://nixonews.nl/deerflow-open-source-multi-agent-framework/</guid>

					<description><![CDATA[DeerFlow is een open-source framework van ByteDance waarmee je meerdere AI-agents samen laat werken. Geschikt voor developers die complexe AI-workflows willen bouwen met veilige sandboxing en flexibele LLM-keuze.]]></description>
										<content:encoded><![CDATA[<p><strong>Kort antwoord:</strong> DeerFlow is een gratis, open-source framework van ByteDance waarmee je meerdere AI-agents orkestreert die samen een taak uitvoeren. Het regelt geheugen, veilige code-uitvoering via Docker of Kubernetes, en werkt met GPT-4o, Gemini, lokale modellen en meer. Opzetten duurt minder dan 10 minuten via één commando.</p>
<h2>Wat doet DeerFlow precies?</h2>
<p>DeerFlow staat voor Deep Exploration and Efficient Research Flow. Dat klinkt ingewikkelder dan het is. In de kern is het een orkestratielaag: één hoofdagent die meerdere sub-agents aanstuurt, elk met een eigen taak. Eén zoekt informatie op, een tweede vat samen, een derde schrijft code op basis van die samenvatting. Allemaal gecoördineerd door DeerFlow, zonder dat jij dat handmatig hoeft te regelen.</p>
<p>Normaal betekent multi-agent (meerdere AI-agents die samenwerken) een berg custom code om context door te sturen, fouten op te vangen en de volgorde te bewaken. DeerFlow neemt dat van je over.</p>
<p>Het framework biedt drie dingen die ik direct interessant vind:</p>
<ul>
<li><strong>Sub-agent orkestratie:</strong> je definieert wie wat doet, DeerFlow regelt de handoff.</li>
<li><strong>Geheugenbeheer:</strong> zowel kortetermijncontext (lopend gesprek) als langetermijngeheugen, zodat agents kunnen leren van eerdere runs.</li>
<li><strong>Sandboxing:</strong> agent-gegenereerde code voer je niet zomaar uit op je server. DeerFlow isoleert die uitvoering in een lokale omgeving, Docker-container of Kubernetes-pod.</li>
</ul>
<p>Dat laatste is voor mij het meest waardevol. Als een agent code produceert die je niet 100% vertrouwt, wil je niet dat die zomaar op je productieserver draait. Met de instelling <code>auto_approve_permissions: false</code> in je config gaat er niets door zonder jouw goedkeuring. Eén regel, grote impact.</p>
<p>DeerFlow is ontwikkeld door ByteDance en bereikte in februari 2026 de eerste plek op GitHub Trending na de lancering van versie 2. Of dat betekent dat het de standaard wordt? Dat weet ik nog niet. Maar de technische basis is serieus genoeg om te testen.</p>
<h2>Opzetten in minder dan 10 minuten: hoe werkt dat?</h2>
<p>Je kloont de repo, typt drie regels en een wizard regelt de rest. Dat is het. DeerFlow vraagt je welke LLM je wilt gebruiken, of je web search wilt, en welke sandbox-modus je kiest. Daarna schrijft het zelf een config.yaml en slaat API-keys op in een .env bestand. Voor developers die graag zelf alles instellen: er is ook een uitgebreid template beschikbaar.</p>
<p>De setup ziet er zo uit:</p>
<pre><code>git clone https://github.com/bytedance/deer-flow.git
cd deer-flow
make setup</code></pre>
<p>De <code>make setup</code> wizard doorloopt de belangrijkste keuzes: LLM-provider, web search, sandbox-modus en schrijftoegang tot bestanden. Binnen een paar minuten heb je een werkende basisinstallatie.</p>
<p>Wil je meer controle? Dan gebruik je <code>make config</code>, dat kopieert het volledige configuratietemplate zodat je alles handmatig kunt aanpassen: subagent runtime-limieten, modelconfiguraties per agent, sandbox-instellingen.</p>
<p>Er is ook een ingebouwde health check:</p>
<pre><code>make doctor</code></pre>
<p>Dat commando controleert of alles klopt en geeft concrete suggesties als er iets mist. Klinkt als een detail, maar als je met Docker-containers en API-keys werkt, is een geautomatiseerde check een stuk betrouwbaarder dan zelf uitzoeken wat er misgaat.</p>
<p>Voor Docker-ontwikkeling:</p>
<pre><code>make docker-init
make docker-start</code></pre>
<p>Dit start je services met hot-reloading, zodat je config-wijzigingen direct worden opgepikt zonder handmatige herstart. Prettig als je iteratief werkt.</p>
<h2>Welke AI-modellen werken met DeerFlow?</h2>
<p>Vrijwel alles. GPT-4o, Gemini 2.5 Flash via OpenRouter, lokale modellen via vLLM, en zelfs CLI-gebaseerde tools zoals Claude Code. Je koppelt elk model aan een specifieke sub-agent, zodat je de goedkopere of snellere optie kunt inzetten voor eenvoudige taken en het zwaardere model reserveert voor de moeilijke stappen.</p>
<p>DeerFlow gebruikt <code>langchain_openai:ChatOpenAI</code> als basis voor OpenAI-compatibele providers. Dat betekent dat alles met een OpenAI-compatibele API direct werkt, inclusief OpenRouter (die toegang geeft tot honderden modellen) en lokale vLLM-deployments.</p>
<p>Een voorbeeld uit de config.yaml:</p>
<pre><code>models:
  - name: gpt-4o
    use: langchain_openai:ChatOpenAI
    model: gpt-4o
    api_key: $OPENAI_API_KEY

  - name: openrouter-gemini
    use: langchain_openai:ChatOpenAI
    model: google/gemini-2.5-flash-preview
    api_key: $OPENROUTER_API_KEY
    base_url: https://openrouter.ai/api/v1

  - name: lokaal-qwen
    use: deerflow.models.vllm_provider:VllmChatModel
    model: Qwen/Qwen3-32B
    api_key: $VLLM_API_KEY
    base_url: http://localhost:8000/v1</code></pre>
<p>Elk model wijs je toe aan een specifieke sub-agent. Dat is slim: je kunt de goedkopere Gemini Flash inzetten voor het samenvatten van bronnen, en GPT-4o alleen gebruiken voor de stap die echt redenering vereist. Zo houd je de kosten in de hand.</p>
<p>Mijn voorkeur zou zijn om te beginnen met één model, de workflow stabiel te krijgen, en dan pas te differentiëren per agent. Direct met vijf verschillende modellen starten maakt debuggen lastig. Kies voor de eerste tests een model dat je al kent.</p>
<p>Als je meer wilt weten over het switchen tussen AI-modellen in een bestaande setup, is het artikel over <a href="/llm-model-migratie-ai-applicaties/">LLM model migratie zonder gedoe</a> een goede aanvulling.</p>
<h2>Hoeveel server heb je nodig voor een stabiele DeerFlow-omgeving?</h2>
<p>Voor productie raadt ByteDance 8 vCPU en 16 GB RAM aan als startpunt. Bij zware workflows, zoals meerdere agents tegelijk met actieve sandbox, heb je al snel 16 vCPU en 32 GB RAM nodig. Op minder dan 8 vCPU krijg je bottlenecks zodra de sandbox actief is. Linux met Docker is de meest stabiele deploymentkeuze.</p>
<p>Dit is het onderdeel dat veel tutorials overslaan, maar dat je later duur kan komen te staan. DeerFlow is geen lichtgewicht tool. De sandbox-modus voert code uit in geïsoleerde containers, en dat kost resources.</p>
<p>Richtlijnen voor productie:</p>
<ul>
<li><strong>Minimaal:</strong> 8 vCPU, 16 GB RAM, 40 GB vrije SSD</li>
<li><strong>Intensief gebruik:</strong> 16 vCPU, 32 GB RAM (voor multi-agent runs of rapportgeneratie)</li>
<li><strong>OS:</strong> Linux met Docker is de aanbevolen combinatie</li>
</ul>
<p>Voor development werkt Docker uitstekend en geeft het je isolatie zodat je lokale machine niet vervuild raakt met dependencies.</p>
<p>Naar mijn idee is dit ook het punt waar DeerFlow verschilt van simpelere AI-tools: het is infrastructuur, geen plugin. Je zet het op zoals je een backend-service opzet, niet zoals je een Chrome-extensie installeert. Dat vraagt een andere manier van denken.</p>
<p>Als je nu al nadenkt over de bredere verschuiving in hoe developers met AI werken, is het artikel over de <a href="/developer-rol-ai-tijdperk-veranderingen/">developer rol in het AI-tijdperk</a> een eerlijke blik op wat er verandert.</p>
<h2>Is DeerFlow iets voor jou als developer?</h2>
<p>DeerFlow is interessant als je complexe, meertraps AI-workflows wilt bouwen waarbij meerdere agents samenwerken. Het is niet geschikt als je simpelweg een chatbot wilt of een API wilt aanroepen. De leercurve is reëel, de infrastructuurvereisten zijn serieus, maar de controle die je terugkrijgt over hoe agents samenwerken is het waard als dat je use case is.</p>
<p>Eerlijk oordeel: DeerFlow is geen beginnersspeeltje. De setup is redelijk toegankelijk dankzij de wizard, maar zodra je meerdere agents met verschillende modellen gaat configureren en de sandbox serieus gaat inzetten, ben je bezig met infrastructuur.</p>
<p>Voor wie het wél interessant is:</p>
<ul>
<li>Developers die AI-workflows bouwen waarbij stappen van elkaar afhankelijk zijn</li>
<li>Teams die agent-gegenereerde code veilig willen uitvoeren zonder hun productieserver te riskeren</li>
<li>Projecten waarbij je wilt schakelen tussen LLM-providers per taak, voor kosten- of kwaliteitsoptimalisatie</li>
</ul>
<p>Voor wie het minder geschikt is:</p>
<ul>
<li>Je wilt snel een chatbot of eenvoudige AI-assistent bouwen</li>
<li>Je hebt geen server met minimaal 8 vCPU beschikbaar</li>
<li>Je bent niet bekend met Docker en wil dat ook niet worden</li>
</ul>
<p>Wat ik zelf zou doen: het lokaal opzetten met <code>make setup</code>, één eenvoudige workflow testen met twee agents en één model, en dan evalueren of de complexiteit gerechtvaardigd is voor het project. Niet direct in productie gooien.</p>
<p>Ben je ook bezig met het bouwen van AI-agents voor specifieke taken? Het artikel over AI-agents als ontwikkelteam laat zien hoe zo&#8217;n opzet er in de praktijk uitziet.</p>
<div class="nn-related-posts">
<h3>Dit vind je misschien ook interessant</h3>
<ul>
<li><a href="https://nixonews.nl/zelf-digital-signage-bouwen-open-source/">Digital signage open source: Visio-Display zelf bouwen en beheren</a></li>
<li><a href="https://nixonews.nl/ide-stijl-portfolio-nextjs-gsap/">Portfolio website bouwen als IDE met Next.js en GSAP</a></li>
<li><a href="https://nixonews.nl/wordpress-7-0-3-beveiligingsupdate-xss-kwetsbaarheden/">WordPress beveiliging: versie 7.0.3 dicht 12 lekken, dit moet je weten</a></li>
</ul>
</div>
]]></content:encoded>
					
					<wfw:commentRss>https://nixonews.nl/deerflow-open-source-multi-agent-framework/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Digital signage open source: Visio-Display zelf bouwen en beheren</title>
		<link>https://nixonews.nl/zelf-digital-signage-bouwen-open-source/</link>
					<comments>https://nixonews.nl/zelf-digital-signage-bouwen-open-source/#respond</comments>
		
		<dc:creator><![CDATA[Sepp Stokbroekx]]></dc:creator>
		<pubDate>Fri, 28 Aug 2026 06:03:54 +0000</pubDate>
				<category><![CDATA[Development Tools]]></category>
		<category><![CDATA[Webdevelopment]]></category>
		<category><![CDATA[digital signage]]></category>
		<category><![CDATA[Docker]]></category>
		<category><![CDATA[Flask]]></category>
		<category><![CDATA[kiosk]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[self-hosting]]></category>
		<category><![CDATA[server beheer]]></category>
		<category><![CDATA[webdevelopment]]></category>
		<guid isPermaLink="false">https://nixonews.nl/zelf-digital-signage-bouwen-open-source/</guid>

					<description><![CDATA[Visio-Display is een gratis, zelf te hosten platform waarmee je schermen op afstand beheert. Geen abonnement, volledige controle. Maar wanneer is dit slim en wanneer kies je toch voor een betaalde dienst?]]></description>
										<content:encoded><![CDATA[<p><strong>Kort antwoord:</strong> Visio-Display is een gratis digital signage open source platform (GPL-3.0 licentie) waarmee je meerdere schermen centraal beheert via een webinterface. Je installeert het op je eigen server met één commando, hebt volledige controle over je data en betaalt geen maandabonnement. De keerzijde: je bent zelf verantwoordelijk voor onderhoud, updates en herstel bij problemen.</p>
<h2>Wat is digital signage eigenlijk?</h2>
<p>Digital signage is het aansturen van schermen op afstand. Denk aan de menukaart bij een café, een welkomstscherm in een kantoor of een promobord in een winkel. Normaal betaal je maandelijks voor de software die dat regelt. Visio-Display gooit dat model om: je host het zelf, betaalt niets per maand en hebt volledige controle.</p>
<p>De meeste digital signage-oplossingen werken als een SaaS-abonnement: je betaalt per scherm, per maand, voor software die op andermans servers draait. Dat klinkt prima tot je zes schermen hebt en de factuur oploopt naar honderden euro&#8217;s per jaar.</p>
<p>Visio-Display pakt dit anders aan. Het is een digital signage open source platform (de broncode is vrij beschikbaar en je mag het gratis gebruiken en aanpassen) dat je op je eigen server installeert. Technisch draait het op Python, Flask en PostgreSQL, met Docker Compose voor de deployment. Je beheert alles via een webinterface: welk scherm toont wat, wanneer en hoe lang.</p>
<p>Wat opvalt is dat het project verder gaat dan alleen een filmpje op een scherm zetten. Het dekt de hele operationele kant: planning op datum en tijd, prioriteitscampagnes die automatisch terugvallen op het normale schema, een ingebouwde editor voor aankondigingen en een QR-codegenerator. Dat is meer dan je verwacht van een gratis project. De vraag is wel hoe stabiel dit is op de lange termijn als de ontwikkelaar ermee stopt, maar dat geldt voor elk open-source project.</p>
<h2>Hoe werkt de installatie in de praktijk?</h2>
<p>Eén commando en de installer regelt de rest: prerequisites checken, repository klonen, secrets genereren, containers bouwen en opstarten. In de praktijk heb je wel een Linux-server nodig met Docker en Docker Compose al geïnstalleerd. Voor iemand die dat gewend is, duurt de installatie tien minuten.</p>
<p>De installatie start je met dit commando op je Linux-server:</p>
<p><code>bash &lt;(curl -fsSL https://raw.githubusercontent.com/woofix/visio_display/main/server-install.sh)</code></p>
<p>De installer doorloopt de volgende stappen: hij checkt of Docker en Git aanwezig zijn, kloont de repository, genereert beveiligingstokens, maakt een beheerdersaccount aan en start de hele stack op. Je kiest tussendoor de taal (Frans of Engels) en geeft een paar basisinstellingen in. Daarna heb je een werkende omgeving.</p>
<p>Let op: je hebt een server nodig die 24/7 online is. Een goedkope VPS van vijf euro per maand werkt prima als je maar een paar schermen hebt. Maar die server moet je zelf bijhouden, patchen en monitoren. Als je liever focust op je eigen werk en niet op serveronderhoud, is een betaalde SaaS-oplossing alsnog goedkoper dan het klinkt.</p>
<p>Er is ook een handmatige Docker Compose-installatie gedocumenteerd voor mensen die elke stap zelf willen controleren. Dat is de veiligere keuze als je weet wat je doet.</p>
<h2>Hoe beheer je schermen op afstand?</h2>
<p>Elk scherm draait als een Linux-kiosk-client en stuurt elke 30 seconden een heartbeat naar de server. Valt het scherm weg? Na vijf minuten markeert de server het als offline. Komt het terug online, dan herkent de server het automatisch. Geen handmatig opnieuw koppelen.</p>
<p>Remote beheer van schermen is normaal een gedoe: een scherm valt weg, iemand moet er fysiek naartoe, opnieuw inloggen, opnieuw koppelen. Visio-Display lost dat op met een systemd-service (een achtergrondproces dat automatisch start bij het opstarten van de computer) op elke client.</p>
<p>Die service stuurt elke 30 seconden een signaal naar de server. Valt het scherm weg door stroomuitval of een netwerkprobleem? De server markeert het na vijf minuten als offline. Zodra het scherm herstart en weer online komt, pakt de service het gewoon op. Geen handmatige tussenkomst.</p>
<p>Via de webinterface zie je per scherm: is het online, welk scherm laat het zien, en je kunt een screenshot opvragen. Remote acties als herstarten, afsluiten, opnieuw installeren of updaten doe je ook vanuit de interface. Deployment van nieuwe Linux-clients gaat via SSH (een beveiligde verbinding om op afstand in te loggen op een server).</p>
<p>Vergelijk dit met hoe je <a href="/ai-wordpress-code-begrijpen-verbeteren/">WordPress-infrastructuur op afstand monitort en automatiseert</a>: het principe is hetzelfde. Ik vraag me af hoe dit werkt met grote aantallen schermen, zeg vijftig of meer. De documentatie geeft daar geen antwoord op.</p>
<h2>Voor wie is self-hosted digital signage een goed idee?</h2>
<p>Ben je technisch onderlegd, beheer je al een server en vind je privacy of databeheer belangrijk? Dan is Visio-Display interessant. Ben je ondernemer die gewoon wil dat zijn schermen werken zonder erover na te denken? Dan is een betaalde dienst eerlijker. Self-hosting is geen gratis lunch, het is een andere manier van betalen: met tijd in plaats van geld.</p>
<p>De eerlijke afweging is deze: self-hosted software is alleen gratis als je eigen tijd niets waard is. En dat is zelden zo.</p>
<p>Visio-Display is een goede keuze voor:</p>
<ul>
<li>Developers of IT-beheerders die toch al een server runnen</li>
<li>Organisaties met strikte eisen aan dataopslag (geen data op externe servers)</li>
<li>Projecten met veel schermen waar een SaaS-abonnement snel duur wordt</li>
<li>Mensen die willen experimenteren en leren</li>
</ul>
<p>Het is geen goede keuze voor:</p>
<ul>
<li>Ondernemers zonder technische achtergrond die gewoon een scherm willen aansturen</li>
<li>Situaties waar 99,9% uptime kritisch is (je bent zelf verantwoordelijk)</li>
<li>Teams zonder iemand die Docker en Linux begrijpt</li>
</ul>
<p>Er zijn betaalde alternatieven zoals ScreenCloud, Yodeck of Screenly die voor 10 tot 20 euro per scherm per maand alles regelen inclusief support. Als je twee schermen hebt, is dat 240 tot 480 euro per jaar. Dat is wat het je kost om er niet over na te hoeven denken. Soms is dat de betere investering.</p>
<p>Wil je weten hoe zulke afwegingen voor andere development-tools uitpakken? <a href="/ai-code-editor-cursor-windsurf-zed-vergelijking/">Mijn vergelijking van AI-code-editors Cursor, Windsurf en Zed</a> gaat over hetzelfde principe: gratis vs. betaald, en wat het je in de praktijk kost.</p>
<div class="nn-related-posts">
<h3>Dit vind je misschien ook interessant</h3>
<ul>
<li><a href="https://nixonews.nl/ide-stijl-portfolio-nextjs-gsap/">Portfolio website bouwen als IDE met Next.js en GSAP</a></li>
<li><a href="https://nixonews.nl/wordpress-7-0-3-beveiligingsupdate-xss-kwetsbaarheden/">WordPress beveiliging: versie 7.0.3 dicht 12 lekken, dit moet je weten</a></li>
<li><a href="https://nixonews.nl/developer-rol-ai-tijdperk-veranderingen/">Developer rol AI-tijdperk: wat ik er zelf van merk in 2026</a></li>
</ul>
</div>
]]></content:encoded>
					
					<wfw:commentRss>https://nixonews.nl/zelf-digital-signage-bouwen-open-source/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Portfolio website bouwen als IDE met Next.js en GSAP</title>
		<link>https://nixonews.nl/ide-stijl-portfolio-nextjs-gsap/</link>
					<comments>https://nixonews.nl/ide-stijl-portfolio-nextjs-gsap/#respond</comments>
		
		<dc:creator><![CDATA[Sepp Stokbroekx]]></dc:creator>
		<pubDate>Tue, 18 Aug 2026 08:04:18 +0000</pubDate>
				<category><![CDATA[Development Tools]]></category>
		<category><![CDATA[Webdevelopment]]></category>
		<category><![CDATA[animaties]]></category>
		<category><![CDATA[frontend]]></category>
		<category><![CDATA[gsap]]></category>
		<category><![CDATA[ide]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[next.js]]></category>
		<category><![CDATA[portfolio]]></category>
		<category><![CDATA[tailwind css]]></category>
		<category><![CDATA[vercel]]></category>
		<category><![CDATA[webdevelopment]]></category>
		<guid isPermaLink="false">https://nixonews.nl/ide-stijl-portfolio-nextjs-gsap/</guid>

					<description><![CDATA[Een portfolio dat eruitziet als VS Code. Hoe bouw je een cinematic IDE-interface met Next.js, Tailwind en GSAP? Dit is de aanpak die ik zelf zou volgen.]]></description>
										<content:encoded><![CDATA[<p><strong>Kort antwoord:</strong> Portfolio website bouwen als IDE doe je met Next.js voor routing, Tailwind CSS voor de geometrische layout en GSAP voor animaties zoals een split-gate preloader. De file-tree navigatie werkt als router: klik op een bestand en de inhoud wisselt. Technisch zijn dit gewoon React-componenten met een donker thema en strikte CSS grid. Bouwtijd: realistisch 40 tot 80 uur voor een werkende versie.</p>
<h2>Waarom een standaard portfolio je niet meer opvalt?</h2>
<p>De meeste developer-portfolio&#8217;s zien er hetzelfde uit. Hero-sectie, zwevende mockups, contactformulier. Dat was drie jaar geleden al saai. Wil je opvallen, dan bouw je iets dat mensen niet verwachten. Een IDE-interface is zo&#8217;n keuze: die laat direct zien hoe je denkt als developer, nog voor iemand een regel code leest.</p>
<p>Ik begrijp waarom de meeste portfolios op elkaar lijken. Je zoekt een template, past de kleuren aan, voegt je projecten toe en klaar. Werkt ook prima als je gewoon een URL wilt sturen. Maar als je echt wilt laten zien dat je code schrijft en systemen bouwt, is een generieke pagina een gemiste kans.</p>
<p>Een IDE-stijl portfolio doet iets anders. Het laat de <em>manier</em> zien waarop je werkt, niet alleen de uitkomsten. Bezoeker klikt op <code>about.html</code> in een file-tree aan de linkerkant, en de inhoud verschijnt rechts. Dat voelt als VS Code. Voor een developer-doelgroep is dat onmiddellijk herkenbaar.</p>
<p>Dit is de sterkste route als je solliciteert bij een tech-bedrijf of freelance-klanten aantrekt die zelf ook technisch zijn. Voor een kapper of een coach raad ik dit af, want die doelgroep heeft er niets aan. Maar voor een developer? Perfect. Check ook hoe <a href="/ai-code-editor-cursor-windsurf-zed-vergelijking/">AI-code-editors zoals Cursor en Windsurf je bouwtijd flink kunnen verkorten</a>.</p>
<h2>Welke tech stack gebruik je voor een IDE-portfolio?</h2>
<p>De kern is Next.js voor routing en componentstructuur, Tailwind CSS voor de strakke geometrische styling, en GSAP voor animaties. GSAP staat voor GreenSock Animation Platform: een JavaScript-bibliotheek waarmee je complexe, vloeiende animaties bouwt die je met gewone CSS niet voor elkaar krijgt. DotLottie verzorgt lichte vectoranimaties voor de laadschermen.</p>
<p>Next.js is hier de logische keuze. Je krijgt automatisch routing op basis van je bestandsstructuur, en Vercel deployt het zonder configuratie. Dat scheelt je minstens een uur aan deployment-gedoe.</p>
<p>Tailwind CSS zorgt voor de strikte CSS grid die het IDE-gevoel geeft. Geen flexbox-gedoe waarbij de sidebar ineens over de content schuift op mobiel. Met Tailwinds utility-classes bouw je exact de layout die je wilt, en je stelt de breakpoints strak in.</p>
<p>Dan GSAP. Dit is waar de magie zit. De preloader gebruikt een zogenaamde <em>split-gate reveal</em>: twee donkere vlakken die van het scherm schuiven, omhoog en omlaag, zodat de IDE eronder tevoorschijn komt. Dat bouw je met een GSAP-timeline, zo:</p>
<p><code>gsap.timeline()<br />.to('.gate-top', { y: '-100%', duration: 0.8, ease: 'power2.inOut' })<br />.to('.gate-bottom', { y: '100%', duration: 0.8, ease: 'power2.inOut' }, '&lt;')</code></p>
<p>De <code>'&lt;'</code> laat beide animaties tegelijk starten. Simpel maar effectief. Voor de knipperende terminal-cursor gebruik je gewoon een CSS keyframe-animatie op een solid blok: geen extra library nodig.</p>
<h2>Hoe bouw je de file-tree navigatie die als router werkt?</h2>
<p>De file-tree is de kern van de interface. Bestanden zoals about.html of projects.js staan in een linker sidebar. Klik erop en de rechter weergave wisselt van inhoud. In Next.js implementeer je dit met een state-variabele die bijhoudt welk bestand actief is, gecombineerd met conditionele rendering van je content-componenten.</p>
<p>De file-tree zelf bouwen is niet het moeilijkste. Je maakt een array van objecten met bestandsnamen en bijbehorende componenten, en rendert die als een lijst. Klikken zet de actieve state, en de content-zone toont het bijbehorende component.</p>
<p>Schematisch ziet dat er zo uit:</p>
<p><code>const files = [<br />  { name: 'about.html', component: &lt;About /&gt; },<br />  { name: 'projects.js', component: &lt;Projects /&gt; },<br />  { name: 'experience.ts', component: &lt;Experience /&gt; },<br />];</p>
<p>const [active, setActive] = useState(files[0]);</p>
<p>// In de sidebar:<br />files.map(f =&gt; &lt;li onClick={() =&gt; setActive(f)}&gt;{f.name}&lt;/li&gt;)</p>
<p>// In de content-zone:<br />{active.component}</code></p>
<p>Let op: op mobiel blijft de standaardfout dat de sidebar open blijft na het klikken op een bestand. De content staat dan half verborgen achter de navigatie. De oplossing is een state-dispatcher die de sidebar automatisch sluit zodra je een bestand selecteert. Één regel extra logica in je click-handler, maar het scheelt veel frustratie bij gebruikers op telefoon.</p>
<p>Voor de styling gebruik je CSS grid met een vaste breedte voor de sidebar (<code>w-48</code> of <code>w-64</code> in Tailwind) en de rest voor de content. Zorg dat de grid niet breekt op kleinere schermen door de sidebar op mobiel standaard verborgen te zetten.</p>
<h2>Hoe deploy je dit zonder hoofdpijn op Vercel?</h2>
<p>Vercel en Next.js zijn gemaakt voor elkaar. Je pusht naar GitHub, Vercel detecteert automatisch dat het een Next.js-project is en bouwt het. Geen serverconfig, geen pipeline handmatig instellen. Je koppelt je domein aan Vercel&#8217;s nameservers en HTTPS is direct geregeld. Voor .dev-domeinen is HTTPS trouwens verplicht, niet optioneel.</p>
<p>De deployment is het makkelijkste deel van dit project. Maak een Vercel-account, koppel je GitHub-repository en Vercel doet de rest. Bij elke push naar je main-branch bouwt Vercel automatisch een nieuwe versie en zet die live. Geen handmatige FTP-uploads, geen server die je zelf beheert.</p>
<p>Eén ding om op te letten: gebruik je een <code>.dev</code>-domein, dan is HTTPS verplicht. Dat zit ingebakken in de TLD zelf. Browsers weigeren HTTP-verbindingen naar .dev-adressen. Vercel regelt dit automatisch via hun edge-netwerk, dus je hoeft er niets voor te doen.</p>
<p>Wil je het repository privé houden? Dat kan gewoon. Vercel heeft toegang tot je GitHub-repo voor de build, maar de code blijft privé voor de buitenwereld. Handig als je werk voor klanten in de repo hebt staan dat je niet wil delen.</p>
<p>Vergelijk je dit met traditionele WordPress-hosting: dit is sneller, goedkoper voor een statische site, en je hebt geen plugin-updates of beveiligingslekken om je druk over te maken. Voor meer context over <a href="/wordpress-7-0-3-beveiligingsupdate-xss-kwetsbaarheden/">WordPress beveiligingsupdates en wat je daarmee moet</a> heb ik eerder geschreven.</p>
<h2>Is dit voor elke developer de juiste keuze?</h2>
<p>Eerlijk antwoord: nee. Een IDE-portfolio is indrukwekkend als je doelgroep technisch is. Maar bouw je websites voor lokale ondernemers of werk je als freelance designer voor niet-technische klanten, dan slaat dit concept de plank mis. Ken je doelgroep voordat je 60 uur in een custom preloader stopt.</p>
<p>Mijn onderbouwde standpunt: ik zou dit type portfolio alleen bouwen als je weet dat de mensen die het bekijken er iets mee kunnen. Een CTO die een developer aanneemt? Die snapt de file-tree direct en is onder de indruk. Een MKB-ondernemer die een website wil laten bouwen? Die raakt verdwaald en klikt weg.</p>
<p>Wees ook realistisch over de bouwtijd. GSAP leren, de split-gate animatie debuggen op Safari (want Safari doet altijd iets anders), de mobiele sidebar goed laten werken: reken op 40 tot 80 uur als je dit from scratch bouwt en GSAP nog niet kent. Ken je GSAP al, dan kom je eerder uit op 20 tot 30 uur.</p>
<p>Wil je sneller resultaat? Gebruik een bestaande template als startpunt en pas die aan. Dat levert in 8 tot 10 uur een werkende versie op. Minder origineel, maar wel sneller live.</p>
<p>Wil je AI inzetten bij het bouwen van dit soort animaties? Ik heb goede ervaringen met Claude Code voor web-animaties. Het schrijft GSAP-code op basis van een beschrijving, wat je veel trial-and-error bespaart. En als je wil weten hoe <a href="/developer-rol-ai-tijdperk-veranderingen/">de rol van developers verandert in het AI-tijdperk</a>, dat is ook de moeite waard om te lezen.</p>
<div class="nn-related-posts">
<h3>Dit vind je misschien ook interessant</h3>
<ul>
<li><a href="https://nixonews.nl/wordpress-7-0-3-beveiligingsupdate-xss-kwetsbaarheden/">WordPress beveiliging: versie 7.0.3 dicht 12 lekken, dit moet je weten</a></li>
<li><a href="https://nixonews.nl/developer-rol-ai-tijdperk-veranderingen/">Developer rol AI-tijdperk: wat ik er zelf van merk in 2026</a></li>
<li><a href="https://nixonews.nl/ai-code-editor-cursor-windsurf-zed-vergelijking/">AI code editor kiezen: Cursor, Windsurf of Zed in 2026?</a></li>
</ul>
</div>
]]></content:encoded>
					
					<wfw:commentRss>https://nixonews.nl/ide-stijl-portfolio-nextjs-gsap/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>WordPress beveiliging: versie 7.0.3 dicht 12 lekken, dit moet je weten</title>
		<link>https://nixonews.nl/wordpress-7-0-3-beveiligingsupdate-xss-kwetsbaarheden/</link>
					<comments>https://nixonews.nl/wordpress-7-0-3-beveiligingsupdate-xss-kwetsbaarheden/#respond</comments>
		
		<dc:creator><![CDATA[Sepp Stokbroekx]]></dc:creator>
		<pubDate>Fri, 07 Aug 2026 08:06:37 +0000</pubDate>
				<category><![CDATA[Development Tools]]></category>
		<category><![CDATA[Webdevelopment]]></category>
		<category><![CDATA[beveiligingsupdate]]></category>
		<category><![CDATA[cross-site scripting]]></category>
		<category><![CDATA[webdevelopment]]></category>
		<category><![CDATA[wordpress 7.0.3]]></category>
		<category><![CDATA[wordpress beveiliging]]></category>
		<category><![CDATA[wordpress update]]></category>
		<category><![CDATA[XSS kwetsbaarheid]]></category>
		<guid isPermaLink="false">https://nixonews.nl/wordpress-7-0-3-beveiligingsupdate-xss-kwetsbaarheden/</guid>

					<description><![CDATA[WordPress heeft versie 7.0.3 uitgebracht met patches voor 12 kwetsbaarheden. Eén ervan scoort 8.9/10 en zit op je inlogpagina. Update nu.]]></description>
										<content:encoded><![CDATA[<p><strong>Kort antwoord:</strong> WordPress beveiliging staat onder druk: versie 7.0.3 dicht 12 kwetsbaarheden, waaronder een XSS-lek op de inlogpagina met een ernstscore van 8.9/10. Dat lek heeft geen ingelogde aanvaller nodig, maar werkt pas als iemand met een account op jouw site op iets klikt. Bij de meeste installaties regelt de automatische update dit, maar check het meteen in je dashboard.</p>
<h2>Wat zit er precies in WordPress 7.0.3?</h2>
<p>WordPress 7.0.3 lost twaalf beveiligingsproblemen op in één keer. Dat is ongewoon veel. Normaal zijn het er één of twee per release. Drie van de twaalf zijn serieus genoeg om direct aandacht aan te geven: een XSS-lek op de inlogpagina, een SSRF-probleem in URL-validatie, en een privilege-escalatie op multisite-installaties. De rest is minder urgent maar alsnog de moeite van patchen waard.</p>
<p>Twaalf kwetsbaarheden in één release is niet normaal voor WordPress core. De meeste lekken zitten in blokken die bijdragers kunnen gebruiken, zoals de Post Date block, Post Content block en de Quick Edit-functie. XSS staat voor Cross-Site Scripting: een aanval waarbij kwaadaardige code de pagina ingaat en de browser van een nietsvermoedende gebruiker die code dan uitvoert.</p>
<p>De meeste van die twaalf vereisen een account met minimaal de rol Contributor, wat het risico beperkt. Maar drie kwetsbaarheden vallen in een andere categorie. Die bespreek ik hieronder apart.</p>
<p>Overigens heeft de toename van gevonden lekken deels te maken met AI-gestuurde beveiligingstests. Beveiligingsonderzoekers gebruiken AI-tools om code sneller te scannen op patronen die mensen missen. Goed voor de veiligheid op lange termijn, maar het betekent ook dat het aantal meldingen de komende tijd niet daalt.</p>
<h2>Het XSS-lek op de inlogpagina scoort 8.9/10. Hoe werkt dat?</h2>
<p>Dit is het gevaarlijkste lek van de batch. Het zit op de inlogpagina van WordPress en heeft een ernstscore van 8.9 op 10. Een aanvaller heeft geen account nodig om het lek te triggeren, vandaar de naam &#8216;pre-auth&#8217;. Toch is de kans op misbruik beperkt, want de aanval werkt alleen als iemand met een account op jouw site op een speciaal geconstrueerde link klikt.</p>
<p>Stel je voor: een aanvaller bouwt een nep-website met een link die eruitziet als jouw WordPress-inlogpagina. Als een beheerder of redacteur op die link klikt, draait er kwaadaardige code in zijn browser. In het ergste geval escaleert dat naar Remote Code Execution (RCE), wat inhoudt dat code op jouw server actief wordt.</p>
<p>Dat klinkt alarmerend, en dat is het ook, maar de aanval vereist social engineering. De aanvaller moet de juiste persoon overtuigen om op de juiste link te klikken. Beveiligingsonderzoekers schatten de kans op actief misbruik als laag in, juist omdat die menselijke stap er altijd tussen zit.</p>
<p>De fix gaat terug tot alle WordPress-versies vanaf 4.7. Draai je nog een oudere versie, dan is de patch er alsnog, maar je moet wel updaten.</p>
<p>Voor wie zijn WordPress-installaties beheert: <a href="/ai-wordpress-code-begrijpen-verbeteren/">AI inzetten om WordPress-code te analyseren en te verbeteren</a> helpt je sneller onveilige patronen te spotten in custom code die je zelf hebt toegevoegd.</p>
<h2>SSRF en privilege-escalatie: ook serieus nemen?</h2>
<p>Naast het XSS-lek zijn er twee andere kwetsbaarheden die aandacht verdienen. SSRF staat voor Server-Side Request Forgery: een aanval waarbij de server verzoeken stuurt naar interne netwerkadressen. De derde is een privilege-escalatie op multisite-installaties waarbij een gewone gebruiker een nieuwe site kan aanmaken.</p>
<p>SSRF in URL-validatie klinkt technisch, maar de kern is dit: als een aanvaller de server laat communiceren met interne IP-adressen (link-local ranges), kan gevoelige informatie uitlekken die normaal niet van buitenaf bereikbaar is. Denk aan configuratiedata van je server of interne services. Hoe ernstig dit precies is voor standaard WordPress-hosting is nog niet volledig gedocumenteerd, maar de patch is er en dat telt.</p>
<p>De privilege-escalatie op multisites is relevant als je WordPress Multisite draait met open gebruikersregistratie. Een normale gebruiker kan dan een nieuwe subsite aanmaken op jouw netwerk. Voor een universiteits-intranet of een platform met honderden subsites is dat een echt probleem. Voor een standaard WordPress-site met één domein speelt dit niet.</p>
<p>Ga naar je WordPress-dashboard, klik op Instellingen, dan Netwerk als je multisite draait. Staat gebruikersregistratie aan en weet je niet waarom, zet hem dan uit.</p>
<div class="nn-related-posts">
<h3>Dit vind je misschien ook interessant</h3>
<ul>
<li><a href="https://nixonews.nl/developer-rol-ai-tijdperk-veranderingen/">Developer rol AI-tijdperk: wat ik er zelf van merk in 2026</a></li>
<li><a href="https://nixonews.nl/ai-code-editor-cursor-windsurf-zed-vergelijking/">AI code editor kiezen: Cursor, Windsurf of Zed in 2026?</a></li>
<li><a href="https://nixonews.nl/ai-versnelling-exponentieel-zelfverbeterende-modellen/">AI versnelt zichzelf, wat dat in de praktijk betekent voor jou</a></li>
</ul>
</div>
]]></content:encoded>
					
					<wfw:commentRss>https://nixonews.nl/wordpress-7-0-3-beveiligingsupdate-xss-kwetsbaarheden/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Developer rol AI-tijdperk: wat ik er zelf van merk in 2026</title>
		<link>https://nixonews.nl/developer-rol-ai-tijdperk-veranderingen/</link>
					<comments>https://nixonews.nl/developer-rol-ai-tijdperk-veranderingen/#respond</comments>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Thu, 07 May 2026 10:50:35 +0000</pubDate>
				<category><![CDATA[AI Development]]></category>
		<category><![CDATA[Webdevelopment]]></category>
		<category><![CDATA[AI agents]]></category>
		<category><![CDATA[ai development]]></category>
		<category><![CDATA[AI tools]]></category>
		<category><![CDATA[code review]]></category>
		<category><![CDATA[developer rol]]></category>
		<category><![CDATA[junior developer]]></category>
		<category><![CDATA[prompt engineering]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[systeemontwerp]]></category>
		<category><![CDATA[toekomst development]]></category>
		<guid isPermaLink="false">https://nixonews.nl/developer-rol-ai-tijdperk-veranderingen/</guid>

					<description><![CDATA[AI schrijft al code, reviewt pull requests en genereert tests. Wat blijft er over voor developers? Ik werk er dagelijks mee. Dit verandert er echt.]]></description>
										<content:encoded><![CDATA[<p><strong>Kort antwoord:</strong> De developer rol <a href="/ai-tools-ondernemers/">AI</a> verandert: minder regels typen, meer architectuur, meer kritisch reviewen. Ik werk er zelf dagelijks mee in mijn klantprojecten. De skills die nu zwaarder wegen zijn systeemontwerp, security-bewustzijn, AI-output kunnen beoordelen en heldere specificaties kunnen schrijven. De rol verdwijnt niet, hij verschuift naar het werk dat AI niet zelf kan.</p>
<h2>Wat ik in mijn eigen werk zie veranderen</h2>
<p>Ik ben zelf developer en ik werk dagelijks met AI-tools voor klantprojecten. Het verschil met twee jaar geleden: ik typ minder code, ik review meer. Ik schrijf minder algoritmes, ik schrijf meer specificaties. De rol is niet kleiner geworden, hij is verschoven. Wie nog elke regel zelf wil typen omdat dat &quot;echt programmeren&quot; is, loopt achter.</p>
<p>Twee jaar geleden begon ik een feature met een lege editor en een idee. Nu begin ik met een prompt: hier is de huidige code, hier is wat ik wil, schrijf de eerste versie. De AI tikt het in 30 seconden uit. Daarna komt mijn werk: kloppen de assumpties, zit er geen verzonnen library in, hoe gaat dit zich gedragen onder load.</p>
<p>Niet elke developer ervaart dit zo. Sommige collega&#8217;s negeren AI bewust. Anderen accepteren elke gegenereerde regel klakkeloos. Beiden lopen risico. De eerste groep raakt achter omdat AI-tools zo sterk worden dat handmatig coderen straks duurder is. De tweede groep stopt productie-bugs in hun software omdat ze de output niet snappen.</p>
<p>Wat blijft, en zelfs belangrijker is geworden: weten waarom code werkt. Niet alleen of het werkt. Bij mijn klanten zie ik dat de developers die het beste presteren, de developers zijn die kritisch lezen en doorvragen op de output. Niet de developers die het hardst typen.</p>
<h2>Welke skills écht waarde toevoegen in 2026</h2>
<p>Architectuur, systeemontwerp, security en het schrijven van heldere specificaties. Dat is waar de waarde nu zit. AI bouwt componenten, jij ontwerpt het systeem. AI schrijft de query, jij beoordeelt of de query veilig is. Skills die niet goed door AI worden ingevuld zijn de skills die je doelgericht moet bijspijkeren.</p>
<p>De skills die in mijn ervaring nu het zwaarst wegen, in volgorde:</p>
<p><strong>Systeemontwerp.</strong> Een AI kan een loginscherm bouwen, maar niet bedenken hoe authenticatie samenhangt met sessions, met de cache-laag, met de e-mailprovider, met je hosting. Dat overzicht moet uit een mensenhoofd komen.</p>
<p><strong>Code reviewen met aandacht voor wat er níét staat.</strong> AI vergeet edge cases. AI verzint soms dependencies die niet bestaan. AI gebruikt soms verouderde APIs. Een goede review controleert wat ontbreekt, niet alleen wat er staat.</p>
<p><strong>Security en privacy.</strong> AI-tools genereren regelmatig code met onveilige defaults: hardcoded secrets, ontbrekende input-sanitisatie, te brede CORS-headers. Wie dat herkent, voorkomt incidenten. De <a href="https://www.autoriteitpersoonsgegevens.nl/themas/algoritmes-ai" target="_blank" rel="noopener noreferrer">Autoriteit Persoonsgegevens publiceerde richtlijnen voor AI-gebruik</a> waar elke developer met klantdata mee bekend hoort te zijn.</p>
<p><strong>Specificaties schrijven.</strong> Een AI doet alleen wat je vraagt, en een vage vraag levert vage code op. Helder kunnen formuleren wat je wilt is geen managers-skill meer maar core developer-werk.</p>
<h2>Wat dit betekent als jij een developer of freelancer inhuurt</h2>
<p>Ondernemers die freelance-developers of een dev-team inhuren, kijken nu naar andere signalen dan vijf jaar geleden. Niet meer &quot;kan deze persoon snel typen&quot;, maar &quot;begrijpt deze persoon mijn business en kan hij de AI-output beoordelen&quot;. Een developer die alle code uit ChatGPT haalt zonder review levert je een tijdbom. Een developer die AI bewust inzet en de output kritisch leest, levert je in dezelfde tijd meer waarde op.</p>
<p>Drie concrete dingen die je nu anders moet doen bij het inhuren of werken met developers:</p>
<p><strong>Vraag naar AI-werkwijze, niet naar AI-vermijding.</strong> Iemand die zegt &quot;ik gebruik geen AI&quot; is in 2026 vaak duurder dan iemand die het slim inzet. Niet omdat AI gratis is, maar omdat de eerste groep langer doet over hetzelfde werk. Vraag liever: hoe gebruik je AI in je workflow, en wat doe je om niet in valkuilen te trappen.</p>
<p><strong>Reken op review-tijd, niet alleen bouwtijd.</strong> Vroeger schatten developers bouwtijd. Nu is bouwtijd korter en review-tijd langer. Een feature van twee weken oude stijl is misschien drie dagen bouwen plus drie dagen review. Plan beide in.</p>
<p><strong>Eis documentatie van AI-keuzes.</strong> Welke libraries gebruikt de developer, welke daarvan zijn AI-suggesties, en welke tests zitten erop. Dit is je verzekering voor als de developer wegloopt en jij straks zelf de code moet onderhouden of overdragen.</p>
<h2>Wat ik adviseer aan junior developers en ondernemers met een dev-team</h2>
<p>Junior developers: leer de fundamenten zoals datastructuren, algoritmen en systeemontwerp. Daar bouw je je AI-werk bovenop. Ondernemers met een dev-team: investeer in pair-programming en code-review-cultuur, niet in meer AI-licenties. Tools maken het werk niet beter, kritisch denken doet dat.</p>
<p>Voor junior developers die net beginnen: laat AI niet je leerproces overnemen. Genereer code, ontleed hem, schrijf hem opnieuw vanaf scratch zonder AI, vergelijk. Dat is hoe je AI gebruikt om sneller te leren in plaats van langzamer.</p>
<p>Voor ondernemers met een eigen dev-team of freelance-developers: de grootste winst zit niet in betere tools maar in betere werkprocessen. Een uur per week pair-programmen levert meer op dan een nieuwe AI-licentie. Een verplichte code-review op AI-gegenereerde features voorkomt incidenten die je later weken kosten.</p>
<p>Voor ZZP&#8217;ers die zelf bouwen: het is geen schande om de AI te gebruiken voor je klantenwebsite. Het is wel een probleem om de output blind te plaatsen. Schrijf een korte review-checklist en ren die door op alles wat AI voor je maakt: input-validatie, foutmeldingen, edge cases, security-headers. Vijf minuten controle voorkomt een uur incident-respons.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://nixonews.nl/developer-rol-ai-tijdperk-veranderingen/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>AI code editor kiezen: Cursor, Windsurf of Zed in 2026?</title>
		<link>https://nixonews.nl/ai-code-editor-cursor-windsurf-zed-vergelijking/</link>
					<comments>https://nixonews.nl/ai-code-editor-cursor-windsurf-zed-vergelijking/#respond</comments>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Wed, 22 Apr 2026 09:56:56 +0000</pubDate>
				<category><![CDATA[Development Tools]]></category>
		<category><![CDATA[Webdevelopment]]></category>
		<category><![CDATA[AI agents]]></category>
		<category><![CDATA[ai development]]></category>
		<category><![CDATA[code editor]]></category>
		<category><![CDATA[productiviteit]]></category>
		<guid isPermaLink="false">https://nixonews.nl/?p=198</guid>

					<description><![CDATA[Drie AI-code-editors, drie verschillende karakters. Welke past bij hoe jij werkt? Mijn ervaring na een half jaar met alle drie naast elkaar.]]></description>
										<content:encoded><![CDATA[<p><strong>Kort antwoord:</strong> Voor de meeste developers is <a href="https://cursor.com" rel="noopener" target="_blank">Cursor</a> de beste <a href="/ai-tools-ondernemers/">AI code editor</a>: het werkt direct goed zonder configuratie en de AI-integratie is volwassen. <a href="https://windsurf.com" rel="noopener" target="_blank">Windsurf</a> is interessant als je veel autonome agentische taken laat draaien, voor 15 euro per maand. <a href="https://zed.dev" rel="noopener" target="_blank">Zed</a> is razendsnel maar nog ruw aan de randen. Ik gebruik Cursor zelf dagelijks voor klantprojecten, en Zed open ik soms voor snelle bewerkingen op grote files.</p>
<h2>Cursor: de veilige keuze die gewoon werkt</h2>
<p>Cursor is een fork van VS Code met sterke AI-integratie ingebouwd. Het werkt direct goed zonder config-bestanden te moeten aanraken. AI-completions zijn snel, het Composer-paneel voor multi-file edits is intuïtief, en de agent-mode kun je op klantenprojecten gebruiken zonder bange momentjes.</p>
<p>Ik gebruik Cursor sinds een half jaar dagelijks voor klantprojecten. Wat ik fijn vind: het is gewoon VS Code met AI erop, dus al mijn extensies werken nog en mijn keybindings ook. Geen leercurve.</p>
<p>De AI-integratie is volwassen: tab-completion is snel, in-editor chat begrijpt context van het hele bestand, en agent-mode kan zelfstandig multi-file changes doen die ik daarna review. Voor klantcode hou ik agent-mode op handmatige bevestiging, laat de AI niet ongezien door productiecode banjeren.</p>
<p>Prijs: 20 dollar per maand voor Pro. Dat is gelijk aan ChatGPT Plus, maar je krijgt er een werkende editor bij. Als je dagelijks codeert verdient dat zich snel terug.</p>
<h2>Windsurf: voor wie verder wil dan completions</h2>
<p>Windsurf is gemaakt voor agentische workflows. Het verschil met Cursor: de AI denkt vooruit en stelt zelf vervolgstappen voor. Voor 15 euro per maand een sterke optie, vooral als je AI als junior collega wilt inzetten op grotere taken.</p>
<p>Wat Windsurf onderscheidt is hoe diep de AI in je workflow zit. Bij een wijziging stelt hij vaak proactief voor om de bijbehorende tests, documentatie of types ook bij te werken. Dat is meer dan completions, het voelt als een collega die meedenkt.</p>
<p>De keerzijde: meer keuzes, dus meer ingrijpen om te voorkomen dat hij dingen wijzigt die jij niet wilde. Voor mij persoonlijk werkt dat minder fijn dan Cursor&#8217;s terughoudendere aanpak. Maar ik ken developers die er juist voor kiezen omdat het ze sneller maakt op grote refactors.</p>
<h2>Zed: snelheid boven alles, nog ruw aan de randen</h2>
<p>Zed is een editor in Rust gebouwd, met realtime collaboration en native AI-integratie. Voor het openen en doorzoeken van grote codebases is hij merkbaar sneller dan Cursor of VS Code. Maar het ecosysteem is jong en de AI-features zijn nog niet zo geslepen als bij de concurrentie.</p>
<p>Wat me bij Zed steeds opvalt: het opent een grote repository in een seconde, terwijl Cursor 5 tot 10 seconden nodig heeft. Voor wie veel met grote codebases werkt is dat een groot verschil over een werkdag.</p>
<p>Maar de AI-integratie loopt achter. Tab-completions zijn er, multi-file agentic edits zijn beperkter. Voor pure tekst-editing op snelheid is Zed top, voor zwaar AI-werk pak ik nog Cursor erbij. Beide naast elkaar werkt prima, ze gebruiken dezelfde keybindings als VS Code.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://nixonews.nl/ai-code-editor-cursor-windsurf-zed-vergelijking/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>AI versnelt zichzelf, wat dat in de praktijk betekent voor jou</title>
		<link>https://nixonews.nl/ai-versnelling-exponentieel-zelfverbeterende-modellen/</link>
					<comments>https://nixonews.nl/ai-versnelling-exponentieel-zelfverbeterende-modellen/#respond</comments>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Fri, 17 Apr 2026 13:22:03 +0000</pubDate>
				<category><![CDATA[AI Development]]></category>
		<category><![CDATA[Webdevelopment]]></category>
		<category><![CDATA[AI agents]]></category>
		<category><![CDATA[AI-strategie]]></category>
		<category><![CDATA[automatisering]]></category>
		<category><![CDATA[toekomst]]></category>
		<guid isPermaLink="false">https://nixonews.nl/?p=189</guid>

					<description><![CDATA[AI-modellen helpen met het bouwen van de volgende generatie. Klinkt science-fiction, voelt voor ondernemers vooral als instabiele tooling.]]></description>
										<content:encoded><![CDATA[<p><strong>Kort antwoord:</strong> <a href="/ai-tools-ondernemers/">AI</a>-modellen helpen tegenwoordig bij het bouwen en trainen van de volgende generatie modellen. Voor ondernemers betekent dat: tools veranderen sneller dan je kunt evalueren, en wat vandaag werkt is over zes maanden vervangen. Ik raad klanten aan om geen langlopende contracten af te sluiten en flexibel te blijven in welke AI-leverancier je kiest.</p>
<h2>Wat &amp;quot;zelfverbetering&amp;quot; in AI nu echt is</h2>
<p>Het mooie verhaal: AI traint AI, dus elke generatie wordt exponentieel beter. De realiteit: AI-modellen helpen met het genereren van trainingsdata en het destilleren van kleinere modellen. Echte recursive zelfverbetering bestaat niet, daar staat de vakwereld nog ver vanaf.</p>
<p>De marketing-versie van dit verhaal klinkt als sciencefiction: AI bouwt AI, en straks zijn we niet meer nodig. De technische realiteit is veel saaier. AI-modellen worden gebruikt om trainingsdata te labellen, om edge cases te genereren en om kleinere modellen te trainen op de output van grotere. Dat heet distillatie en het is geen magie.</p>
<p>Wat ik er bij klanten van merk: de tools die ik vorig jaar adviseerde zijn nu verouderd. Niet omdat AI zichzelf overtroffen heeft, maar omdat er gewoon snel nieuwe modellen worden uitgebracht en de prijzen schuiven. Dat is geen exponentiële zelfverbetering. Dat is een markt in beweging.</p>
<h2>Het effect dat je écht merkt: tooling-instabiliteit</h2>
<p>Wat ondernemers in 2026 voelen is geen exponentiële sprong, maar instabiele tooling. Een tool die zes maanden geleden goed werkte heeft nu een ander prijsmodel, andere features of is opgekocht door een groter bedrijf.</p>
<p>Concreet bij mij: ik adviseerde vorig jaar een klant om een specifieke AI-schrijftool te gebruiken voor zijn klantenservice-mails. Drie maanden later kocht een groter platform de tool, twee maanden later werd de prijs verdubbeld en verdween een feature die hij dagelijks gebruikte.</p>
<p>Dat is wat &quot;exponentiële versnelling&quot; in de praktijk betekent: niet dat alles beter wordt, maar dat alles sneller verandert. Voor een ondernemer is dat een planning-probleem, niet een opportunity-probleem.</p>
<h2>Wat dit betekent voor je AI-strategie</h2>
<p>Drie principes die ik bij elke klant inbouw: geen langlopende contracten op AI-tools, modulaire setups die makkelijk wisselbaar zijn, en niet je hele bedrijf bouwen op één leverancier. Dat klinkt voor de hand liggend, maar ik zie regelmatig anders.</p>
<p>Wat ik concreet doe: voor elke klant die AI integreert kies ik tools met een API die op meerdere providers werkt. OpenAI-compatible APIs van Anthropic, Google en open-source-modellen. Dat scheelt straks veel pijn als één leverancier zijn prijzen verdubbelt.</p>
<p>Voor klanten zonder eigen IT-team: kies maand-tot-maand abonnementen, niet jaarcontracten. De besparing van een jaarcontract is meestal 10 tot 20 procent. Het risico op vastzitten aan een tool die over zes maanden niet meer past, is veel groter dan die besparing.</p>
<h2>Hoe je rustig blijft tussen alle hype</h2>
<p>Ik heb een filter ontwikkeld voor AI-nieuws: lees pas de hands-on reviews na drie maanden, niet de launch-aankondigingen. Dat scheelt een hoop adrenaline en je mist niets dat er echt toe doet.</p>
<p>Wat ik bij mezelf merk: in het begin volgde ik elke launch live. Ik wilde direct testen, direct adviseren. Inmiddels wacht ik standaard drie maanden voordat ik een nieuwe tool serieus oppak. Driekwart van de hyped tools is dan al weer vergeten of merkbaar tegengevallen.</p>
<p>Mijn praktische tip aan klanten: abonneer je niet op AI-nieuws. Kies twee mensen die jij vertrouwt op het vak (geen AI-influencers, maar echte gebruikers) en lees alleen wat zij delen. Dat geeft je tijd terug en het signaal-naar-ruis-verhouding is veel beter.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://nixonews.nl/ai-versnelling-exponentieel-zelfverbeterende-modellen/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Claude Code voor web-animaties: hoe ik het bij klanten gebruik</title>
		<link>https://nixonews.nl/claude-code-animaties-maken-webeffecten/</link>
					<comments>https://nixonews.nl/claude-code-animaties-maken-webeffecten/#respond</comments>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Tue, 14 Apr 2026 08:10:59 +0000</pubDate>
				<category><![CDATA[AI Development]]></category>
		<category><![CDATA[Webdesign]]></category>
		<category><![CDATA[animaties]]></category>
		<category><![CDATA[claude]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[webdesign]]></category>
		<guid isPermaLink="false">https://nixonews.nl/?p=183</guid>

					<description><![CDATA[Animaties op een website maken kostte me uren googelen. Met Claude Code is het tien minuten typen, twintig minuten finetunen. Mijn werkwijze.]]></description>
										<content:encoded><![CDATA[<p><strong>Kort antwoord:</strong> <a href="/webdesign-voor-ondernemers/">Claude</a> Code is goed in het bouwen van CSS- en JavaScript-animaties op basis van een korte beschrijving. In plaats van uren googelen of tutorials kijken, beschrijf je wat je wilt en je krijgt werkende code terug. Bij mijn klanten gebruik ik dit voor scroll-animaties, hover-effecten en pagina-overgangen. De code is meestal 80 procent goed direct, de laatste 20 procent zijn timing-aanpassingen die ik per oog beoordeel.</p>
<h2>Het patroon dat ik altijd gebruik bij animaties</h2>
<p>Beschrijf wat de gebruiker zou moeten zien (niet de techniek), geef context over de stack en kies een animatie-bibliotheek. Drie zinnen prompt, een halve pagina werkende code terug.</p>
<p>Concreet bij een klant: hij wilde dat zijn productkaarten &#8220;subtiel oprijzen&#8221; als de gebruiker er overheen beweegt. Mijn prompt aan Claude: <em>Ik werk in React 18 met Tailwind CSS en framer-motion. Maak een ProductCard component die een subtiele lift-animatie heeft op hover: 4px omhoog, lichte schaduw, 200ms duur, ease-out timing.</em></p>
<p>Resultaat: een werkend component dat ik direct kon gebruiken. Twee minuten finetune nodig om de schaduwsterkte iets minder zwaar te maken. Werk dat me vroeger een halve middag kostte aan tutorials kijken en code aanpassen, nu een kwartier.</p>
<h2>Welke bibliotheken werken het beste</h2>
<p>Voor React: framer-motion, sterk en goed gedocumenteerd. Voor vanilla JS: GSAP voor complexere flows, of pure CSS-keyframes voor eenvoud. Vermijd jQuery-animaties, dat is achterhaald en Claude voelt dat ook aan in zijn voorstellen.</p>
<p>Mijn ervaring per stack: framer-motion is voor React-werk een veilige eerste keuze omdat Claude er heel veel voorbeelden van kent en dus zelden onzin produceert. GSAP is breder en krachtiger maar vraagt meer instelwerk. Pure CSS-animaties zijn voor simpele effecten ideaal en kosten geen extra bibliotheek.</p>
<p>Bij klanten kies ik per project. Een marketing-landingspagina: pure CSS plus eventueel framer-motion voor één of twee key-momenten. Een interactieve webapp: framer-motion of GSAP afhankelijk van de complexiteit. Niet alles op één bibliotheek bouwen, niet alles los oplossen.</p>
<h2>De finetune-fase die niemand overslaat</h2>
<p>Animaties die op de eerste try goed voelen zijn zeldzaam. Timing, easing en delay zijn drie kleine knoppen waarmee je een animatie van &quot;OK&quot; naar &quot;echt goed&quot; brengt. Plan tijd in voor deze finetune, anders levert je werk halve kwaliteit op.</p>
<p>Wat ik bij elke animatie doe: nadat Claude code heeft opgeleverd, draai ik hem in de browser en kijk drie keer. Eerste keer voor de timing (te snel of te traag?), tweede keer voor de easing (voelt het natuurlijk of mechanisch?), derde keer voor de afstemming met andere elementen op de pagina. Per check minimaal één micro-aanpassing.</p>
<p>Tip uit eigen ervaring: animaties die op een snel scherm goed voelen, voelen op een traag scherm vaak haperig. Ik test bij klanten altijd op minimaal twee apparaten voordat ik iets als af bestempel.</p>
<h2>Toegankelijkheid: het stuk dat AI vergeet</h2>
<p>Claude denkt niet automatisch aan gebruikers die animaties willen uitschakelen. De CSS-mediaquery &lt;code&gt;prefers-reduced-motion&lt;/code&gt; moet je zelf vragen. Bij elke animatie doe ik dat als laatste stap.</p>
<p>Wat ik standaard doe bij elke animatie: na de eerste werkende versie voeg ik handmatig de respect voor <code>prefers-reduced-motion</code> toe. Een gebruiker die deze instelling heeft staat (vaak vanwege vestibulaire klachten) krijgt dan geen of veel kortere animaties.</p>
<p>Een typische CSS-versie ziet er zo uit:</p>
<pre><code>.product-card {
  transition: transform 200ms ease-out;
}

@media (prefers-reduced-motion: reduce) {
  .product-card {
    transition: none;
  }
}</code></pre>
<p>Bij framer-motion is er een ingebouwde <code>useReducedMotion</code>-hook die hetzelfde doet. Vraag Claude er expliciet om, anders vergeet hij het. Toegankelijkheid en animaties zijn een paar dat je actief moet bewaken.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://nixonews.nl/claude-code-animaties-maken-webeffecten/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>AI WordPress code analyseren: hoe ik ChatGPT en Claude inzet</title>
		<link>https://nixonews.nl/ai-wordpress-code-begrijpen-verbeteren/</link>
					<comments>https://nixonews.nl/ai-wordpress-code-begrijpen-verbeteren/#respond</comments>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Sun, 12 Apr 2026 16:53:32 +0000</pubDate>
				<category><![CDATA[AI Development]]></category>
		<category><![CDATA[Webdesign]]></category>
		<category><![CDATA[ai development]]></category>
		<category><![CDATA[claude code]]></category>
		<category><![CDATA[wordpress-plugins]]></category>
		<guid isPermaLink="false">https://nixonews.nl/?p=176</guid>

					<description><![CDATA[Een functions.php met 600 regels van een vorige bouwer. AI helpt me die te begrijpen zonder dagen te lezen. Mijn werkwijze in WordPress-projecten.]]></description>
										<content:encoded><![CDATA[<p><strong>Kort antwoord:</strong> AI-tools zoals ChatGPT en Claude helpen me bij <a href="/wordpress-website-maken/">WordPress</a>-code op drie manieren: code uitleggen die iemand anders heeft geschreven, voorstellen voor optimalisatie geven, en bugs lokaliseren. Ik plak code in en krijg een uitleg, suggesties of waarschuwingen voor security-issues. Bij mijn klanten heb ik dit het vaakst nodig bij overgenomen sites, waar ik snel inzicht moet krijgen in een functions.php of plugin die niemand meer onderhoudt.</p>
<h2>Mijn meest voorkomende use-case: overgenomen WordPress-sites</h2>
<p>Een klant stapt over van een vorige developer naar mij. Hij heeft een WordPress-site met aanpassingen die niemand meer kan uitleggen. Mijn eerste week is dan: AI gebruiken om de code te lezen en de waarheid van de fictie te scheiden.</p>
<p>Concreet vorige maand: een klant met een functions.php van 600 regels van een developer die er drie jaar geleden mee gestopt is. De klant kon niet uitleggen wat de helft deed, en sommige regels deden duidelijk niets. Voor de overdracht moest ik weten welke regels essentieel zijn en welke gewoon dood gewicht.</p>
<p>Mijn aanpak: in 30 minuten plakte ik blokken van 50 regels in Claude en vroeg hem per blok om uitleg, plus een advies over of het in 2026 nog werkt zoals het is geschreven. Wat normaal twee dagen leeswerk was, was een ochtend werk plus een middag verifiëren in de browser.</p>
<h2>Wat AI bij WordPress-code wel en niet goed doet</h2>
<p>Wel: bekende patronen herkennen, deprecated functies signaleren, security-zorgen aanwijzen. Niet: bugs vinden die afhankelijk zijn van runtime-staat, wat alleen optreedt bij specifieke gebruikersinput, of plugin-conflicten in een volle stack.</p>
<p>Bij mij in de praktijk: een AI vindt zonder problemen een gebroken nonce, een ontbrekende sanitize-call of een functie die in WordPress 6.4 is verwijderd. Dat soort lookup-werk is precies waar AI sterk in is: pattern-matching tegen een bekende kennisbank.</p>
<p>Wat AI minder goed doet: ingewikkelde plugin-conflicten waar twee plugins dezelfde hook overschrijven, of bugs die alleen optreden bij een specifieke combinatie van gebruikersinstellingen. Daar moet je nog steeds zelf debuggen, eventueel met een AI als sparringpartner.</p>
<h2>Hoe ik AI integreer in mijn dagelijkse WordPress-werk</h2>
<p>Twee tools, twee rollen. Claude voor codeanalyse en refactor-voorstellen, ChatGPT voor snelle &quot;hoe doe je dit ook alweer in WP&quot;-vragen. Beide actief tijdens het werken in mijn editor, niet alleen achteraf.</p>
<p>Ik gebruik dit dagelijks in een paar concrete patronen. Bij het beoordelen van een nieuwe plugin van een klant: één Claude-sessie open met de hele plugin-code geladen, dan vraag ik per functie om uitleg en risicoanalyse. Bij het schrijven van een custom blok: ChatGPT staat open in een tab voor snelle syntax-vragen die ik niet meer in mijn hoofd heb.</p>
<p>Wat ik bij klanten merk: een AI als sparringpartner versnelt het werk veel meer dan een AI als productiemiddel. Het idee dat AI volledig zelf code schrijft past niet bij hoe WordPress-werk in elkaar zit, omdat WP zoveel context-specifieke conventies heeft. Maar als sparringpartner is hij goud waard.</p>
<h2>De grens: wat ik nooit aan AI overlaat in WordPress</h2>
<p>Database-migraties, security-kritieke functies (login, betaalflows, gebruikersdata) en alles wat met klantgegevens te maken heeft. Daar kijk ik altijd zelf, eventueel met AI als tweede paar ogen.</p>
<p>Mijn vuistregel: hoe directer iets impact heeft op data of veiligheid, hoe minder ik AI alleen laat. Een nieuwe display-functie voor een productlijst? Prima, AI mag voorstellen doen die ik scan. Een aanpassing in hoe gebruikers worden geauthenticeerd? Daar zit ik bovenop, AI mag commentaar geven maar niet leiden.</p>
<p>Concreet bij een klant met WooCommerce: ik laat AI kijken naar de presentatie van producten, niet naar hoe betalingen worden afgehandeld. Het verschil tussen een lelijke productpagina en een gehackte webshop is groot. Voor het eerste accepteer ik snelheid, voor het tweede niet.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://nixonews.nl/ai-wordpress-code-begrijpen-verbeteren/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
