# Novandri R. > Portfolio of Novandri R., a web developer and SEO specialist from Jakarta building with Next.js and WordPress, now diving into data science, machine learning, and applied AI. Practical articles on AI, RAG, LangChain, and LangGraph. Novandri R. is a web developer and SEO specialist based in Jakarta, Indonesia, with years of WordPress and search-engine work, now building with Next.js and transitioning into data science and applied AI. This site is his portfolio and technical blog. All content is in English, free to read, and continuously updated. ## Articles In-depth, research-backed articles on AI engineering: how to get started, retrieval-augmented generation, and building agents with LangChain and LangGraph. - [AI Crawlers Are Not Googlebot: How to Govern Crawlers You Don't Control](https://novandri.com/articles/ai-crawlers-are-not-googlebot-governing-crawlers-you-do-not-control): A practical, evidence-based guide to AI crawler user agents, robots.txt governance, and the emerging IETF preference standard for AI usage. (November 14, 2026, 12 min read) - [Cache-Control Is a Contract, Not a Suggestion: Reading HTTP Freshness Correctly](https://novandri.com/articles/cache-control-is-a-contract-not-a-suggestion): How RFC 9111 freshness, revalidation, and Age actually work — and why s-maxage, stale-while-revalidate, and Vary decide what your users see. (November 14, 2026, 8 min read) - [Certificate Transparency: What the Public Logs Prove, and What They Don't](https://novandri.com/articles/certificate-transparency-what-the-public-logs-prove): How CT logs, SCTs, and Merkle trees work, why browsers enforce them, and how to check your own certificates for transparency. (November 14, 2026, 8 min read) - [Chinchilla and the Scaling Laws: Why 'Just Make It Bigger' Stopped Being the Rule](https://novandri.com/articles/chinchilla-and-the-scaling-laws-why-bigger-stopped-being-the-rule): What the Kaplan and Chinchilla scaling-law papers actually claim, why they disagree, and what a compute-optimal budget means for real teams. (November 14, 2026, 7 min read) - [Data Centre Electricity: Reading the IEA Forecasts Without Fooling Yourself](https://novandri.com/articles/data-centre-electricity-reading-the-iea-forecasts-honestly): What the IEA's Electricity 2024 and Energy and AI reports actually say about data centre power demand, and how to read their numbers honestly. (November 14, 2026, 10 min read) - [How Crawlers Actually Fetch Pages: Protocol, Limits, and Caching on the Wire](https://novandri.com/articles/how-crawlers-actually-fetch-pages-protocol-limits-and-caching): What Googlebot and AI crawlers do at the HTTP level — protocols, encodings, size limits, conditional requests, and the crawl rate signal you can read in your logs. (November 14, 2026, 11 min read) - [llms.txt, robots.txt, and the IETF Drafts: Sorting AI File Formats by Evidence](https://novandri.com/articles/llms-txt-robots-txt-and-ietf-drafts-sorting-ai-file-formats-by-evidence): What llms.txt is, what the IETF aipref drafts standardise, and why 'just add a file' is not yet an SEO technique — with the sources checked. (November 14, 2026, 11 min read) - [Measuring GEO: What You Can Actually Count When Traffic Comes From Answers](https://novandri.com/articles/measuring-geo-what-you-can-actually-count): How to measure AI answer visibility with the tools that exist today — referral data, logs, and crawlers — without inventing metrics that do not exist. (November 14, 2026, 11 min read) - [Open Source Is a License Term, Not a Vibe: Reading OSD, OSAID, and BSL](https://novandri.com/articles/open-source-is-a-license-term-not-a-vibe): What OSI's Open Source Definition actually requires, what the Open Source AI Definition adds, and how the Business Source License sits outside both. (November 14, 2026, 10 min read) - [robots.txt Is a Parsing Specification: The Rules Your Crawler Actually Follows](https://novandri.com/articles/robots-txt-is-a-parsing-specification-the-rules-your-crawler-follows): RFC 9309 defines exactly how robots.txt groups, matching, precedence, and encoding work — and how to test your file against the spec. (November 14, 2026, 11 min read) - [Simpson's Paradox in Your Own Data: Why a Single Correlation Can Reverse Its Sign](https://novandri.com/articles/simpsons-paradox-why-a-single-correlation-can-reverse-its-sign): A reproducible sign reversal in a public dataset shows how pooled correlations invert — and what to check before trusting any single number. (November 14, 2026, 8 min read) - [AI Search and Technical SEO: What Website Owners Should Actually Do](https://novandri.com/articles/ai-search-and-technical-seo-what-website-owners-should-do): A source-led guide to Google AI Overviews and AI Mode: meet Search requirements, control previews, measure available data, and avoid unsupported GEO tactics. (November 13, 2026, 7 min read) - [Canonical Tags and Duplicate URLs: Signals, Not Commands](https://novandri.com/articles/canonical-tags-and-duplicate-urls-signals-not-commands): Master canonicalization for technical SEO: why canonical tags are signals rather than directives, resolving conflicting signals, and debugging Google canonical overrides. (November 13, 2026, 11 min read) - [CDN Caching and Googlebot: Avoid Origin Overload](https://novandri.com/articles/cdn-caching-and-googlebot-avoid-origin-overload): Configure CDN caching for search engine crawlers: cache keys, cache hit ratios, avoiding origin overload during migrations, and preventing false-positive WAF blocks. (November 13, 2026, 8 min read) - [Core Web Vitals: Diagnose LCP, INP, and CLS](https://novandri.com/articles/core-web-vitals-diagnose-lcp-inp-cls): A developer's guide to Core Web Vitals: diagnose LCP, INP, and CLS, understand CrUX field data vs Lighthouse lab scores, and fix real user performance bottlenecks. (November 13, 2026, 7 min read) - [Crawl Budget: When It Matters and How to Diagnose It](https://novandri.com/articles/crawl-budget-when-it-matters-and-how-to-diagnose-it): A realistic guide to crawl budget: understanding crawl capacity vs demand, identifying when crawl budget matters, and eliminating wasteful crawler traps. (November 13, 2026, 7 min read) - [Discovered, Crawled, Rendered, Indexed: Why Stages Differ](https://novandri.com/articles/discovered-crawled-rendered-indexed-why-stages-differ): Diagnose why URLs get stuck in Google Search Console: the difference between Discovered, Crawled, Rendered, and Indexed, and how to fix indexing backlogs. (November 13, 2026, 7 min read) - [DNS for SEO: How Domain Resolution Works and How to Debug It](https://novandri.com/articles/dns-for-seo-how-domain-resolution-works): A guide to DNS for technical SEO: how recursive resolution works, managing TTLs for zero-downtime cutovers, and debugging crawler DNS failures with dig. (November 13, 2026, 7 min read) - [E-commerce Technical SEO: Product URLs and Faceted Navigation](https://novandri.com/articles/ecommerce-technical-seo-product-urls-faceted-navigation): Control e-commerce URL growth by classifying filters, sorting, and pagination, then define crawl, canonical, and indexation rules for each URL type. (November 13, 2026, 6 min read) - [Google Search Console for Technical SEO: A Diagnostic Workflow](https://novandri.com/articles/google-search-console-for-technical-seo-a-diagnostic-workflow): A developer's workflow for Google Search Console: triaging URL Inspection live tests, Page Indexing errors, and Crawl Stats to isolate technical root causes. (November 13, 2026, 6 min read) - [How Googlebot Discovers and Crawls Pages](https://novandri.com/articles/how-googlebot-discovers-and-crawls-pages): An engineering breakdown of how Googlebot discovers and crawls URLs: crawl frontiers, internal link graphs, sitemap processing, and crawl demand dynamics. (November 13, 2026, 7 min read) - [Hreflang for International SEO: Build Valid Language Clusters](https://novandri.com/articles/hreflang-for-international-seo-build-valid-language-clusters): Implement bulletproof hreflang clusters for international SEO: ISO syntax, bi-directional confirmation rules, XML sitemap deployment, and avoiding IP redirect traps. (November 13, 2026, 6 min read) - [HTTP Status Codes for SEO: Diagnose 200, Redirects, 404, and 5xx](https://novandri.com/articles/http-status-codes-for-seo-diagnose-200-redirects-404-5xx): A practical guide to HTTP status codes for SEO: how 200, 301, 302, 404, 410, 429, and 5xx impact crawling, indexing, and canonicalization with curl triage recipes. (November 13, 2026, 12 min read) - [HTTPS, TLS, and SEO: Diagnose Certificates and Redirects](https://novandri.com/articles/https-tls-and-seo-diagnose-certificates-and-redirects): Diagnose HTTPS and TLS issues for technical SEO: certificate validation chains, SNI, zero-downtime redirect matrices, HSTS, and debugging handshakes with openssl. (November 13, 2026, 7 min read) - [JavaScript SEO: SSR, CSR, SSG, and ISR Explained](https://novandri.com/articles/javascript-seo-ssr-csr-ssg-isr): A developer's guide to JavaScript SEO: comparing SSR, CSR, SSG, and ISR, how Google's Web Rendering Service processes client-side code, and avoiding indexing traps. (November 13, 2026, 9 min read) - [From LangChain to LangGraph: Building Stateful AI Agents That Don't Fall Apart](https://novandri.com/articles/langchain-to-langgraph): Why linear chains break for real agents, how LangGraph models stateful workflows, and how checkpoints, human review, and subgraphs improve reliability. (November 13, 2026, 7 min read) - [Mobile-First Indexing: Check Content and Rendering Parity](https://novandri.com/articles/mobile-first-indexing-check-content-and-rendering-parity): Audit mobile-first indexing parity: verify text, structured data, metadata, and media parity between desktop and smartphone Googlebot renders. (November 13, 2026, 8 min read) - [Raw HTML vs Rendered DOM: What Can a Crawler Read?](https://novandri.com/articles/raw-html-vs-rendered-dom-what-can-a-crawler-read): Understand what search crawlers can read: comparing raw HTML byte streams with the rendered DOM, crawlable link standards, hydration gaps, and diagnostic diffing. (November 13, 2026, 7 min read) - [Robots.txt vs Noindex vs Sitemap: What Each One Does](https://novandri.com/articles/robots-txt-vs-noindex-vs-sitemap): Learn the precise differences between robots.txt, noindex, and XML sitemaps: how crawl control differs from indexation control, and avoiding fatal directive conflicts. (November 13, 2026, 7 min read) - [SEO Observability: Turn Logs and Checks into Useful Alerts](https://novandri.com/articles/seo-observability-turn-logs-and-checks-into-useful-alerts): Build an actionable SEO observability pipeline: track crawl anomalies, edge error spikes, and sitemap drift with automated monitoring and meaningful alert thresholds. (November 13, 2026, 6 min read) - [SEO Regression Tests in CI/CD: Catch Errors Before Release](https://novandri.com/articles/seo-regression-tests-in-cicd-catch-errors-before-release): Add practical SEO smoke tests to CI/CD for HTTP status, robots directives, canonicals, sitemaps, and rendered pages—without brittle checks. (November 13, 2026, 6 min read) - [SEO URL Structure: Normalize Hostnames, Paths, and Parameters](https://novandri.com/articles/seo-url-structure-normalize-hostnames-paths-parameters): Design deterministic, crawlable URL architectures: RFC 3986 anatomy, URL normalization rules, trailing slashes, parameter hygiene, and consistency auditing. (November 13, 2026, 6 min read) - [Server Logs for SEO: See What Googlebot Requests](https://novandri.com/articles/server-logs-for-seo-see-what-googlebot-requests): Analyze server access logs for technical SEO: verify genuine Googlebot IP addresses, trace crawl behavior, detect 5xx errors, and isolate crawl traps. (November 13, 2026, 8 min read) - [Structured Data and Schema.org: What It Can—and Cannot—Do](https://novandri.com/articles/structured-data-and-schema-org-what-it-can-and-cannot-do): A developer's guide to structured data and Schema.org: implementing JSON-LD, entity @id linking, content parity rules, and realistic rich snippet expectations. (November 13, 2026, 6 min read) - [Technical SEO at Scale: URL Inventory, Capacity, and Observability](https://novandri.com/articles/technical-seo-at-scale-url-inventory-capacity-observability): Manage technical SEO for large, frequently changing sites by measuring URL inventory, crawl demand, origin capacity, and operational bottlenecks. (November 13, 2026, 6 min read) - [A Technical SEO Audit That Follows the Request Path](https://novandri.com/articles/technical-seo-audit-follows-request-path): Run a risk-based technical SEO audit from DNS and HTTP delivery through rendering, crawling, and indexing, tying each finding to evidence and an owner. (November 13, 2026, 6 min read) - [Technical SEO Engineering: From Web Request to Search Index](https://novandri.com/articles/technical-seo-engineering-from-web-request-to-search-index): An engineering blueprint connecting web requests to search indexing: DNS, TLS, edge caching, rendering pipelines, crawl mechanics, and observability. (November 13, 2026, 8 min read) - [Technical SEO for Next.js and Headless CMS](https://novandri.com/articles/technical-seo-nextjs-headless-cms): A production guide to technical SEO in Next.js and headless CMS: App Router metadata API, dynamic sitemaps, canonicals, ISR revalidation, and build audits. (November 13, 2026, 7 min read) - [Three Technical SEO Bugs Diagnosed from Symptom to Root Cause](https://novandri.com/articles/three-technical-seo-bugs-diagnosed-symptom-to-root-cause): Work through three clearly labeled technical SEO lab scenarios: a 200 page with missing rendered content, a WAF-blocked crawler, and conflicting URL signals. (November 13, 2026, 7 min read) - [Web Performance from DNS to Browser: Find the Slow Layer](https://novandri.com/articles/web-performance-from-dns-to-browser-find-the-slow-layer): Diagnose web performance bottlenecks across network and compute layers: waterfall decomposition, TTFB analysis, render-blocking resources, and DevTools triage. (November 13, 2026, 7 min read) - [Web Server vs Application Server: Where SEO Errors Begin](https://novandri.com/articles/web-server-vs-application-server-where-seo-errors-begin): Isolate whether SEO errors begin at the reverse proxy or application runtime: diagnosing 502s, 504 timeouts, buffer overflows, and header triage with Nginx. (November 13, 2026, 7 min read) - [Website Migration SEO: Infrastructure Checklist Before and After Launch](https://novandri.com/articles/website-migration-seo-infrastructure-checklist-before-and-after-launch): Plan an SEO-safe website migration with URL mapping, redirect validation, DNS and TLS checks, launch-day smoke tests, monitoring, and rollback criteria. (November 13, 2026, 5 min read) - [Website Uptime, 5xx Errors, and Crawl Reliability](https://novandri.com/articles/website-uptime-5xx-errors-and-crawl-reliability): Understand how website downtime and 5xx server errors impact Googlebot: the crawl back-off curve, using 503 Retry-After for maintenance, and outage recovery protocols. (November 13, 2026, 6 min read) - [What Happens When a Crawler Requests a URL?](https://novandri.com/articles/what-happens-when-a-crawler-requests-a-url): A step-by-step breakdown of DNS resolution, TCP/TLS handshakes, HTTP transmission, and rendering queues, detailing where crawling fails. (November 13, 2026, 10 min read) - [WordPress Technical SEO: From Permalink to HTML Response](https://novandri.com/articles/wordpress-technical-seo-from-permalink-to-html-response): Deconstruct the WordPress technical stack: inspect request lifecycles, debug rewrite rules and permalinks, eliminate database TTFB bottlenecks, and isolate plugin conflicts. (November 13, 2026, 7 min read) - [Retrieval-Augmented Generation, Explained From the Inside Out](https://novandri.com/articles/rag-explained): How RAG works under the hood—from chunking and embeddings to hybrid retrieval and reranking—and the design choices that turn a demo into a production system. (November 10, 2026, 9 min read) - [How to Actually Start Learning AI as a Developer in 2026](https://novandri.com/articles/how-to-start-learning-ai): A practical AI and machine-learning roadmap for developers: what to learn, in what order, what to skip, and how to build a portfolio that proves you can do the work. (November 8, 2026, 8 min read) ## Pages - [Home](https://novandri.com): profile, latest articles, and highlighted projects - [Articles](https://novandri.com/articles): all articles - [Projects](https://novandri.com/projects): case studies in progress; no project entries are published yet - [About](https://novandri.com/about): bio, focus areas, and contact - [RSS feed](https://novandri.com/feed.xml): subscribe to new articles - [Full content for LLMs](https://novandri.com/llms-full.txt): complete article content in plain markdown ## Contact - LinkedIn: https://www.linkedin.com/in/novandri511/ - GitHub: https://github.com/novanr511