URI: 
       DOES A BLOG HAVE TO BE HTML?
       
       2024-05-03
       
       Terence Eden wrote about his recent experience of IndieWebCamp Brighton, in
       which he mentioned that somebody - probably Jeremy Keith - had said,
       presumably to provoke discussion:
       > A blog post doesn't need a title.
       Terence disagrees, saying:
       > In a literal sense, he was wrong. The HTML specification makes it clear that
       the  element is mandatory. All documents have title.
       But I think that's an overreach. After all, where is it written that a blog
       must be presented in HTML?
       
       NON-HTML BLOGS
       
       There are plenty of counter-examples already in existence, of course:
       * Terence's own no-ht.ml (now offline) demonstrated that a website needn't use
       HTML (no-ht.ml technically does use HTML, but the same content could easily be
       delivered with an appropriate non-HTML MIME type if he'd wanted.). This
       inspired my own "page with no code", which worked by hiding content in CSS and
       loading the CSS using HTTP headers (Again, I suppose this technically required
       HTML, even if what was delivered was an empty file!).
       * theunderground.blog's content, with the exception of its homepage, is
       delivered entirely through an XML Atom feed. Atom feed entries do require
       <title>s, of course, so that's not the strongest counterexample!
       * This blog is available over several media other than the Web. For example,
       you can read this blog post:
       
            in Gemtext (Gemtext is basically Markdown, and doesn't require a title.)
       
            via Gemini at gemini://danq.me/posts/does-a-blog-have-to-be-html
            via Spartan at spartan://danq.me/posts/does-a-blog-have-to-be-html
       
       in plain text (Plain text obviously doesn't require a title.)
       
            via Gopher at gopher://danq.me/1/posts/does-a-blog-have-to-be-html
            via Finger at finger://does-a-blog-have-to-be-html@danq.me
       
       But perhaps we can do better...
       
       A TOTALLY TEXT/PLAIN BLOG
       
       We've looked at plain text, which as a format clearly does not have to have a
       title. Let's go one step further and implement it. What we'd need is:
       * A webserver configured to deliver plain text files by preference, e.g. by
       adding directives like index index.txt; (for Nginx). (There's no requirement
       that default files served by webservers are HTML, although it's highly-unsual
       for that not to be the case.)
       * An index page listing posts by date and URL. Most browser won't render these
       as "links" so users will have to copy-paste or re-type them, so let's keep
       them short,
       * Pages for each post at those URLs, presumably without any kind of "title"
       (just to prove a point), and
       * An RSS feed: usually I use RSS as shorthand for all feed types, but this
       time I really do mean RSS and not e.g. Atom because RSS, strangely, doesn't
       require that an <item> has a <title>!
       
       I've implemented it! it's at textplain.blog.
       
       In the end I decided it'd benefit from being automated as sort-of a basic
       flat-file CMS, so I wrote it in PHP. All requests are routed by the webserver
       to the program, which determines whether they're a request for the homepage,
       the RSS feed, or a valid individual post, and responds accordingly.
       
       It annoys me that feed discovery doesn't work nicely when using a Link:
       header, at least not in any reader I tried. But apart from that, it seems
       pretty solid, despite its limitations. Is this, perhaps, an argument for my
       .well-known/feeds proposal?
       
       Anyway, I've open-sourced the entire thing in case it's of any use to anybody
       at all, which is admittedly unlikely! Here's the code.
       
       LINKS
       
  HTML Terence Eden
  HTML Terence Eden's (titleless) blog post
  HTML Jeremy Keith
  HTML Terence's blog post about no-ht.ml
   DIR My blog post about "the page with no code"
  HTML Theunderground.blog
  HTML Gemini://danq.me/posts/does-a-blog-have-to-be-html
  HTML Spartan://danq.me/posts/does-a-blog-have-to-be-html
   DIR Gopher://danq.me/1/posts/does-a-blog-have-to-be-html
   DIR Finger://does-a-blog-have-to-be-html@danq.me
  HTML Textplain.blog
   DIR https://textplain.blog/
   DIR My blog post promoting the testing of websites in Lynx
  HTML My post on textplain.blog about it being annoying that feed discovery doesn't work via HTTP Link: tags
  HTML My
  HTML .well-known/feeds
  HTML  Proposal
  HTML My post on textplain.blog about open-sourcing textplain.blog
  HTML Source code for textplain.blog on Github