Blog
Mert Özen's blog posts on software development, backend, frontend, and DevOps.
What Is Content SEO? People-First Content, the "Who, How, Why" Questions and Search Engine-First Warning Signs
Content SEO is the content work that makes a findable page get chosen as the answer to a query: writing the right topic for the right intent and genuinely giving readers something. We explain Google's people-first content guide in our own words, apply the "Who, How, Why" questions to a real mertozen.com post, and show the search engine-first warning signs and the scaled content abuse line for bulk AI production.
Keyword Research: Finding Topics and Queries for a Technical Blog, from Search Console to Keyword Planner
For a technical blog the most reliable keyword source is your own Search Console data; autocomplete, Google Trends and Keyword Planner give phrasings, comparisons and estimates, not real volume. We cover each source's limits, how Turkish developers search with English jargon and error messages, and building a TR/EN keyword map from bulk export data with .NET 10.
Search Intent: Reading the Intent Behind a Query and Choosing the Right Content Format
Search intent is the purpose behind a query, and it decides the right content format: a guide for a definition query, the fix on the first screen for an error message, a table for a comparison. We cover Broder's classification, the Know/Do/Website intents in the rater guidelines, developer-specific intents, reading the SERP, the effect of AI Overviews on clicks and classifying queries by intent with .NET 10.
Content Architecture: Topic Clusters, Series and Category Structure, and Keyword Cannibalization
A good content architecture gives every query intent a single owner on the site and makes hub pages actually explain a topic; two pages that target the same intent weaken each other through keyword cannibalization. We cover mertozen.com's category, series and post structure, tag inflation, finding cannibalization candidates from Search Console data with .NET 10, and the merge, differentiate and canonical options.
Internal Linking: Anchor Text, Orphan Pages, Link Depth and Building Your Own Link Graph in C#
Internal links let Google discover new pages and, through anchor text, tell it what they are about; every important page should get a real <a href> link from at least one other page on the site. We cover crawlable link rules, anchor text, orphan pages and link depth, then write a crawler with .NET 10 and AngleSharp that starts from the sitemap and reports orphans, deep pages, redirect chains and nofollow.
Writing Pages That Answer: Heading Structure, the First Paragraph, Code Samples, Images and Bilingual Content
A page that answers gives the answer to its title's question in the first paragraph, has a single clear h1, and shows code as text with its real output; heading order is not a ranking factor for Google but matters for readers and accessibility. We cover heading structure, the first paragraph, versions and output in technical content, alt text and file names for images, TR/EN localisation and AI-assisted writing, and build a page checker with .NET 10 and AngleSharp.
Content Maintenance: Content Decay, the Update–Merge–Delete Decision and Keeping Version-Dependent Posts Alive
Content decay is the decline of a page's search traffic over months, and the fix is not updating the date but separating the cause and deciding to update, rewrite, merge or remove. We cover detecting decay with year-over-year comparisons in Search Console, extracting signals with .NET 10, keeping version-dependent posts alive as .NET 11 ships, using dateModified honestly, spam policy boundaries and measuring with annotations.