41554 blogs · [ { "id": "01a0bb51-fcf4-73ea-8de1-b5dfc6f9f767", "title": "The WordPress Autoload Query Everyone Copy-Pastes Is Wrong", "url": "https://marcindudek.dev/blog/wordpress-autoload-query-undercounts/", "published_at": "2026-09-19T21:00:00+00:00" }, { "id": "01a0bb51-fcf4-73ea-8de1-b5dfc6bd8720", "title": "Everything I've Built", "url": "https://marcindudek.dev/blog/every-project-ive-built/", "published_at": "2026-09-16T12:00:00+00:00" }, { "id": "01a0879f-62bf-737b-b42c-bde1496a2bd9", "title": "33 yes/no questions cannot identify 8 billion people. Here are 77 that nearly do.", "url": "https://marcindudek.dev/blog/77-questions-identify-every-human/", "published_at": "2026-08-31T12:00:00+00:00" }, { "id": "01a0879f-62bf-737b-b42c-bde14a085e7a", "title": "Revertix PRO review: staging, rollback and backups for one WordPress site", "url": "https://marcindudek.dev/blog/revertix-pro-review/", "published_at": "2026-08-21T12:00:00+00:00" }, { "id": "01a0879f-62bf-737b-b42c-bde14a8d2a2f", "title": "What WordPress 7.1 Actually Changed", "url": "https://marcindudek.dev/blog/wordpress-7-1-what-actually-changed/", "published_at": "2026-08-20T12:00:00+00:00" }, { "id": "01a0879f-62bf-737b-b42c-bde14b338aea", "title": "Any Plugin Can Edit the WordPress Add New Screen", "url": "https://marcindudek.dev/blog/who-edits-your-add-new-screen/", "published_at": "2026-08-10T12:00:00+00:00" }, { "id": "01a0879f-62c0-723d-bb22-58f2073a635c", "title": "July Was Intense", "url": "https://marcindudek.dev/blog/july-2026-shipped/", "published_at": "2026-08-05T12:00:00+00:00" }, { "id": "01a0879f-62c0-723d-bb22-58f207fdbbbe", "title": "Britain Chose Lowercase Road Signs Before Testing Them", "url": "https://marcindudek.dev/blog/road-signs-lowercase-evidence/", "published_at": "2026-08-04T12:00:00+00:00" }, { "id": "01a0879f-62c0-723d-bb22-58f208abe2bd", "title": "Animated QR file transfer: good optical modem, bad file-transfer product", "url": "https://marcindudek.dev/blog/animated-qr-file-transfer/", "published_at": "2026-07-31T12:00:00+00:00" }, { "id": "01a0879f-62c0-723d-bb22-58f2093ba9d5", "title": "A one-shot code-review benchmark: scoring restraint over recall across four Claude models", "url": "https://marcindudek.dev/blog/one-shot-code-review-benchmark/", "published_at": "2026-07-23T12:00:00+00:00" }, { "id": "01a0879f-62c0-723d-bb22-58f209950303", "title": "I had 285 Claude Code permission rules. Only 41 did anything.", "url": "https://marcindudek.dev/blog/consolidate-permission-prompts/", "published_at": "2026-07-16T12:00:00+00:00" }, { "id": "01a0879f-62c0-723d-bb22-58f20a90bd36", "title": "Plastic-Eating Bacteria: How Microbes Evolved to Digest a 70-Year-Old Material", "url": "https://marcindudek.dev/blog/plastic-eating-bacteria/", "published_at": "2026-07-15T12:00:00+00:00" }, { "id": "01a0879f-62c0-723d-bb22-58f20b7cdd4b", "title": "Claude Code Quietly Added a 60-Second Timeout to AskUserQuestion (AFK Mode)", "url": "https://marcindudek.dev/blog/claude-code-afk-mode/", "published_at": "2026-07-02T12:00:00+00:00" }, { "id": "01a0879f-62c0-723d-bb22-58f20c187e0a", "title": "I Tested All 11 Free WooCommerce EU Withdrawal-Button Plugins", "url": "https://marcindudek.dev/blog/woocommerce-eu-withdrawal-button-plugins-tested/", "published_at": "2026-06-18T12:00:00+00:00" }, { "id": "01a0879f-62c0-723d-bb22-58f20cde0e73", "title": "The Podcast Invite That Was Actually Malware", "url": "https://marcindudek.dev/blog/fake-podcast-invite-phishing/", "published_at": "2026-06-10T12:00:00+00:00" }, { "id": "01a0879f-62c0-723d-bb22-58f20d94d37c", "title": "The Hooks You Stop Noticing: Claude Code's Ambient Layer", "url": "https://marcindudek.dev/blog/claude-code-ambient-hooks-sessions/", "published_at": "2026-06-10T00:00:00+00:00" }, { "id": "01a0879f-62c0-723d-bb22-58f20e7da093", "title": "A Local LLM Reads My Prompt Before Claude Does", "url": "https://marcindudek.dev/blog/claude-code-prompt-gate-local-llm/", "published_at": "2026-06-09T00:00:00+00:00" }, { "id": "01a0879f-62c0-723d-bb22-58f2102ee2d1", "title": "Hooks That Won't Let the AI Shoot Me in the Foot", "url": "https://marcindudek.dev/blog/claude-code-guardrails-pretooluse/", "published_at": "2026-06-08T00:00:00+00:00" }, { "id": "01a0879f-62c0-723d-bb22-58f20f618aba", "title": "The Hook That Won't Let the Agent Say \"Done\"", "url": "https://marcindudek.dev/blog/claude-code-quality-gates-stop-hook/", "published_at": "2026-06-03T00:00:00+00:00" }, { "id": "01a0879f-62c0-723d-bb22-58f210b765e3", "title": "How I Stop My Claude Code Sessions From Rotting", "url": "https://marcindudek.dev/blog/claude-code-context-rot-handoff/", "published_at": "2026-06-01T00:00:00+00:00" }, { "id": "01a0879f-62c0-723d-bb22-58f211a85ecc", "title": "Scrape Pass — Get paid when AI reads your site", "url": "https://marcindudek.dev/blog/scrape-pass/", "published_at": "2026-05-21T00:00:00+00:00" }, { "id": "01a0879f-62c0-723d-bb22-58f2127f33f8", "title": "Build Your Own Morning Dashboard - A One-Page Recipe", "url": "https://marcindudek.dev/blog/build-your-own-morning-dashboard/", "published_at": "2026-05-14T00:00:00+00:00" }, { "id": "01a0879f-62c0-723d-bb22-58f212ee21f7", "title": "WordPress Plugin Auto-Update via Polar — and the 3 Bugs I Shipped in 24 Hours", "url": "https://marcindudek.dev/blog/wordpress-plugin-auto-update-polar/", "published_at": "2026-05-08T00:00:00+00:00" }, { "id": "01a0879f-62c0-723d-bb22-58f2130fba48", "title": "I Checked If Ghost Is The Answer To WordPress Problems", "url": "https://marcindudek.dev/blog/ghost-vs-wordpress/", "published_at": "2026-05-05T00:00:00+00:00" }, { "id": "01a0879f-62c0-723d-bb22-58f213a93adb", "title": "30 WooCommerce Performance Tips That Actually Work (2026)", "url": "https://marcindudek.dev/blog/30-wordpress-woocommerce-performance-tips-2026/", "published_at": "2026-04-27T00:00:00+00:00" }, { "id": "01a0879f-62c0-723d-bb22-58f2155cf49e", "title": "WordPress Manifesto - 15 Years In, Here's What's Actually Broken", "url": "https://marcindudek.dev/blog/wordpress-manifesto/", "published_at": "2026-04-20T00:00:00+00:00" }, { "id": "01a0879f-62c0-723d-bb22-58f21560cc34", "title": "288,493 Requests in 24 Hours — How I Spotted an XML-RPC Brute Force From a Weird Cache Ratio", "url": "https://marcindudek.dev/blog/xmlrpc-brute-force-cache-rate/", "published_at": "2026-04-19T00:00:00+00:00" }, { "id": "01a0879f-62c0-723d-bb22-58f214983831", "title": "My Morning Dashboard Went Blank for a Day — The Dropbox Pattern That Should Have Saved It", "url": "https://marcindudek.dev/blog/self-healing-morning-dashboard-dropbox-pattern/", "published_at": "2026-04-15T00:00:00+00:00" }, { "id": "01a0879f-62c0-723d-bb22-58f216064dd3", "title": "Oxford Debate: API vs MCP — The Future of AI Tool Integration", "url": "https://marcindudek.dev/blog/oxford-debate-api-vs-mcp/", "published_at": "2026-03-25T00:00:00+00:00" }, { "id": "01a0879f-62c0-723d-bb22-58f216e60d82", "title": "I Ran 56 Experiments to Find the Best Way to Make AI Watch Videos", "url": "https://marcindudek.dev/blog/56-experiments-ai-video-captioning/", "published_at": "2026-03-23T00:00:00+00:00" }, { "id": "01a0879f-62c0-723d-bb22-58f21729e86a", "title": "Exit Interview: The AI Hustler Speaks", "url": "https://marcindudek.dev/blog/ai-hustler-interview/", "published_at": "2026-03-04T00:00:00+00:00" } ] posts Claim your blog
Back to marcindudek.dev
Blog · corpus.blog/blogs/marcindudek.dev/posts

marcindudek.dev

marcindudek.dev

2026