Kirchner.io
AI and systems / 15 min read

Blogs And Blogrolls

Blogs, blogrolls, feeds, webrings, archives, IndieWeb discovery, and the craft of keeping independent web writing readable and connected.

reading surface

Technology

words
2,836
sections
22
references
33
compendium links
57
Opens in a new tab.

A blog is a serial publishing surface; a blogroll is a map of attention. Together they preserve people, sites, arguments, jokes, technical notes, field reports, project logs, and small personal worlds that search engines and social feeds often flatten into isolated answers.

The older independent web had many such maps: link pages, webrings, RSS feeds, Atom feeds, "sites I like" lists, comments, trackbacks, blogroll sidebars, and long-running personal domains. Those structures were messy, but they made discovery feel human. A good blogroll still does that.

This page connects publishing craft to SEO, domains, data sources, history, GitHub, data storage, hacker culture, books, overlanding, semantic web, standards, graphs, and language.

Blogs are reverse-chronological or otherwise serial collections of posts, usually tied to an author, group, project, topic, or publication. A blog can be a notebook, magazine, changelog, field journal, public diary, lab book, portfolio, release channel, or long-running argument archive.

A blogroll is a curated list of other sites or feeds. Its value is not just that it contains links. Its value is that it records taste, trust, influence, adjacency, and continuity.

Blogrolls are useful because they encode editorial judgment. They tell a reader not only what exists, but what someone thought was worth returning to. That makes them a small but meaningful data source for web history, intellectual influence, and independent publishing culture.

For a personal site, a blogroll also does quiet SEO work. It creates durable outbound references, helps readers continue a thread, and situates the site inside a network instead of leaving each post isolated. The best version is not a generic directory. It is an annotated map of neighboring minds.

A serious blogroll is a small knowledge graph. Each site is an entity with an author, domain, feed, topics, relationships, references, and history. Each link is a claim: this person or site belongs near this subject, this community, this toolchain, or this lineage of ideas.

That matters because personal web knowledge is otherwise easy to lose. A search engine can find pages, but it rarely preserves why one reader trusted a site, which posts shaped a project, or which neighboring communities made a topic intelligible. Blogroll metadata can carry those weak but useful signals.

Useful graph nodes include author, site, post, feed, domain, repository, newsletter, archive snapshot, topic, community, standard, and citation. Useful edges include writes_at, links_to, cites, inspired_by, mirrors, archived_at, moved_to, maintained_by, uses_feed, and discusses_topic.

A useful blogroll entry should preserve:

  • site title and canonical URL;
  • author, organization, or pseudonym when known;
  • RSS, Atom, JSON Feed, newsletter, or repository URL when available;
  • primary topics and representative posts;
  • active, dormant, moved, mirrored, or dead-link status;
  • last checked date and archival fallback;
  • a short editorial note explaining why the site belongs in the list.

That last field matters. A blogroll without notes becomes a pile of bookmarks. A blogroll with reasons becomes a navigable knowledge surface.

Feeds are the machine-readable backbone of blog discovery. RSS, Atom, and JSON Feed let readers subscribe without waiting for a platform to choose what appears. OPML makes feed lists portable, which matters when a blogroll should be shared, backed up, or imported into another reader.

For this compendium, feed metadata should connect blogs to standards, semantic web, and data sources. A feed is not just a subscription convenience. It is a machine-readable record of publication order, titles, excerpts, authorship, stable permalinks, update times, and sometimes full article bodies.

The IndieWeb treats personal domains as first-class homes for identity, publishing, replies, and syndication. A blog can participate through simple visible links, feed discovery, h-feed, h-entry, Webmention, WebSub, and other conventions that make independent sites interoperable without turning them into one platform.

The point is not to implement every protocol. The point is to publish enough structure that people and tools can follow a site over time. A human-readable blogroll, a feed link, a canonical domain, and stable permalinks already do a lot.

Webrings are another human-scale discovery structure. A ring declares that a set of sites belongs together by theme, community, era, medium, or attitude. The mechanism is simple: previous, next, random, and index links make discovery a path rather than a ranked result.

