Changelog

What changed, and when.

Each entry is a commit. No manual editing, no missed entries. RSS →

November 202610 added · 5 updated▶
  • Added

    Published the third article in the IP infrastructure series. Azure publishes 108,967,860 IPv4 addresses across 46,992 CIDRs, while BGP across all six Microsoft cloud ASNs shows 82.4 million. The 26.5M gap looks like private ExpressRoute routing, not missing ASNs. Same live pipeline as the AWS and GCP pieces.

  • Added

    GCP publishes 19.4M IPv4; BGP via all five ASNs shows 55.9M. AS396982 routes 51.7M that most tools miss entirely.

  • Updated
    improve readability and paragraph structure
  • Added

    Converts plain-text body sources section to structured frontmatter sources with groups and URLs, matching the playwright-statistics pattern.

  • Added

    Rearranging article for better readability and deleting some obvious repetitions. Moves takeaways to sidebar. Fixes void-element regex in mdx-heading-id Vite plugin to skip already-self-closing tags.

  • Added

    Added two new IP infrastructure articles with live-generated data: AWS holds 188.7M published IPv4 addresses but routes 244.1M via BGP — the 55.5M gap is what most detection pipelines miss. Also published the companion piece on total IPv4/IPv6 address space, RIR allocation, CGNAT, and proxy pool quality. Both cross-link to each other.

  • Added

    Published a breakdown of Playwright adoption numbers across testing, automation, and scraping communities. Covers what 141M weekly npm downloads, 99,500 GitHub stars, and four conflicting company-count estimates (4,484 vs 47,694) actually measure — and what none of them can tell you about scraping use specifically. Includes npm screenshot, bar charts, and 10 data tables.

  • Updated

    Refined the changelog page with per-entry expand/collapse — clicking the ▶ on any entry reveals the full description without cluttering the default view. Month headings rebuilt as clean bold titles (no card border). Fixed a browser shadow DOM issue that was pushing subject lines below the badge row. Descriptions now show only the first paragraph of the commit body, HTML tags stripped. Commit convention updated to past tense throughout.

  • Added

    Rebuilt the changelog page from a flat list into a month accordion — current month open by default, older months collapsed. Each entry now shows the commit body as a description paragraph below the subject line, with inline markdown links rendering as HTML. Chips changed to Added / Updated / Improved using existing badge tokens.

  • Updated
    content edits across research articles and session docs
  • Added
    publish benchmark is a photograph article
  • Added
    add callout component suite — Note, Tip, Warning, Highlight, Quote, PS
  • Updated
    add Now under About Me dropdown in nav
  • Updated
    update /now page with github link, crypto side gig, ai visibility maps
  • Added
    add /now page with current projects and cross-link from about-me
October 20266 added · 4 updated▶
  • Added

    Replace hardcoded researchLog with getCollection('research') sorted by latest updates_log date (top 7), so new posts show on home without a code edit. Add "See all posts →" link under the column pointing to /blog/.

  • Updated

    Old section 4 (cost comparison) and section 5 (why this exists) collapsed into one section titled "Why I built this." Opens on the SEO hypothesis-testing argument: every current SERP checker is a monitoring tool, not a research assistant. Then the measurable reasons: a concrete per-query cost table against Whatsmyserp, SerpRobot, SerpWatch, Ahrefs, and Serper.dev with their respective caps and upfront commitments, and the customizability point about vendor-decided data shapes. Closes with three "what this unlocks" paragraphs. Research section renumbered 5, FAQ renumbered 6.

  • Updated

    Reframed section 1 from quickstart-feel to setup-feel: Docker and Python as two labeled setup paths, then a dedicated "Pick your engine, pick your proxy" subsection. Clarified the ambiguous Bing-no-proxy claim: Bing works on local IP for low volume from your box's country, but any geo override (US Bing from Europe) or production scale needs a proxy, same as Google. The setup is the same move for both: paste credentials, change the dropdown.

  • Updated

    Install & Links widget was eating screen above-the-fold. Moved it below Changelog so the hero stats + research + tags + TOC land first. Replaced the plain ul link list with a 2-column mono grid at fs-xs, underlined, matching the License/Status footer style.

  • Updated

    Section 1 is now the quickstart + user flow (merges old sections 3 and 6). Section 2 is What it does. Section 3 is What's included (engines + proxy table). Section 4 is Why it costs less. Section 5 is Why this exists. Section 6 is the research journey. FAQ moves to section 7 and absorbs the four "what it does not do" items as proper Q&A.

  • Added

    Lead the page with SEO-hypothesis-testing as the thing a rank tracker is for; cost structure is the supporting arg. Converted "What it does" to a feature grid with available / coming-soon markers (adds AI Overview, keyword data, MCP, Claude-queryable DB). Simplified engines into one table and inlined the Decodo proxy cost (replaces the Section 9 placeholder). Rewrote "How it works" as the actual user flow (experienced vs new). Simplified the cost comparison. Deleted the dedicated More-Tools section; moved to sidebar as plain tags under "Other open source tools" (title links to /opensource/).

  • Added

    New opensource content collection + /opensource/ directory + /open-serp-checker/ landing page. Reframes the pitch around the unavoidable cost of rank tracking (proxies or compute) rather than engine or feature differentiation. Hero + why + 7-post research anchor + Docker quickstart + engines table + cost-structure comparison + proxy report card placeholder + planned siblings + FAQ. New OpenSourcePage component, dispatcher branch, nav entry, scope grammar, site-check coverage.

  • Added

    A connected set of seven research posts on self-scraping Google SERPs: one hub covering the final working stack (Camoufox + minted identity + parked tab on Decodo rotating, 20/20 pass at parity with Serper) and six lesson posts documenting the measurements that got there — the curl_cffi dead end, the two-layer block, the honest 44% baseline, the humanize A/B that didn't help, the pool burn that reframed everything, and the parked-tab mechanism change.

  • Added

    Add a reusable sidebar block for connected post sets. The widget renders a "Final" item (hub, soft-accent tint) above a numbered "Lessons I Learned In The Process" . Current-page detection comes from Astro.url.pathname: the hub block always shows, and the matching lesson picks up an is-current class for bold + left accent border.

  • Added
    add favicon set and web manifest
September 202620 added · 6 updated▶
  • Added
    add /blog/ directory page with derived tag badges
  • Updated
    slim nav, rename about-me and testing-methodology pages
  • Added
    move content pages to root urls with unified slug dispatcher
  • Added
    homepage 2-col activity, sitemap, seo meta, robots and 404
  • Added
    initial draft
  • Added
    initial 2026 deep dive
  • Added
    new
  • Added
    first cut
  • Added
    initial cut
  • Added
    ai bots pass search crawlers
  • Added
    initial 2026 deep dive
  • Added
    add research collection route components and sidebar widgets
  • Updated

    leaderboard heading to lead with the 24-hour testing effort, replace the verbose table-foot line with "Ran on Sep 15-16, 2026", and add the author byline next to the story section heading.

  • Updated
    drop report cards, add details column to leaderboard
  • Updated
    merge latest-report, add coming-soon, drop follow and plan
  • Updated
    nav dropdown, homepage reorder, wording touchups
  • Added
    add affiliate-disclosure page with provider table
  • Added
    add tests, use-cases, best, about, methodology, roadmap
  • Updated
    add residential reports section to homepage
  • Added
    initial residential review
  • Added
    initial residential review
  • Added
    initial residential review
  • Added
    initial residential review
  • Added
    initial residential review
  • Added
    initial residential review
  • Added
    initial astro scaffold