<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" version="2.0">
  <channel>
    <title>Writing by Bruce R. Lewis (brlewis)</title>
    <link>https://writing.brlewis.com/</link>
    <atom:link href="https://writing.brlewis.com/feed.xml" rel="self" type="application/rss+xml"/>
    <description>Largely, but not exclusively, about software and reasoning</description>
    <lastBuildDate>Fri, 18 Sep 2026 06:24:27 GMT</lastBuildDate>
    <language>en</language>
    <generator>Lume 3.3.1</generator>
    <item>
      <title>LLM as copyeditor</title>
      <link>https://writing.brlewis.com/posts/2026/llm-copyeditor/</link>
      <guid isPermaLink="false">https://writing.brlewis.com/posts/2026/llm-copyeditor/</guid>
      <content:encoded>
        <![CDATA[<p>Thomas Ptacek's overall theme in
<a href="https://sockpuppet.org/blog/2026/09/17/how-to-write-with-an-llm/">How To Write With An LLM</a>
is good overall. Definitely the role of an LLM should be copyeditor and not
ghostwriter. But there are several details I would argue with.</p>
<!--more-->
<p>It's funny that this post came out right after I set up my first real blog. This
timing allowed me to prompt an LLM in the same conversation I'd been having
about setup.</p>
<p><strong>Claude&gt;</strong> Talk to me about
https://sockpuppet.org/blog/2026/09/17/how-to-write-with-an-llm/</p>
<p>Claude answered with some mildly interesting disagreement and agreement, and
then said the following:</p>
<blockquote>
<p>What's interesting reading it against this conversation: what we've actually
been doing tracks closer to the article's model than most &quot;AI writing help&quot; —
I never drafted your README prose. You wrote every sentence of it yourself
across several passes; my role was pushing back on the reasoning (the CMS
claim, the &quot;consistency&quot; framing, the standards-vs-ergonomics conflation) and
then executing the resulting decisions. That's closer to &quot;copyeditor surfacing
problems&quot; than &quot;ghostwriter,&quot; which is presumably the mode you'd want for the
blog itself too, given why you built it this way in the first place.</p>
</blockquote>
<p>So, to be clear, I absolutely agree with the main thesis. And because I find the
main thesis interesting and relevant, I want to argue with some of the details.</p>
<h2 id="yay-for-llm-copyediting-and-boo-for-llm-ghostwriting" tabindex="-1"><a href="https://writing.brlewis.com/posts/2026/llm-copyeditor/#yay-for-llm-copyediting-and-boo-for-llm-ghostwriting" class="header-anchor">Yay for LLM copyediting and boo for LLM ghostwriting</a></h2>
<p>I like dry humor and I'm often silly, but you'll notice I didn't put any
tongue-in-cheek language in here that mocks 2026 LLM writing style. Because to a
lot of people today, it's not funny. People are sick of seeing that particular
voice.</p>
<p>But it isn't the detectable patterns themselves that irritate people. They're
irritating because they're associated with soulless writing. All an LLM does is
string words together in a believable pattern. They don't have any goal in their
writing that hasn't already been articulated earlier in the token sequence. An
LLM is an amazingly useful collection of information about how words relate to
other words, but it has no idea what the words mean. And that comes through in
the rambling, useless verbiage that frustrates readers trying to understand the
&quot;writer's&quot; intent. Soo boo for LLM ghostwriting.</p>
<p>Yay for LLM copyediting. Having a model, trained on a huge volume of ideas that
humanity has articulated, at your beck and call any time of day or night is a
huge win for writing.</p>
<h2 id="it%E2%80%99s-tricky-to-write-about-writing%3F" tabindex="-1"><a href="https://writing.brlewis.com/posts/2026/llm-copyeditor/#it%E2%80%99s-tricky-to-write-about-writing%3F" class="header-anchor">It’s tricky to write about writing?</a></h2>
<p>I disagree with &quot;It’s tricky to write about writing. It comes across as a brag;
you’re implying that you write well.&quot; The fear being expressed is that you'll be
seen as having opinions on what makes good writing when you yourself aren't
producing good writing. So what? We sit in our armchairs and express opinions
about how professional athletes should play, without being embarrassed that
we're not able to execute the plays we're recommending. My opinions about what
is good writing don't have to be self-referential. And suppose you are bragging?
So what? Strong opinions are fun to read. For example, when I was in school my
favorite teachers were those who were convinced that their own subject was the
most important knowledge one human could impart to another.</p>
<p>Writing about writing is so natural that screenwriters can't seem to not do it.
Every movie and TV show has a character who writes, or who is obsessed with
books. I see such themes so often that I kind of wish it <em>was</em> tricky to write
about writing.</p>
<h2 id="you-may-not-use-a-single-word-an-llm-suggests-to-you%3F" tabindex="-1"><a href="https://writing.brlewis.com/posts/2026/llm-copyeditor/#you-may-not-use-a-single-word-an-llm-suggests-to-you%3F" class="header-anchor">You may not use a single word an LLM suggests to you?</a></h2>
<p>I would be sympathetic if he'd written not to put any two words together that
came from an LLM. But an LLM is an awesome place to find a single word. If you
use a thesaurus to find a word, you have to come up with a synonym first. A
large language model lets you describe the word you're looking for.</p>
<p>Toward the end of that section he shifts toward arguing against LLM-generated
<em>phrases</em>. He probably should have used an LLM copywriter to detect that
inconsistency.</p>
<h2 id="avoid-encouragement%3F" tabindex="-1"><a href="https://writing.brlewis.com/posts/2026/llm-copyeditor/#avoid-encouragement%3F" class="header-anchor">Avoid encouragement?</a></h2>
<p>I think it's going to far to forbid the model from encouragement. An LLM is an
amalgamation of the thoughts of lots of humans, and encouragement from it is
just a reminder that somebody, somewhere might get something good out of some of
your writing. If LLM encouragement is enough to get you to stop examining and
fixing what you've written, you're not going to produce good writing anyway.</p>
<h2 id="ok%2C-maybe-ghostwrite-the-closing" tabindex="-1"><a href="https://writing.brlewis.com/posts/2026/llm-copyeditor/#ok%2C-maybe-ghostwrite-the-closing" class="header-anchor">OK, maybe ghostwrite the closing</a></h2>
<p>Earlier, I said that LLMs &quot;don't have any goal in their writing that hasn't
already been articulated earlier in the token sequence&quot;. After I wrote that, it
occurred to me that an essay closing doesn't have to introduce any new ideas, so
you could actually have an LLM ghostwrite your closing and it might do a good
job. Is that what I've done here? I find it amusing not to tell you.</p>
]]>
      </content:encoded>
      <category>AI</category>
      <category>writing</category>
      <pubDate>Thu, 17 Sep 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>How to install this theme</title>
      <link>https://writing.brlewis.com/posts/instructions/</link>
      <guid isPermaLink="false">https://writing.brlewis.com/posts/instructions/</guid>
      <content:encoded>
        <![CDATA[<p><strong>Simple blog</strong> is a clean and minimal blog theme for Lume, with support for
tags and authors. It allows you to build your own blog <strong>in seconds</strong>, and
provides Atom and JSON feeds for your subscribers.</p>
<!--more-->
<p>The <strong>fastest and easiest</strong> way to configure this theme is the
<a href="https://deno.land/x/lume_init">Lume init command</a>, which you can also copy
easily from the <a href="https://lume.land/theme/simple-blog/">Simple Blog theme page</a>.
Running:</p>
<pre><code class="language-bash">deno run -A https://lume.land/init.ts --theme=simple-blog
</code></pre>
<p>will create a new project with Simple Blog configured. Edit the <code>_data.yml</code> file
in your blog root folder with your data to customize the site title,
description, and metadata.</p>
<p>Posts must be saved in the <code>posts</code> folder. For example,
<code>posts/my-first-posts.md</code>.</p>
<h2 id="install-as-a-remote-theme" tabindex="-1"><a href="https://writing.brlewis.com/posts/instructions/#install-as-a-remote-theme" class="header-anchor">Install as a remote theme</a></h2>
<p>To add the theme to an existing Lume project, import it in your <code>_config.ts</code>
file as a remote module. Update it by changing the version number in the import
URL:</p>
<pre><code class="language-ts">import lume from &quot;lume/mod.ts&quot;;
import blog from &quot;https://deno.land/x/lume_theme_simple_blog@v0.15.6/mod.ts&quot;;

const site = lume();

site.use(blog());

export default site;
</code></pre>
<p>Copy the
<a href="https://github.com/lumeland/theme-simple-blog/blob/main/src/_data.yml"><code>_data.yml</code></a>
file to your blog root folder and edit it with your data.</p>
<h2 id="customization" tabindex="-1"><a href="https://writing.brlewis.com/posts/instructions/#customization" class="header-anchor">Customization</a></h2>
<div class="markdown-alert markdown-alert-tip">
<p class="markdown-alert-title">Tip</p>
<p>You can use <a href="https://lume.land/cms">lumeCMS</a> to customize the blog and add
content easily</p>
</div>
]]>
      </content:encoded>
      <category>Instructions</category>
      <pubDate>Sun, 12 Jun 2022 00:00:00 GMT</pubDate>
    </item>
  </channel>
</rss>