Useful references include the IndieWeb wiki on blogrolls, the IndieWeb wiki on webrings, the IndieWeb Webring, and the XXIIVV webring. These show that independent discovery can be small, durable, and intentionally subjective.

Blogs are fragile because personal sites move, domains expire, CMS migrations break URLs, image hosts disappear, and feed formats drift. A serious blogroll should therefore record both the live URL and an archival path.

Good practice:

  • prefer stable canonical URLs;
  • keep the site's feed URL when available;
  • preserve important dead links through Internet Archive or Wayback Machine;
  • record moved domains rather than silently replacing history;
  • keep enough notes to explain why the link mattered.

This is where blogrolls connect to data storage, domains, history, and wget. A dead personal site can become a historical artifact faster than expected.

A practical preservation workflow is modest:

  1. record the canonical URL and feed;
  2. capture title, author, topics, and reason for inclusion;
  3. check whether the feed and homepage still resolve;
  4. store an archive URL for important or fragile sites;
  5. keep the date of the check;
  6. update status when a site moves, dies, or returns.

For fragile personal sites, a respectful wget capture or an ArchiveBox collection can preserve the homepage, feed, representative posts, and outbound blogroll as evidence. The goal is not to republish someone else's site. It is to keep enough local context to understand what the blogroll pointed at when the recommendation was made.

Blog posts can be sources, but they should be typed carefully. A post might be a tutorial, field note, announcement, personal claim, benchmark, criticism, retrospective, or primary account from someone who built the thing. Those are not equivalent.

When a compendium page cites a post, the graph should preserve author, publication date, update date, cited claim, and whether the post is firsthand evidence or commentary. This keeps independent web writing useful without pretending it has the same status as a standard, source code release, dataset, peer-reviewed paper, or book.

Technical blogs are often better than official documentation for understanding design tradeoffs, migration pain, failure modes, and small practical tricks. The best posts name the environment, show the exact problem, explain the decision, and leave enough detail for a reader to adapt the solution. That creates a healthy loop between GitHub repo practices, long-form writing, and discoverable project knowledge.

A blogroll is strongest when it records why a link belongs. "I read this often," "primary maintainer," "good field reports," "sharp criticism," "historical archive," "local conditions," and "useful but inactive" are different recommendations. Without that note, a blogroll becomes a flat list that loses the human judgment that made it valuable.

Editorial provenance should preserve inclusion reason, topic tags, author or steward, canonical domain, feed URL, last checked date, and status. For high-value sources, keep representative posts and archive snapshots. This turns a blogroll into a data source, not just a sidebar.

The same principle applies to outbound links inside posts. A link can be evidence, courtesy, influence, disagreement, related reading, source data, project home, or archive fallback. The page does not need to expose every edge to the reader, but the knowledge graph should distinguish them. That distinction helps semantic web metadata, graphs, and data visualization show neighborhoods of trust instead of generic link density.

Blogs become more useful when human-readable pages and machine-readable metadata agree. Schema.org Blog, feed links, canonical URLs, author pages, tags, dates, and internal links all help readers and machines understand the same publishing surface.

The old W3C note on cool URIs remains relevant because independent publishing depends on durable addresses. A beautiful essay is less useful if every migration breaks its URL. Stable paths, redirects, and archive-aware records are part of the craft.

Feeds are the quiet infrastructure of independent reading. A healthy blog should expose RSS, Atom, JSON Feed, or another documented feed format from a stable URL, include enough post metadata for readers to sort and cite entries, and keep titles, canonical links, publication dates, update dates, and author fields consistent with the HTML page.

Feed drift is common. A redesign can remove autodiscovery tags, change item identifiers, duplicate old posts, truncate content unexpectedly, or point readers at a newsletter mirror instead of the canonical site. For a serious blogroll, record feed URL, feed format, last successful fetch, canonical homepage, and whether the feed is full text, summary, or announcement-only.

