Scrapers are about to start using AI to mimic real users - so I built a bot detector that learns, adapts, and fights back. Read Part 2: How Bots Got Smarter - The New Frontier in Bot Detection 👉 See It Live: StyloBot.net - This is the real production system…
By someone who can't stop analysing patterns, even their own. As the category says, this is a far more personal essay than my usual work. I don't mind if you skip it...but if it resonates leave a comment! I read them all (and it needn't be public). <!-- [TOC]…
PostgreSQL's ltree extension gives you materialised paths with database-native superpowers: GiST indexes, specialised operators like @> and <@, and powerful pattern matching. If you're committed to PostgreSQL and want the best hierarchy query performance,…
Nested sets encode the entire tree structure into just two integers per node - Left and Right boundaries from a depth-first walk. Finding all descendants becomes a simple range query, and ORDER BY Left gives you perfect display order. The catch? Every insert…
Materialised paths store the complete ancestry as a delimited string - like /1/3/7/ - making ancestors instantly readable without any joins. Perfect for breadcrumb generation and human-readable debugging, though moving subtrees means updating every…