I’ve spent 10 years building bots that bypass anti-fraud systems. Now I fight them by building anti-bot detection systems - and most defenses don’t work. In this article, I’ll break down how human-like bot traffic actually works - and show a simple way to make bots click on hidden links. Almost every website receives large volumes of “direct” and “referral” visits that are not real users. These vi
If you've ever built a form backend or an automation workflow, I built MultiValidator to fix that. One API call. Up to 50 fields. Send a batch of fields, get back validation results for all of them: import requests payload = { "fields": [ {"type": "email", "value": "[email protected]", "field_name": "email"}, {"type": "phone", "value": "+447911123456", "field_name": "mobile"}
It Started With a Bug When I was building VMMS — a voucher management system MySQL. Clean queries. Fast results. Then I deployed to a server running MariaDB. Half my charts broke. I had written date queries like this all over the codebase: // This breaks on MariaDB DB::table('voucher_transactions') ->selectRaw('MONTHNAME(created_at) as month, COUNT(*) as total') ->groupByRaw('MONTH(crea
I spent long hours debugging why Google couldn't index my React app. Lighthouse showed green scores. The app felt fast. But Search Console kept flagging LCP failures and CLS shifts I couldn't reproduce locally. The fix? Four lines of metadata and one misunderstood render strategy. If you've ever shipped a "fast" SPA and watched it flatline in search rankings, this Core Web Vitals SEO guide is for
If you are running production workloads, this is for you. Not side projects. Not early-stage experiments. Not a single-service app with low traffic. This is for teams shipping real systems. Systems with users, uptime expectations, and release pressure. Because at that stage, your deploy process is no longer a convenience. It is part of your product. And right now, for most teams, it is the weakest
Every developer has been here. Debugging why Puppeteer crashes in Docker but works on your machine And you still haven't built the actual feature you needed the PDF for. So I built Templar Describe your document Tell the AI what you want an invoice, a report, a contract, a receipt. It generates the HTML template for you. Call the API with your data POST /api/render { "templateName": "invoi
I wanted to add live chat to my WordPress sites without loading a 500KB third-party script. So I built my own. GhostChat is an open source embeddable Widget: Vanilla JS, no framework, ~10KB Backend: Cloudflare Workers + Durable Objects for persistent WebSocket connections Payments: Stripe for the hosted tier Self-hostable: Bring your own Cloudflare account Durable Objects give you stateful serve
The more I use AI, the more convincing it feels. Clear answers. Whether it’s: strategy code writing decision support AI rarely hesitates. And over time, I noticed something subtle. I stopped questioning it as much. Breaking the Expectation We assume better tools reduce errors. Smarter systems. And in many cases, that’s true. But there’s a hidden shift happening: As AI improves, our skepticism decr