This connects standards, domains, data storage, and SEO. Feed hygiene makes human reading pleasant, but it also gives the knowledge graph a stable update stream.

Good independent sites usually have signs of care: stable URLs, dated posts, visible authorship, outbound citations, readable archives, working feeds, and enough design restraint that the writing remains primary. The best ones also make their influences visible through blogrolls, colophons, bibliographies, changelogs, and source repositories.

Bad signs are also useful: anonymous scrape pages, missing dates, broken feeds, link-stuffed sidebars, AI slop, no canonical author, posts that cannot survive without a platform context, and pages that make quotation or citation impossible.

Not every blogroll is trying to do the same job. A personal blogroll records taste and intellectual neighborhood. A technical blogroll records practitioners, maintainers, release channels, and implementation notes. A field-work blogroll records route reports, local conditions, photographs, and fragile place knowledge. A reading blogroll records criticism, essays, reviews, and long-running arguments.

Those modes should be visible in the record. A link that means "friend," "source," "canonical reference," "influence," "counterpoint," "archive," or "place to watch" should not collapse into the same edge. Annotation is what turns a blogroll from a bookmark dump into a reader-facing map. Even a one-sentence note can say why the site matters, what kind of evidence it provides, and how cautiously it should be used.

For graph utility, use typed relationships: recommends, cites, influenced_by, syndicates, mirrors, moved_to, archived_at, maintained_by, and publishes_feed. This lets a reader distinguish living neighborhoods from historical traces and lets the site keep useful outbound links without pretending every neighbor has the same status.

Blog pages rot in distinctive ways. Domains expire, feeds move, publishing engines change URL patterns, authors move newsletters to platforms, archives drop images, and redirects silently point to unrelated content. A good blogroll should expect drift and keep enough metadata to recover meaning later.

The maintenance record should store last checked date, HTTP status, canonical URL, feed URL, archive URL, title at time of inclusion, and reason for inclusion. For high-value links, preserve representative post URLs and an archive snapshot. This is useful for SEO because broken links and missing canonical context hurt readers, and it is useful for history because the independent web is often reconstructed from partial traces.

A blogroll page should be readable as a map, not a wall of names. Group links by relationship or theme, annotate why each site belongs, expose feed availability, and mark inactive or archived sites without deleting their historical value. The page should make it easy to move from a writer to a domain, from a post to a source claim, and from a dead link to an archive.

For search and sharing, keep titles literal: blogroll, feeds, personal sites, IndieWeb, RSS, archives, and web preservation. Those phrases match how readers look for this material while still letting the graph carry richer relationships underneath.

The display should also make time visible. A site last checked this month, a site archived ten years ago, and a site known only through the Wayback Machine are different kinds of evidence. Date labels keep the blogroll honest while preserving the pleasure of browsing.

Useful search phrases include blogroll, RSS feed, Atom feed, IndieWeb, personal site, web archive, webring, link page, and independent publishing. Those terms should point to concrete records: feed URL, canonical domain, author, topic, archive snapshot, and reason for inclusion.

Useful status labels include active, quiet, moved, archived, feed-only, newsletter mirror, dead link, and uncertain. A quiet site may still be valuable if its archive is coherent. A moved site may need redirect and feed updates. A dead site may deserve an archive pointer rather than deletion. Status is not a ranking; it is a reader-safety signal.

For long pages, split browsing from maintenance. Readers need theme groups, annotations, and clear outbound links. Maintainers need last checked dates, feed status, archive links, and stale-link flags. The best display lets both jobs coexist without turning a blogroll into a spreadsheet.

A good blogroll should support several reader moves. A visitor may want to find active feeds, follow a topic trail, identify firsthand project notes, recover a dead citation, compare neighboring writers, or understand why a site belongs in the list. The display should make those moves easy without asking the reader to inspect raw metadata.

Useful reader-facing fields include site name, author or steward, topic cluster, one-sentence reason for inclusion, feed status, current status, and an archive fallback when the link is fragile. Maintenance-only fields can stay quieter: last checked date, HTTP status, canonical URL, feed URL, and local notes. This division keeps the page humane while preserving the evidence needed by data sources, domains, wget, and graphs.

