{
  "version": "https://jsonfeed.org/version/1",
  "title": "Llm on enumerator.dev",
  "icon": "<no value>",
  "home_page_url": "https://enumerator.dev/",
  "feed_url": "https://enumerator.dev/feed.json",
  "items": [
      {
        "id": "https://enumerator.dev/learn-ai-workflows-by-stealing-claude-files/",
        "title": "Learn AI Workflows by Stealing .claude Files",
        "content_html": "<p>When Harper Reed first published &ldquo;<a href=\"https://harper.blog/2025/02/16/my-llm-codegen-workflow-atm/\">My LLM codegen workflow atm</a>&rdquo;, I was hooked.</p>\n<p>I had been working with LLMs for a few months and Harper&rsquo;s post made it all click. &ldquo;THIS! This is the workflow that has been taking shape for me!&rdquo; I dove in head first and now for the past few months, I&rsquo;ve been AI first in all my work. I hardly type code any more. I read, refine, critique, and guide. I only get hands-on-keyboard when I have a very specific preference for how things should work.</p>\n<h2 id=\"learning-takes-time\">Learning Takes Time</h2>\n<p>It took me a lot of time to learn this workflow. I was lucky enough to have willow.camp as  a side project so I could get into the nitty-gritty. But not everyone has that opportunity.</p>\n<p>If I had to learn this all today, here&rsquo;s the approach I would take:</p>\n<ol>\n<li><a href=\"https://github.com/cassiascheffer/dotfiles/tree/main/.claude/commands\">Steal my .claude files</a>, which I stole from <a href=\"https://github.com/harperreed/dotfiles/tree/master/.claude\">Harper</a>, who borrowed from <a href=\"https://github.com/obra/dotfiles/tree/main/.claude\">Jesse</a>.</li>\n<li>Install Claude Code</li>\n<li>Pick up a ticket and start with Claude Code. This is TRAINING WHEELS OFF! Try it out. If you need an editor on the side, hook <code>claude</code> up to Cursor by typing <code>/ide</code>.</li>\n<li>Type <code>/brainstorm</code> into Claude Code.</li>\n<li>Work through the brainstorming steps to generate a spec.md.</li>\n<li>Then kick off <code>/plan</code>,  which will generate a todo.md.</li>\n<li>Finally, kick off <code>/do-todo</code>, which will iterate through todos.</li>\n</ol>\n<p>Repeat.</p>\n<p>The more you do this, the more it will become second nature. Eventually, you might not even need the <code>commands</code> anymore because you&rsquo;ll know when to plan and when to act.</p>\n<h2 id=\"break-things\">Break Things</h2>\n<p>I learn by breaking things!</p>\n<ul>\n<li>Modify your <code>commands</code> to suit your needs. Come up with your own commands and see how they work for you.</li>\n<li>Try the same thing twice to learn more about keeping the LLM on track and focused.</li>\n<li>Try the same task without doing the planning and see what happens.</li>\n<li>Try a massively complex task with and without planning.</li>\n<li>Try a tiny, simple task with and without planning.</li>\n</ul>\n<p>Breaking things is all about finding the boundaries. The best way to know what an AI agent is good at is to find out what it is BAD at!</p>\n<p>Keep it cool. If the LLM wanders off into the woods to build a tree fort when you asked it to do something else, that&rsquo;s okay. We all get off track. Here are a few things I do to learn:</p>\n<p>Ask the LLM what went wrong:</p>\n<ul>\n<li>&ldquo;I noticed we struggled to solve this. Analyze our conversation and give me pointers on how to find a solution sooner.&rdquo; This is a good prompt because sometimes, some incorrect context or weird code misdirects the LLM.</li>\n<li>&ldquo;We have struggled to find a solution. Explain to me why you thought this was the right path forward?&rdquo; This is an excellent prompt for getting the LLM to reveal its thinking. I have learned from this prompt that it is <strong>very important</strong> to <a href=\"/what-to-do-when-ai-makes-a-mistake\">correct the LLM early and often</a>. If you don&rsquo;t, you both might misunderstand something. Once the LLM is off track, I ask for a <a href=\"https://github.com/cassiascheffer/dotfiles/blob/main/.claude/commands/session-summary.md\">session summary</a>, clear the chat and start over.</li>\n</ul>\n<h2 id=\"takeways\">Takeways</h2>\n<p>Try stuff! Try lots of stuff and try it often. Timebox your work so you don&rsquo;t get stuck in a hole. Check yourself to see if the task you&rsquo;re doing is valuable. Are you learning something? Are you making progress?</p>\n<p>Learning is about making mistakes. Remember to make mistakes safely and adapt to them quickly. AI workflows can accelerate your work, but you have to shift your approach first and know how the tools work.</p>\n",
        "date_published": "2025-07-30T14:09:20+00:00",
        "url": "https://enumerator.dev/learn-ai-workflows-by-stealing-claude-files/",
        "tags": ["ai","llm"]
      },
      {
        "id": "https://enumerator.dev/taste/",
        "title": "Taste",
        "content_html": "<blockquote>\n<p>I can see really high-skill, high-taste shops like 37signals struggling to adopt [agentic coding] because their very good taste means they are repelled by the slop. Bigger companies and small startups/indies will have an easier time at it, out of necessity.\n&ndash; <a href=\"https://www.linkedin.com/feed/update/urn:li:activity:7350995561115774977/\">Nate Berkopec on LinkedIn</a></p>\n</blockquote>\n<blockquote>\n<p>With LLMs making leetcode and other whiteboard problems trivial, software hiring IMO should shift towards establishing taste, which LLMs absolutely do not have.</p>\n<p>&ldquo;What do you hate about ActiveRecord? What would you change about Rails if you could?&rdquo; Review this PR, etc.\n&ndash; <a href=\"https://www.linkedin.com/feed/update/urn:li:activity:7354194426715365376/\">Nate Berkopec on LinkedIn</a></p>\n</blockquote>\n<p>What is &ldquo;taste&rdquo;? Does your taste matter as a developer? Do your customers care about ActiveRecord? (Spoiler alert: they do not).</p>\n<p>I have been working in an exclusively agentic workflow for about six months now. I hardly write code. Does this mean I have poor taste?</p>\n<p>I remember in my early days in software development, I overheard two opinionated Senior Developers argue about white space and wondered why it mattered.</p>\n<h2 id=\"taste-does-not-matter-customers-matter\">Taste Does Not Matter, Customers Matter</h2>\n<p>What matters at the end of the day in any business is its customers. Do they like what you&rsquo;ve made? Will they tell people about it?</p>\n<p>You can&rsquo;t run a business on opinions about ActiveRecord, Rails, whitespace, or any of that. You run a business by selling a product that works well and makes people happy.</p>\n<h2 id=\"but-insert-thing-here-is-bad\">But <code>insert thing here</code> is BAD!?</h2>\n<p>It might be! What do we mean by &ldquo;bad&rdquo;? What is the impact on our ability to deliver a reliable product? How does it impact our customers?</p>\n<p>&ldquo;Taste&rdquo; is only important if it affects the customer. Here are the interview questions I&rsquo;d use in this new world:</p>\n<ul>\n<li>How does ActiveRecord affect the software development life cycle?</li>\n<li>What impact can the ORM have on the quality of your application?</li>\n<li>When do you choose to set your opinions aside and ship quickly vs weighing your opinions against real-world consequences?</li>\n<li>How do you measure the quality of good software?</li>\n</ul>\n<p>The answers to questions like this will inform technical decisions and will avoid banter about taste.</p>\n<p>I&rsquo;d much rather focus on building great things than getting mired in debates about ORMs.</p>\n<h2 id=\"conclusion\">Conclusion</h2>\n<p>I care about your views on building fast, reliable software that makes people happy. Let&rsquo;s leave the bikeshedding to others.</p>\n",
        "date_published": "2025-07-27T13:02:00+00:00",
        "url": "https://enumerator.dev/taste/",
        "tags": ["ai","llm","performance"]
      },
      {
        "id": "https://enumerator.dev/how-do-llm-suggested-edits-work-in-text-editors/",
        "title": "How Do LLM-Suggested Edits Work in Text Editors",
        "content_html": "<h2 id=\"llms-need-context-just-us\">LLMs Need Context, Just Us</h2>\n<p>Context. I need context to understand what you&rsquo;re talking about.</p>\n<p>Give me a one line Jira ticket and I&rsquo;ll spend the next half hour finding context and probably pestering you for more information. Once I have that, I&rsquo;ll probably spend the next half hour figuring out how this work fits into the project as a whole.</p>\n<p>Without context, I write bad code.</p>\n<p>LLMs are very much like us in this way. Ask an ambiguous question and you&rsquo;ll get an ambiguous answer. Or, if you&rsquo;re using OpenAI&rsquo;s deep research, you&rsquo;ll get a patiently worded question back asking for more information.</p>\n<p>In a <a href=\"/samuel-johnson-the-unexpected-grandfather-of-llms/\">previous post</a>, I quoted Samuel Johnson</p>\n<blockquote>\n<p>The greatest part of a writer&rsquo;s time is spent in reading, in order to write: a man will turn over half a library to make one book.</p>\n</blockquote>\n<p>This is true of LLMs, too. They just do the work much faster than we do. If you can give the LLM the right context, it will give you a better answer.</p>\n<h2 id=\"how-does-zed-give-the-llm-context\">How Does Zed Give the LLM Context?</h2>\n<p>I dug into this today because I wanted to know if I could use the same ideas to write a script to make bulk edits.</p>\n<p>Behind the scenes, Zed primes the LLM with information on how to respond. By default an LLM will respond with text. But for an editor to make suggested edits, it needs a predictable, parse-able, response.</p>\n<p>Zed uses the following prompt template to tell the LLM to respond with XML in a specific format. Then Zed takes that response and generates suggested edits with the response.</p>\n<p><a href=\"https://github.com/zed-industries/zed/blob/main/assets/prompts/suggest_edits.hbs\">zed/assets/prompts/suggest_edits.hbs at main · zed-industries/zed</a></p>\n<p>As you might know, you can also send a whole file in the chat. Which means that a single line like: <code>/file some_file.rb Please suggest performance improvements</code> will result in <code>suggest_edits.hbs</code>, <code>some_file.rb</code> and the text you typed getting sent to the LLM.</p>\n<p>To paraphrase Samuel Johnson, the greatest part of an LLMs time is spent in reading, in order to write: an LLM to turn over half a code base to write one line of code.</p>\n<p>I sure hope that you, too, spend the time to turn over half, or at lease a quarter, of the code base to understand the code the LLM is suggesting.</p>\n<p>Without context, we write bad code.</p>\n",
        "date_published": "2025-02-04T00:00:00+00:00",
        "url": "https://enumerator.dev/how-do-llm-suggested-edits-work-in-text-editors/",
        "tags": ["ai","llm"]
      },
      {
        "id": "https://enumerator.dev/samuel-johnson-the-unexpected-grandfather-of-llms/",
        "title": "Samuel Johnson, the Unexpected Grandfather of LLMs",
        "content_html": "<p>As many people have I&rsquo;ve been trying out a handful of LLMs to assist with coding. I&rsquo;ve found them very useful tackling mundane tasks that might otherwise take me a few minutes, or at times hours, to accomplish on my own</p>\n<p>This reminds me of a good corruption of a Samuel Johnson quote:</p>\n<blockquote>\n<p>The next best thing to knowing something is knowing where to find it.</p>\n</blockquote>\n<p>The real quote is:</p>\n<blockquote>\n<p>Knowledge is of two kinds. We know a subject ourselves, or we know where we can find information upon it. – <a href=\"https://www.samueljohnson.com/apocryph.html\">https://www.samueljohnson.com/apocryph.html</a></p>\n</blockquote>\n<p>Thank you to an LLM for uncovering this for me. To me, LLMs are the second kind of knowledge, and very useful for my day to day work. They let me focus on the big picture while taking care of the small details.</p>\n<p>Interestingly, the LLM I used also uncovered this quote:</p>\n<blockquote>\n<p>The greatest part of a writer&rsquo;s time is spent in reading, in order to write: a man will turn over half a library to make one book. <a href=\"https://www.samueljohnson.com/attentio.html\">https://www.samueljohnson.com/attentio.html</a></p>\n</blockquote>\n<p>It is as if Johnson knew the environmental impact of LLMs before computers even existed. An LLM undoubtedly turns over half a library to write one good line of code.</p>\n",
        "date_published": "2025-01-31T00:00:00+00:00",
        "url": "https://enumerator.dev/samuel-johnson-the-unexpected-grandfather-of-llms/",
        "tags": ["tools","ai","llm"]
      }
  ]
}