The key habit is to annotate from use, not from prestige. A small site with one excellent field report may deserve a stronger edge than a famous publication that is only loosely related.

Blogroll Maintenance Workflow

Permalink to Blogroll Maintenance Workflow

A blogroll becomes more valuable when maintenance data is structured rather than trapped in a private note. Each entry should preserve canonical URL, feed URL, author or steward, topic cluster, inclusion reason, archive fallback, last checked date, and current status. That makes it possible to separate a broken link from a moved site, a dead domain from a useful archive, and a quiet publication from a source that no longer resolves.

Useful status labels include active, quiet, moved, archived, feed-only, dead, uncertain, and contextual. Contextual means the site is not broadly recommended but is useful for a specific thread, such as domains, wget, SEO, data storage, or graphs. This keeps the list from becoming a popularity contest while preserving the reason the edge exists.

Maintenance should also record the check method. A browser visit, feed fetch, HEAD request, archive lookup, and Firecrawl audit answer different questions. If a site blocks automated fetches but works in a browser, that is not the same as a dead link. If a domain resolves but the old feed has moved, the right repair is different again. A useful blogroll keeps those distinctions visible enough for future link audits without making the reader stare at operational debris.

The best maintenance habit is to keep the decision trail short but explicit. If an entry stays because it is historically important, say so. If it stays because one archived post is unusually useful, link that post. If it leaves the visible list but remains in the graph, record why the public display changed.

For this compendium, a blog page should connect writing practice to durable web identity. Store blogs as sites, not just links. Store posts as citable claims, not just text blobs. Store feeds as update streams. Store blogroll edges as editorial recommendations. Store archive snapshots as time-bound evidence.

This lets a reader ask better questions:

  • Which writers shaped this topic?
  • Which sites still publish working feeds?
  • Which domains moved?
  • Which posts are firsthand accounts?
  • Which recommendations came from trusted neighboring sites?
  • Which links need archival fallback?

That is the difference between a bookmark list and a useful public memory system.

  • SEO for discoverability, metadata, canonical URLs, and indexable archives.
  • Domains for durable web identity and migration history.
  • Data Sources for treating web references as usable evidence.
  • GitHub Repo Practices for project-facing writing and documentation.
  • Semantic Web, Graphs, and Standards for publishing machine-readable relationships.
  • Books and Print for longer-form archives, bibliographies, and reading trails.
  • Hacker Culture for technical writing as shared craft.
  • wget for Web Archival for respectful mirrors, capture manifests, and dead-link fallback.
  • Overlanding for field reports that need route provenance and location-sensitive publication.

entry coordinates

sections
22
article structure
claims
24
indexed statements
edges
103
typed relationships
aliases
8
entry names

knowledge graph

104 nodes / 103 edges / relationships

nodes
104
edges
103
claims
24
sections
22

warming graph renderer

3D map
Blogs And Blogrolls10 links / 11 nodes

statements

24
name
Blogs And Blogrolls
description
Blogs, blogrolls, feeds, webrings, archives, IndieWeb discovery, and the craft of keeping independent web writing readable and connected.
content world
Technology
node kind
compendium_article

typed edges

14

related notes

6

backlinks

5

linked topics

6
  • publishingtopic
  • webringstopic
  • indiewebtopic
  • blogstopic
  • web preservationtopic
  • personal websitestopic

external references

5

kg:compendium_article:blogs

neighboring notes

Related entries, backlinks, and linked topics around Blogs And Blogrolls.

Full network

entry dossier

Blogs And Blogrolls

nodes
104
edges
103
claims
24
sections
22

statements

24
name
Blogs And Blogrolls
description
Blogs, blogrolls, feeds, webrings, archives, IndieWeb discovery, and the craft of keeping independent web writing readable and connected.
content world
Technology
node kind
compendium_article
published
Dec 1, 2024
modified
Jul 14, 2026
reading time
15 min read

typed edges

14