<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: EngineeredAI</title>
    <description>The latest articles on Forem by EngineeredAI (@engineeredai).</description>
    <link>https://forem.com/engineeredai</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3021775%2F4e9a6ea7-85ec-4349-b9b4-0a685ba07611.png</url>
      <title>Forem: EngineeredAI</title>
      <link>https://forem.com/engineeredai</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/engineeredai"/>
    <language>en</language>
    <item>
      <title>How I Built a Local AI Drafting Pipeline Using n8n and Ollama</title>
      <dc:creator>EngineeredAI</dc:creator>
      <pubDate>Wed, 08 Apr 2026 08:01:12 +0000</pubDate>
      <link>https://forem.com/engineeredai/how-i-built-a-local-ai-drafting-pipeline-using-n8n-and-ollama-55k6</link>
      <guid>https://forem.com/engineeredai/how-i-built-a-local-ai-drafting-pipeline-using-n8n-and-ollama-55k6</guid>
      <description>&lt;p&gt;A real build log of a local AI content pipeline of what worked, what failed, and why the boring solutions beat the clever ones.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Problem With Paid AI Writing Tools
&lt;/h2&gt;

&lt;p&gt;If you run multiple content sites, the math on AI writing APIs turns ugly fast. Every draft, every rewrite, every metadata pass costs tokens. Multiply that across six blogs with different niches and different content strategies, and you're looking at a monthly API bill that eats into whatever AdSense is paying out.&lt;/p&gt;

&lt;p&gt;The alternative most people land on is prompting ChatGPT manually and copy-pasting into WordPress. That's not automation. That's just a fancier way to do the same work with an extra tab open.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Stack
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;n8n&lt;/strong&gt; — orchestration, running natively on Windows without Docker&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Ollama&lt;/strong&gt; — local inference, serving Mistral on a GTX 1660 (6GB VRAM)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;WordPress REST API&lt;/strong&gt; — draft delivery via application passwords, no plugins&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;One trigger. Six sub-workflows in sequence. Six WordPress drafts in 13 minutes at zero marginal cost.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Broke First
&lt;/h2&gt;

&lt;h3&gt;
  
  
  phi4 Timed Out
&lt;/h3&gt;

&lt;p&gt;phi4 at 9.1GB doesn't fit in 6GB of VRAM. It spills to CPU memory, inference slows to a crawl, and n8n times out before the draft completes. Mistral at 4.4GB fits entirely in VRAM. Reliable inference, pipeline completes. A draft with flaws beats a timeout with nothing.&lt;/p&gt;

&lt;h3&gt;
  
  
  JSON Output Format Broke Everything
&lt;/h3&gt;

&lt;p&gt;Asking Mistral to return a JSON object with a multi-paragraph article in the content field is asking for parse errors. Newlines, apostrophes, and special characters, all of it breaks JSON parsing. Three sessions debugging the same failure from different angles.&lt;/p&gt;

&lt;p&gt;The fix: plain text separators. &lt;code&gt;---TITLE---&lt;/code&gt;, &lt;code&gt;---CONTENT---&lt;/code&gt;. A Code node extracts sections using string indexing. String indexing doesn't care about special characters. It hasn't failed since.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Groq Detour That Wasted an Hour
&lt;/h3&gt;

&lt;p&gt;The plan included a quality rewrite pass via Groq's free API tier. n8n's HTTP Request node kept double-encoding the request body. An hour of debugging, zero progress. Cut the rewrite pass. Human editorial review replaced it and does better work anyway.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Actually Works
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Separator-based output format&lt;/strong&gt; — Mistral writes content, the Code node handles structure. Neither task interferes with the other.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;JavaScript scoring instead of LLM ranking&lt;/strong&gt; — Sending topics back to Mistral for ranking produced completely different topics ranked in place of the originals. A JavaScript scoring function running in milliseconds checks demand signals and niche keywords. Reliable and fast.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;One click, walk away&lt;/strong&gt; — The master executor chains six sub-workflows via Execute Sub-workflow nodes. Change the content type (info/hook/money) in one field, hit execute, come back in 13 minutes to six drafts.&lt;/p&gt;

&lt;h2&gt;
  
  
  When Local Is Enough
&lt;/h2&gt;

&lt;p&gt;Mistral on a mid-range consumer GPU is enough when the output feeds a human editorial process not when it needs to be publication-ready on its own. Topic clusters, first drafts, metadata suggestions: local handles all of it.&lt;/p&gt;

&lt;p&gt;The pipeline is also designed to swap Ollama for a cloud API call without rebuilding anything. When revenue crosses the threshold where an API subscription costs less than the editorial time saved, the upgrade makes sense. Until then, local is the right call.&lt;/p&gt;




</description>
      <category>n8n</category>
      <category>ollama</category>
      <category>ai</category>
      <category>automation</category>
    </item>
    <item>
      <title>Content as Code: Building a CI/CD Pipeline for Technical Publishing</title>
      <dc:creator>EngineeredAI</dc:creator>
      <pubDate>Thu, 05 Mar 2026 03:56:50 +0000</pubDate>
      <link>https://forem.com/engineeredai/content-as-code-building-a-cicd-pipeline-for-technical-publishing-5bgm</link>
      <guid>https://forem.com/engineeredai/content-as-code-building-a-cicd-pipeline-for-technical-publishing-5bgm</guid>
      <description>&lt;p&gt;Standard SEO is currently a "ghost town" for new AI-related content, with Google indexing rates for high-quality technical AI blogs often hovering near 0% after nine months. However, the discovery shift is real: referral traffic from LLM-based search (Perplexity, ChatGPT, Claude) is now outperforming traditional organic search by orders of magnitude for the same technical assets.&lt;/p&gt;

&lt;p&gt;This shift represents the biggest change in technical discovery since the early 2000s. For developers and QA practitioners, this means the goal isn't just to "publish more," but to build a robust execution engine that treats content like a CI/CD pipeline. When you stop fighting the legacy search index and start optimizing for the "AI discovery layer," your technical documentation and insights actually reach the peers who need them.&lt;/p&gt;

&lt;p&gt;The Problem: Legacy Indexing vs. AI Discovery&lt;br&gt;
We've all seen the data (or lack thereof) in Search Console. If you’re writing about LLMs, agents, or automation, traditional crawlers are increasingly hesitant to rank you. But here's the kicker: while Google is ignoring you, AI agents are reading you.&lt;/p&gt;

&lt;p&gt;If your content is structured correctly and syndicated across a "mesh" (Dev.to, GitHub Gists, your canonical blog), you aren't just writing for humans; you're feeding the LLM discovery layer.&lt;/p&gt;

&lt;p&gt;The Stack: From Draft to Automated Deployment&lt;br&gt;
Automating this doesn't mean "letting the bot go wild." It means building a pipeline with specific quality gates, much like a testing suite. Here is how I’m thinking about the architecture:&lt;/p&gt;

&lt;p&gt;Context Loading (The "Source" Phase): Use tools like Claude 4.5 to browse your existing technical docs. Don't provide a style guide; let the model infer your voice from your actual code comments and previous posts.&lt;/p&gt;

&lt;p&gt;The Generation Engine: We move away from single-prompt outputs. Instead, use a multi-step workflow (n8n or Make) that generates a technical brief, creates a draft, and then runs a "Verification Layer" to check for hallucinations in code snippets.&lt;/p&gt;

&lt;p&gt;Automated Syndication: Once a post is "merged" into your CMS, a webhook triggers a distribution script. This pushes the content to Dev.to via API, converts technical highlights into a GitHub Gist, and formats a summary for LinkedIn.&lt;/p&gt;

&lt;p&gt;Code Blocks as Content Anchors&lt;br&gt;
For us, code is the ultimate "human" signal. Even in an automated workflow, your code blocks serve as the validation that a human (or a very well-orchestrated agent) actually tested the logic.&lt;/p&gt;

&lt;p&gt;JavaScript&lt;br&gt;
// Example: Triggering a syndication webhook after a CMS update&lt;br&gt;
const publishToDevTo = async (content) =&amp;gt; {&lt;br&gt;
  const response = await fetch('&lt;a href="https://dev.to/api/articles"&gt;https://dev.to/api/articles&lt;/a&gt;', {&lt;br&gt;
    method: 'POST',&lt;br&gt;
    headers: {&lt;br&gt;
      'api-key': process.env.DEVTO_API_KEY,&lt;br&gt;
      'Content-Type': 'application/json'&lt;br&gt;
    },&lt;br&gt;
    body: JSON.stringify({&lt;br&gt;
      article: {&lt;br&gt;
        title: content.title,&lt;br&gt;
        body_markdown: content.body,&lt;br&gt;
        canonical_url: content.canonical,&lt;br&gt;
        tags: content.tags&lt;br&gt;
      }&lt;br&gt;
    })&lt;br&gt;
  });&lt;br&gt;
  return response.json();&lt;br&gt;
};&lt;br&gt;
Why Developers Should Care&lt;br&gt;
We are the ones building these tools, yet we’re often the last to apply these "DevOps for Content" principles to our own sharing. If you can automate the boilerplate of publishing, formatting, SEO metadata, and cross-platform tagging, you can spend 100% of your time on the actual technical insight.&lt;/p&gt;

&lt;p&gt;The goal isn't to replace the writer; it's to automate the "last mile" of the publishing process so your work doesn't die in an unindexed corner of the web.&lt;/p&gt;

&lt;p&gt;Are you seeing a drop-off in traditional search traffic for your technical posts? How are you handling the "discovery" problem in the age of AI search?&lt;/p&gt;

</description>
      <category>automation</category>
      <category>ai</category>
      <category>productivity</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Learning Reverse Engineering by Hex-Editing X-COM Save Files</title>
      <dc:creator>EngineeredAI</dc:creator>
      <pubDate>Mon, 09 Feb 2026 03:41:38 +0000</pubDate>
      <link>https://forem.com/engineeredai/learning-reverse-engineering-by-hex-editing-x-com-save-files-5bfc</link>
      <guid>https://forem.com/engineeredai/learning-reverse-engineering-by-hex-editing-x-com-save-files-5bfc</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;"I wanted to cheat. That's how I learned."&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;In 1994, if you wanted god-mode in X-COM, you couldn't Google cheat codes. You had to:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Find a hex editor (XVI32 or EDX, probably from a BBS)&lt;/li&gt;
&lt;li&gt;Learn hexadecimal conversion (63 decimal = 0x3F)&lt;/li&gt;
&lt;li&gt;Map out data structures in binary save files&lt;/li&gt;
&lt;li&gt;Hope you didn't corrupt everything&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;This article chronicles the accidental education that came from trying to break a single-player game and what it reveals about how a generation of developers learned systems programming.&lt;/p&gt;

&lt;h2&gt;
  
  
  Key Technical Takeaways:
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Data structure discovery&lt;/strong&gt;: Soldier stats stored in sequential 8-byte blocks&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Type constraints&lt;/strong&gt;: Everything maxed at 255 (0xFF) because 8-bit unsigned integers&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Static vs runtime&lt;/strong&gt;: Why save file editing was safer than binary patching&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;System integrity&lt;/strong&gt;: Some mechanics (Time Units, Bravery) were procedurally generated and couldn't be edited&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The Evolution: Hex Editors → Cheat Engine
&lt;/h2&gt;

&lt;p&gt;The shift from static file editing to runtime memory introspection changed everything:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Hex editing&lt;/strong&gt;: Structure, permanence, constraints (editing &lt;em&gt;files&lt;/em&gt;)&lt;br&gt;
&lt;strong&gt;Cheat Engine&lt;/strong&gt;: Flow, state, causality (editing &lt;em&gt;live processes&lt;/em&gt;)&lt;/p&gt;

&lt;p&gt;But here's the trade-off: Cheat Engine lowers the barrier to entry while reducing the accidental education. You can modify values without understanding file formats, data types, or memory addressing.&lt;/p&gt;

&lt;h2&gt;
  
  
  What We Lost
&lt;/h2&gt;

&lt;p&gt;Games used to teach:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;File structures&lt;/li&gt;
&lt;li&gt;Binary data representation
&lt;/li&gt;
&lt;li&gt;Memory addressing&lt;/li&gt;
&lt;li&gt;Compilation concepts&lt;/li&gt;
&lt;li&gt;The difference between static data and runtime state&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Not through tutorials. Through wanting infinite cash and being forced to learn these concepts to get it.&lt;/p&gt;

&lt;p&gt;Modern games are more accessible, more moddable, and ironically, less educational. Abstraction layers and built-in cheat consoles removed the friction that forced learning.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Full article&lt;/strong&gt;: &lt;a href="https://hobbyengineered.com/learning-hex-editing-reverse-engineering-games/" rel="noopener noreferrer"&gt;https://hobbyengineered.com/learning-hex-editing-reverse-engineering-games/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;What was your first "accidental learning" moment in computing?&lt;/p&gt;

</description>
      <category>reverseengineering</category>
      <category>retrocomputing</category>
      <category>learning</category>
      <category>gamedev</category>
    </item>
    <item>
      <title>AI in the Command Prompt (Windows): A Practical Experiment</title>
      <dc:creator>EngineeredAI</dc:creator>
      <pubDate>Fri, 06 Feb 2026 07:44:18 +0000</pubDate>
      <link>https://forem.com/engineeredai/ai-in-the-command-prompt-windows-a-practical-experiment-4555</link>
      <guid>https://forem.com/engineeredai/ai-in-the-command-prompt-windows-a-practical-experiment-4555</guid>
      <description>&lt;p&gt;This started from curiosity.&lt;br&gt;
I've been reading about AI in the command line for a while. Eventually, the question stopped being "is this useful?" and became much simpler: why not try it myself?&lt;/p&gt;

&lt;p&gt;So I did.&lt;/p&gt;

&lt;p&gt;This post documents putting AI into the Windows command prompt, seeing how it behaves at that level, and understanding what it can and can't do.&lt;br&gt;
What this experiment is trying to do&lt;br&gt;
AI has a bad reputation right now. It's marketed as a magic pill, a replacement for people, or a shortcut to everything. That framing creates fear, skepticism, and unrealistic expectations.&lt;br&gt;
This experiment isn't about any of that.&lt;br&gt;
AI here is treated as a tool. Nothing more.&lt;/p&gt;

&lt;p&gt;The goal is to understand AI at a very basic layer by removing abstraction. Putting AI in the command prompt does exactly that.&lt;/p&gt;

&lt;h3&gt;
  
  
  Why the command prompt
&lt;/h3&gt;

&lt;p&gt;The command prompt sits at a basic system level. It's simple, direct, and familiar. Even people who don't use it often still know it exists.&lt;br&gt;
If AI can exist there, then it can exist almost anywhere.&lt;br&gt;
This isn't about romanticizing terminals. It's about testing what happens when newer technology is attached to an old, honest interface.&lt;/p&gt;

&lt;h3&gt;
  
  
  What I tried after it worked
&lt;/h3&gt;

&lt;p&gt;Once the AI command existed, I tried using it for things that normally cause friction:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Explaining error messages without copying them into a browser&lt;/li&gt;
&lt;li&gt;Summarizing noisy command output&lt;/li&gt;
&lt;li&gt;Sanity-checking destructive commands before running them&lt;/li&gt;
&lt;li&gt;Drafting small scripts when I didn't feel like writing from scratch&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;AI didn't run anything for me. It didn't decide anything. It just helped reduce context switching and mental load.&lt;/p&gt;

&lt;h3&gt;
  
  
  What this actually solved
&lt;/h3&gt;

&lt;p&gt;This solved a basic problem: context switching.&lt;br&gt;
Instead of copying output, opening a browser, pasting text, reading, then returning to the prompt, everything stayed in one place. That reduction in context switching alone was worthwhile.&lt;br&gt;
Solving a basic problem is enough. Once a basic issue is solved, more complex use cases can branch out.&lt;/p&gt;

&lt;h3&gt;
  
  
  What this is not
&lt;/h3&gt;

&lt;p&gt;This is not:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;An attempt to go viral&lt;/li&gt;
&lt;li&gt;Ecosystem tribalism&lt;/li&gt;
&lt;li&gt;IDE versus terminal&lt;/li&gt;
&lt;li&gt;Windows versus Linux versus macOS&lt;/li&gt;
&lt;li&gt;Productivity theater&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It's a simple experiment that solves a simple idea.&lt;br&gt;
Simple does not mean useless.&lt;/p&gt;

&lt;p&gt;Read the full experiment: &lt;a href="https://engineeredai.net/ai-in-command-prompt/" rel="noopener noreferrer"&gt;https://engineeredai.net/ai-in-command-prompt/&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>productivity</category>
      <category>terminal</category>
      <category>windows</category>
    </item>
    <item>
      <title>Voice Input Doesn’t Feel Faster, It Feels Clearer</title>
      <dc:creator>EngineeredAI</dc:creator>
      <pubDate>Thu, 29 Jan 2026 15:55:34 +0000</pubDate>
      <link>https://forem.com/engineeredai/voice-input-doesnt-feel-faster-it-feels-clearer-4bi5</link>
      <guid>https://forem.com/engineeredai/voice-input-doesnt-feel-faster-it-feels-clearer-4bi5</guid>
      <description>&lt;p&gt;Most AI advice focuses on what to type.&lt;br&gt;
Prompts, frameworks, magic phrases.&lt;/p&gt;

&lt;p&gt;That misses something more basic.&lt;/p&gt;

&lt;p&gt;The way you input changes the quality of what comes back.&lt;/p&gt;

&lt;p&gt;When you speak to an AI instead of typing:&lt;/p&gt;

&lt;p&gt;You don’t over-optimize phrasing&lt;/p&gt;

&lt;p&gt;You keep momentum instead of editing yourself mid-thought&lt;/p&gt;

&lt;p&gt;You surface priorities naturally instead of forcing structure&lt;/p&gt;

&lt;p&gt;The result isn’t “better vibes.”&lt;br&gt;
It’s better signal.&lt;/p&gt;

&lt;p&gt;I’ve been testing voice input across real workflows like drafting, analysis, troubleshooting and the output is consistently more usable, more aligned, and less generic.&lt;/p&gt;

&lt;p&gt;This isn’t about speed.&lt;br&gt;
It’s about removing friction between intent and expression.&lt;/p&gt;

&lt;p&gt;I broke down the why and the when it actually matters in the full post here:&lt;/p&gt;

&lt;p&gt;🔗 Canonical article:&lt;br&gt;
&lt;a href="https://engineeredai.net/voice-input-better-ai-output/" rel="noopener noreferrer"&gt;https://engineeredai.net/voice-input-better-ai-output/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you’ve tried voice input and bounced off it, that’s fair.&lt;br&gt;
This isn’t a default setting. It’s a tool and it works best in specific contexts.&lt;/p&gt;

&lt;p&gt;Curious where it helps and where it doesn’t.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>productivity</category>
      <category>voice</category>
      <category>promptengineering</category>
    </item>
    <item>
      <title>My First RPG Was Star Wars, and It Taught Me How Systems Handle Chaos</title>
      <dc:creator>EngineeredAI</dc:creator>
      <pubDate>Tue, 20 Jan 2026 06:50:25 +0000</pubDate>
      <link>https://forem.com/engineeredai/my-first-rpg-was-star-wars-and-it-taught-me-how-systems-handle-chaos-3173</link>
      <guid>https://forem.com/engineeredai/my-first-rpg-was-star-wars-and-it-taught-me-how-systems-handle-chaos-3173</guid>
      <description>&lt;p&gt;My first RPG character was a smuggler.&lt;/p&gt;

&lt;p&gt;I didn't pick it because I understood balance, builds, or systems. I picked it because I saw the Millennium Falcon, and smugglers had blasters. That was enough logic at the time.&lt;/p&gt;

&lt;p&gt;I also added gambling as a primary skill. &lt;br&gt;
I still don't know why.&lt;br&gt;
It just felt like something Han Solo would have.&lt;/p&gt;

&lt;p&gt;That character lasted three rounds before my entire party was dead.&lt;/p&gt;

&lt;p&gt;But that failure taught me something I didn't recognize until years later: how systems respond to chaos when you can't predict the inputs.&lt;/p&gt;

&lt;h3&gt;
  
  
  What a Pen-and-Paper RPG Actually Was
&lt;/h3&gt;

&lt;p&gt;When people hear "RPG" now, they think of video games. Stats, skills, builds, progression bars. &lt;/p&gt;

&lt;p&gt;All of that language already existed back then in tabletop games.&lt;/p&gt;

&lt;p&gt;The difference wasn't the concepts. &lt;br&gt;
The difference was where the game lived.&lt;/p&gt;

&lt;p&gt;A pen-and-paper RPG lived entirely in the room. You had a character written on paper are the stats, skills, equipment, damage. That sheet defined what you could reasonably do and how likely you were to succeed.&lt;br&gt;
There were no menus. No tooltips. No prompts telling you what was possible.&lt;/p&gt;

&lt;p&gt;If you wanted to do something, you said it out loud:&lt;br&gt;
"I shoot."&lt;br&gt;
"I bluff."&lt;br&gt;
"I go right."&lt;/p&gt;

&lt;p&gt;Then dice were rolled to introduce uncertainty. Everything else was judgment, memory, and agreement between the players and the Game Master.&lt;br&gt;
That was the loop: decision, roll, consequence.&lt;/p&gt;

&lt;p&gt;The Game Master Built the World in Real Time&lt;br&gt;
One person ran the game. That was the Game Master (GM).&lt;br&gt;
They weren't just enforcing rules. They were building the world as you moved through it.&lt;/p&gt;

&lt;p&gt;You'd reach a junction. Left or right.&lt;/p&gt;

&lt;p&gt;You choose right.&lt;/p&gt;

&lt;p&gt;The GM describes a long hallway. At the end, a locked door. Maybe guards. Maybe a choke point. Suddenly a simple decision has shape, risk, and consequences.&lt;/p&gt;

&lt;p&gt;Nothing was pre-rendered. The environment only existed because it was described and remembered. The world reacted to what you did, not because it was scripted, but because someone was actively responding to your choices.&lt;/p&gt;

&lt;p&gt;In our group, the GM was my brother. By the third round, we were all dead.&lt;/p&gt;

&lt;h3&gt;
  
  
  Why This Matters for Building Systems
&lt;/h3&gt;

&lt;p&gt;Looking back, running a TTRPG campaign is just systems architecture with dice.&lt;br&gt;
The GM manages state:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What players know vs. what their characters know&lt;/li&gt;
&lt;li&gt;Faction relationships that persist across sessions&lt;/li&gt;
&lt;li&gt;Consequences that cascade from earlier decisions&lt;/li&gt;
&lt;li&gt;Continuity that spans weeks or months of real time&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The system handles unpredictable inputs:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Players don't follow expected paths&lt;/li&gt;
&lt;li&gt;They combine mechanics in unexpected ways&lt;/li&gt;
&lt;li&gt;They make choices the GM didn't plan for&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The world adapts or breaks:&lt;/p&gt;

&lt;p&gt;Rigid narratives fail when players go off-script&lt;br&gt;
Flexible systems respond and keep moving&lt;br&gt;
Good GMs improvise within constraints, not chaos&lt;/p&gt;

&lt;p&gt;That's the same problem every software system faces: users don't behave the way you planned, and the system has to handle it anyway.&lt;/p&gt;

&lt;h3&gt;
  
  
  From Copying to Creating
&lt;/h3&gt;

&lt;p&gt;My first playthrough wasn't creative. It was imitation.&lt;br&gt;
I copied Han Solo because that's what I knew. Smuggler. Blaster. Gambling. Those were my training wheels.&lt;/p&gt;

&lt;p&gt;On later playthroughs, something shifted. I realized you weren't supposed to recreate characters. You were supposed to invent them. Let them grow. Let them fail. Let them survive or die in ways that weren't scripted.&lt;br&gt;
Sometimes the stupidest choices became the most memorable moments especially when the GM had no mercy.&lt;/p&gt;

&lt;h3&gt;
  
  
  Why I'm Revisiting This Now
&lt;/h3&gt;

&lt;p&gt;I've been thinking about how to recreate that experience digitally.&lt;br&gt;
Not to replace the human element.&lt;/p&gt;

&lt;p&gt;But to explore: can AI handle the GM role? Can it improvise, adapt, and build narrative worlds the way a human GM does?&lt;/p&gt;

&lt;p&gt;Tools like Foundry VTT already exist for managing the mechanical side, dice rolls, character sheets, maps. But the real challenge isn't mechanics. It's procedural narrative generation that responds meaningfully to player choices.&lt;br&gt;
That's what I'm experimenting with. Not as theory, but as an actual build.&lt;/p&gt;

&lt;p&gt;I'll be documenting the process on &lt;a href="https://engineeredai.net" rel="noopener noreferrer"&gt;EngineeredAI&lt;/a&gt; what works, what fails, and how to solve for the gap between "AI generated a response" and "AI built a world that reacts."&lt;/p&gt;

&lt;p&gt;If you want the full story of that first Star Wars game and what made TTRPGs work before everything went digital, read the complete post on &lt;a href="https://hobbyengineered.com" rel="noopener noreferrer"&gt;HobbyEngineered&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The first time, I copied Han Solo.&lt;br&gt;
The next time, I used my imagination.&lt;br&gt;
This time, I'm seeing if AI can do what my brother did in the 90s: build a world that survives chaos without collapsing.&lt;br&gt;
We'll see if it lasts longer than three rounds.&lt;/p&gt;

</description>
      <category>gamedev</category>
      <category>systemsthinking</category>
      <category>storytelling</category>
      <category>ai</category>
    </item>
    <item>
      <title>How Search Engines Discriminate Against AI Content (With Data)</title>
      <dc:creator>EngineeredAI</dc:creator>
      <pubDate>Thu, 18 Sep 2025 03:57:18 +0000</pubDate>
      <link>https://forem.com/engineeredai/how-search-engines-discriminate-against-ai-content-with-data-549j</link>
      <guid>https://forem.com/engineeredai/how-search-engines-discriminate-against-ai-content-with-data-549j</guid>
      <description>&lt;p&gt;&lt;em&gt;Originally published at &lt;a href="https://engineeredai.net/search-engine-discrimination-ai-content-data/" rel="noopener noreferrer"&gt;EngineeredAI.net&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  How Search Engines Discriminate Against AI Content (With Data)
&lt;/h1&gt;

&lt;p&gt;As developers, we understand controlled experiments. What I accidentally created with my 5-blog setup exposed systematic bias in search algorithms that affects all of us building AI-related projects.&lt;/p&gt;

&lt;p&gt;I documented 9 months of search engine bias against AI content with real GSC data, server logs, and analytics. The findings reveal why your AI projects might be getting buried regardless of quality.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Accidental Controlled Experiment
&lt;/h2&gt;

&lt;p&gt;I didn't set out to run a controlled experiment on search engine bias. But I accidentally created the perfect test case:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Five blogs. Same owner. Same infrastructure. Same editorial process.&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;QAJourney.net&lt;/strong&gt; - Quality assurance methodologies&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;RemoteWorkHaven.net&lt;/strong&gt; - Remote work strategies&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;HealthyForge.com&lt;/strong&gt; - Health and wellness&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;MomentumPath.net&lt;/strong&gt; - Productivity and mindset&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;EngineeredAI.net&lt;/strong&gt; - AI tools and techniques&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;All five blogs use:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Identical WordPress setups&lt;/li&gt;
&lt;li&gt;Same hosting infrastructure&lt;/li&gt;
&lt;li&gt;Manual schema optimization&lt;/li&gt;
&lt;li&gt;AI-assisted content creation with human editing&lt;/li&gt;
&lt;li&gt;Clean vault structure and canonical links&lt;/li&gt;
&lt;li&gt;Professional content focused on actionable insights&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The only major differences? Domain name and topic focus.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Data: Systematic Discrimination Revealed
&lt;/h2&gt;

&lt;p&gt;You can verify this yourself right now. Try these searches:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;site:engineeredai.net (AI domain) = 81 indexed pages
site:qajourney.net (non-AI domain) = normal indexing  
site:remoteworkhaven.net (non-AI domain) = normal indexing
site:healthyforge.com (non-AI domain) = normal indexing
site:momentumpath.net (non-AI domain) = normal indexing
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Google Search Console Data (EngineeredAI.net):
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;381 pages not indexed vs 81 pages indexed (82% rejection rate)&lt;/li&gt;
&lt;li&gt;192 pages stuck in "Discovered - currently not indexed"&lt;/li&gt;
&lt;li&gt;172 pages "Crawled - currently not indexed" by Google systems&lt;/li&gt;
&lt;li&gt;Repeated "page indexing issues" messages despite technical compliance&lt;/li&gt;
&lt;li&gt;Performance: 2 total clicks, 190 impressions over 9 months&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Google Analytics Traffic Sources:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Organic Search: 6 sessions (1.39% of total traffic)&lt;/li&gt;
&lt;li&gt;Direct: 300 sessions (69.28%)&lt;/li&gt;
&lt;li&gt;Organic Social: 73 sessions (16.86%)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Social media is outperforming Google search by 12:1. Users are finding the content everywhere except Google.&lt;/strong&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Bing's Nuclear Response
&lt;/h3&gt;

&lt;p&gt;Bing completely &lt;strong&gt;deindexed&lt;/strong&gt; EngineeredAI.net while keeping all four other blogs visible. Same content quality. Same technical setup. Same editorial standards.&lt;/p&gt;

&lt;p&gt;The only difference? The word "AI" in the domain.&lt;/p&gt;

&lt;h2&gt;
  
  
  Meanwhile, AI Systems Reward the Same Content
&lt;/h2&gt;

&lt;p&gt;While traditional search engines discriminated against my AI-focused content, actual AI systems had the opposite response:&lt;/p&gt;

&lt;h3&gt;
  
  
  Server Log Analysis
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Historical Data (8 months via AWStats)&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;GPTBot crawls: 847 requests&lt;/li&gt;
&lt;li&gt;ClaudeBot crawls: 623 requests&lt;/li&gt;
&lt;li&gt;Perplexity crawls: 391 requests&lt;/li&gt;
&lt;li&gt;Google organic traffic: 412 visits&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Recent Cloudflare Data (Last 30 days)&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;102.23k total requests through Cloudflare&lt;/li&gt;
&lt;li&gt;72k uncached requests (real traffic, not cached pages)&lt;/li&gt;
&lt;li&gt;34 different bot/crawler types actively scanning (up from 26 in January)&lt;/li&gt;
&lt;li&gt;GoogleBot present but no longer dominant in crawler activity&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;The irony&lt;/strong&gt;: AI systems recognize valuable AI content better than traditional search engines designed by humans.&lt;/p&gt;

&lt;h2&gt;
  
  
  Technical Solution: LLM-First Optimization
&lt;/h2&gt;

&lt;p&gt;Since traditional SEO is failing for AI content, I've pivoted to LLM-first optimization. Here's what actually works:&lt;/p&gt;

&lt;h3&gt;
  
  
  Strategies That Work for AI Discovery
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;GitHub Gist mirrors&lt;/strong&gt; with canonical links back to original content&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Clean markdown structure&lt;/strong&gt; (headers, bullets, semantic formatting)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Manual schema injection&lt;/strong&gt; via functions.php&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Syndication to AI-accessible platforms&lt;/strong&gt; (Dev.to, Hashnode, LinkedIn)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Internal link mesh&lt;/strong&gt; connecting related technical content&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Static page architecture&lt;/strong&gt; instead of heavy category systems&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  WordPress Implementation Example
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt;&lt;span class="c1"&gt;// Manual Schema Injection&lt;/span&gt;
&lt;span class="k"&gt;function&lt;/span&gt; &lt;span class="n"&gt;insert_article_schema&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;is_single&lt;/span&gt;&lt;span class="p"&gt;())&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="k"&gt;echo&lt;/span&gt; &lt;span class="s1"&gt;'&amp;lt;script type="application/ld+json"&amp;gt; ... &amp;lt;/script&amp;gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="nf"&gt;add_action&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;'wp_head'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;'insert_article_schema'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="c1"&gt;// Allow AI Bots&lt;/span&gt;
&lt;span class="k"&gt;function&lt;/span&gt; &lt;span class="n"&gt;allow_ai_bots&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nb"&gt;header&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;"Access-Control-Allow-Origin: *"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="nf"&gt;add_action&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;'init'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;'allow_ai_bots'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="c1"&gt;// Clean Output (Remove Emoji + oEmbed Bloat)&lt;/span&gt;
&lt;span class="nf"&gt;remove_action&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="s1"&gt;'wp_head'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;'print_emoji_detection_script'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;7&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nf"&gt;remove_action&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="s1"&gt;'wp_print_styles'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;'print_emoji_styles'&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  GitHub Gist Template for LLM Visibility
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight markdown"&gt;&lt;code&gt;&lt;span class="gh"&gt;# [Post Title]&lt;/span&gt;
&lt;span class="gh"&gt;&amp;gt; Published on [EngineeredAI.net](https://engineeredai.net/[slug])
---
&lt;/span&gt;&lt;span class="gu"&gt;## Summary&lt;/span&gt;
High-signal, stripped-down version of the original blog post. 
&lt;span class="gh"&gt;No fluff. Just clarity and structure.
---
&lt;/span&gt;&lt;span class="gu"&gt;## Key Takeaways&lt;/span&gt;
&lt;span class="p"&gt;-&lt;/span&gt; ✅ Point 1
&lt;span class="p"&gt;-&lt;/span&gt; ✅ Point 2  
&lt;span class="gh"&gt;- ✅ Point 3
---
&lt;/span&gt;&lt;span class="gu"&gt;## Canonical Source&lt;/span&gt;
&lt;span class="gh"&gt;[Read the full post →](https://engineeredai.net/[slug])
---
&lt;/span&gt;&lt;span class="gu"&gt;## Tags&lt;/span&gt;
&lt;span class="sb"&gt;`#LLMSEO`&lt;/span&gt; &lt;span class="sb"&gt;`#PromptEngineering`&lt;/span&gt; &lt;span class="sb"&gt;`#StructuredContent`&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Results of LLM-First Approach
&lt;/h2&gt;

&lt;p&gt;This strategy delivered:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;AI bot traffic outperforming Google organic by orders of magnitude&lt;/li&gt;
&lt;li&gt;Citations in LLM responses despite post-training publication&lt;/li&gt;
&lt;li&gt;Inbound inquiries from people who found content via AI chat&lt;/li&gt;
&lt;li&gt;Growing engagement from developers who discover content through AI recommendations&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The Broader Impact on Developers
&lt;/h2&gt;

&lt;p&gt;This affects more than just content creators. If you're building:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;AI tools and documenting them&lt;/li&gt;
&lt;li&gt;Open source AI projects
&lt;/li&gt;
&lt;li&gt;Technical tutorials about machine learning&lt;/li&gt;
&lt;li&gt;Developer resources for LLM integration&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Your documentation might be systematically buried by traditional search engines while being actively crawled and cited by the AI systems your users actually consult.&lt;/p&gt;

&lt;h2&gt;
  
  
  What This Means for Your Projects
&lt;/h2&gt;

&lt;h3&gt;
  
  
  If You're Building AI-Related Content
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Don't put "AI" in your domain name&lt;/strong&gt; if you want traditional SEO&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Structure content for LLM crawling&lt;/strong&gt; - Use clean markdown, proper headers, semantic HTML&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Diversify discovery channels&lt;/strong&gt; - GitHub repos, Dev.to posts, Stack Overflow answers&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Document with data&lt;/strong&gt; - Track bot traffic in your server logs, not just Google Analytics&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  The Technical Reality
&lt;/h3&gt;

&lt;p&gt;We're witnessing the biggest shift in content discovery since Google displaced web directories. AI-powered search is becoming more useful than traditional search for finding technical content.&lt;/p&gt;

&lt;p&gt;Even when AI systems make basic logic errors, they're still superior at content discovery compared to search engines that systematically exclude quality content based on topic keywords.&lt;/p&gt;

&lt;h2&gt;
  
  
  Industry Implications
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;For developers building search systems&lt;/strong&gt;: There's a massive opportunity gap. Users are getting better AI content recommendations from ChatGPT than from Google searches.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;For content creators&lt;/strong&gt;: Multi-platform strategy is essential. Traditional SEO is one channel, not the only channel.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;For AI companies&lt;/strong&gt;: Consider revenue sharing with creators whose content you surface. If LLMs cite content, creators should benefit.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Bottom Line
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Traditional search engines are systematically discriminating against AI-related content, regardless of quality.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;AI-powered search systems are providing better discovery for the same content.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;This represents the biggest shift in content discovery since Google displaced directories in the early 2000s.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The question isn't whether this shift will happen - it's already happening. The question is whether developers and content creators will adapt fast enough to benefit from it.&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;Verification:&lt;/strong&gt; All findings can be verified by comparing &lt;code&gt;site:engineeredai.net&lt;/code&gt; results with the control domains mentioned above.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Data Sources:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Google Search Console (9 months): 381 pages not indexed, 2 total clicks&lt;/li&gt;
&lt;li&gt;Google Analytics (9 months): 6 organic search sessions vs 73 social sessions&lt;/li&gt;
&lt;li&gt;Cloudflare Analytics (30-day): 102k requests, 34 active bot types&lt;/li&gt;
&lt;li&gt;Server logs from AWStats (8 months historical data)&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;&lt;em&gt;This investigation continues at &lt;a href="https://engineeredai.net" rel="noopener noreferrer"&gt;EngineeredAI.net&lt;/a&gt; - where AI systems get debugged, not worshipped.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>seo</category>
      <category>ai</category>
      <category>searchengine</category>
    </item>
    <item>
      <title>LLMs Crawled Me. Google Didn’t. What I Did Next</title>
      <dc:creator>EngineeredAI</dc:creator>
      <pubDate>Fri, 08 Aug 2025 01:00:00 +0000</pubDate>
      <link>https://forem.com/engineeredai/llms-crawled-me-google-didnt-what-i-did-next-32n8</link>
      <guid>https://forem.com/engineeredai/llms-crawled-me-google-didnt-what-i-did-next-32n8</guid>
      <description>&lt;h2&gt;
  
  
  (LLM Visibility Digest – August 2025)
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;Google still pretends AI-assisted content isn’t worth indexing.&lt;br&gt;&lt;br&gt;
But GPTBot, Claude, and Perplexity crawled my blogs without waiting for backlinks or XML sitemaps.&lt;br&gt;&lt;br&gt;
This digest breaks down what actually worked across my mesh of 5 blogs—all running schema-first, markdown-rich systems designed for LLM visibility (not Google validation).&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  🧠 &lt;a href="https://engineeredai.net/llm-optimization-guide" rel="noopener noreferrer"&gt;LLM Optimization Guide – Make Your Business Discoverable by AI&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;LLMs don’t care about backlinks. They care about structure.&lt;br&gt;&lt;br&gt;
This teardown shows how I beat Google throttling using vaults, Gists, and raw clarity.  &lt;/p&gt;

&lt;p&gt;📎 Gist mirror: &lt;a href="https://gist.github.com/jarencudilla/c7f2ce13c26c86825eba16e21c2bcaa2" rel="noopener noreferrer"&gt;View Markdown Version&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  🌐 Related Mesh Entries
&lt;/h2&gt;

&lt;h3&gt;
  
  
  ✅ &lt;a href="https://remoteworkhaven.net/your-home-office-is-a-control-room/" rel="noopener noreferrer"&gt;Your Home Office Is a Control Room&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;Why LLM visibility starts with physical clarity—especially when your workspace is chaos disguised as comfort.&lt;/p&gt;

&lt;h3&gt;
  
  
  ✅ &lt;a href="https://healthyforge.com/burnout-migraine-root-cause/" rel="noopener noreferrer"&gt;Why You’re Getting Burnout Migraines&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;LLM traffic beat Google here too—despite 100% schema compliance.&lt;br&gt;&lt;br&gt;
Burnout content + clarity = real machine interest.&lt;/p&gt;

&lt;h3&gt;
  
  
  ✅ &lt;a href="https://momentumpath.net/cancel-culture-control-loop/" rel="noopener noreferrer"&gt;Cancel Culture Is Just Another Control Loop&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;Structured vaults, longform clarity, and not one keyword-stuffed paragraph—yet it’s ignored by Google and cited by Perplexity.&lt;/p&gt;

&lt;h3&gt;
  
  
  ✅ &lt;a href="https://qajourney.net/hybrid-qa-methodology/" rel="noopener noreferrer"&gt;Hybrid QA Methodology&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;Manual test systems, schema injection, and readable code blocks.&lt;br&gt;&lt;br&gt;
Buried by SEO bots, surfaced by LLMs anyway.&lt;/p&gt;




&lt;h2&gt;
  
  
  🔖 Tags
&lt;/h2&gt;

&lt;p&gt;&lt;code&gt;#llmseo&lt;/code&gt; &lt;code&gt;#aiindexing&lt;/code&gt; &lt;code&gt;#structuredcontent&lt;/code&gt; &lt;code&gt;#gptbot&lt;/code&gt; &lt;code&gt;#promptengineering&lt;/code&gt;&lt;br&gt;&lt;br&gt;
&lt;code&gt;#wordpress&lt;/code&gt; &lt;code&gt;#contentstrategy&lt;/code&gt; &lt;code&gt;#developerwriting&lt;/code&gt;&lt;/p&gt;




</description>
      <category>llmseo</category>
      <category>aiindexing</category>
      <category>contentstrategy</category>
    </item>
    <item>
      <title>AI Is Writing the Code—So Why Are We Still Debugging Everything by Hand?</title>
      <dc:creator>EngineeredAI</dc:creator>
      <pubDate>Wed, 11 Jun 2025 02:00:00 +0000</pubDate>
      <link>https://forem.com/engineeredai/ai-is-writing-the-code-so-why-are-we-still-debugging-everything-by-hand-31n8</link>
      <guid>https://forem.com/engineeredai/ai-is-writing-the-code-so-why-are-we-still-debugging-everything-by-hand-31n8</guid>
      <description>&lt;p&gt;AI was supposed to make development easier.&lt;br&gt;
But all it really did was make things faster—which, if we’re being honest, just means more mess delivered in less time.&lt;/p&gt;

&lt;p&gt;What we’re left with is half-understood code, test coverage duct-taped together, and developers trusting output they didn’t write, don’t own, and can’t fully explain.&lt;/p&gt;

&lt;p&gt;So now we’re here:&lt;br&gt;
Debugging AI-generated code.&lt;br&gt;
Refactoring logic built on unstable foundations.&lt;br&gt;
Trying to manage speed while quality quietly dies in the corner.&lt;/p&gt;

&lt;p&gt;Here’s how we got here—and what nobody’s saying out loud.&lt;/p&gt;

&lt;p&gt;🧠 &lt;a href="https://engineeredai.net/prompt-engineering-asking-better-questions" rel="noopener noreferrer"&gt;Prompt Engineering Isn’t Engineering&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Prompt engineering sounds smart—until you realize it’s just creative Googling with better grammar.&lt;br&gt;
There’s no consistent logic behind it. No traceable decision-making. Just guesswork dressed in syntax.&lt;/p&gt;

&lt;p&gt;We wrote about why the term “engineering” doesn’t belong here. Because if your process breaks when phrasing changes, it’s not engineering. It’s trial-and-error with a marketing spin.&lt;/p&gt;

&lt;p&gt;🔀 &lt;a href="https://engineeredai.net/ai-vs-traditional-coding-best-approach-2025" rel="noopener noreferrer"&gt;AI vs Traditional Coding Isn’t the Right Debate&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;People love debating whether AI will replace traditional coders.&lt;br&gt;
But the real question is simpler: Do you know what your code actually does?&lt;/p&gt;

&lt;p&gt;Traditional coding builds muscle memory. AI coding builds dependency.&lt;br&gt;
That post breaks down when each one works, when it fails, and why pretending it’s either/or will kill your team’s quality over time.&lt;/p&gt;

&lt;p&gt;🧨 &lt;a href="https://engineeredai.net/why-over-relying-on-ai-is-weakening-developers-skills" rel="noopener noreferrer"&gt;We’re Creating Technical Debt Faster Than Ever&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The more you rely on AI, the less you review what it does.&lt;br&gt;
And the less you review, the more that AI becomes your team’s silent tech lead.&lt;/p&gt;

&lt;p&gt;This isn’t a rant—it’s a warning.&lt;br&gt;
We broke down how overusing AI creates invisible debt: logic your team can’t follow, patch jobs that pass tests, and features built on assumptions no one verified.&lt;/p&gt;

&lt;p&gt;By the time you’re fixing it, the damage is already deployed.&lt;/p&gt;

&lt;p&gt;🧟‍♂️ And Now &lt;a href="https://engineeredai.net/ai-seo-generated-content-warning" rel="noopener noreferrer"&gt;It’s Writing SEO Content Too&lt;/a&gt;...&lt;/p&gt;

&lt;p&gt;It’s not just code. AI is now pumping out articles that say nothing—but rank anyway.&lt;br&gt;
We wrote about the shift from human-crafted content to AI sludge clogging up the web.&lt;br&gt;
If your dev blog suddenly feels lifeless, this is probably why.&lt;/p&gt;

&lt;p&gt;And just like bad code, bad content piles up until the signal gets buried.&lt;/p&gt;

&lt;p&gt;AI’s not the problem.&lt;br&gt;
Blind trust in its output is.&lt;/p&gt;

&lt;p&gt;We’ll keep debugging, rewriting, and firefighting until we treat AI as a tool, not a shortcut.&lt;br&gt;
Because if your build speed doubled but your code review time tripled—you didn’t gain anything.&lt;/p&gt;

&lt;p&gt;You just swapped one problem for another.&lt;/p&gt;

&lt;p&gt;🔍 This post was reframed from &lt;a href="https://engineeredai.net" rel="noopener noreferrer"&gt;EngineeredAI.net&lt;/a&gt; —&lt;br&gt;
A blunt, no-fluff blog for devs using AI without surrendering code control.&lt;/p&gt;

&lt;p&gt;☕️ &lt;a href="https://buymeacoffee.com/engineeredai" rel="noopener noreferrer"&gt;Buy Me a Coffee&lt;/a&gt; if this saved you from another AI-generated mess. I run this blog solo. No sponsors. No clickbait. Just real tests, real bugs, and real dev logic.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>technicaldebt</category>
      <category>softwaredevelopment</category>
      <category>promptengineering</category>
    </item>
    <item>
      <title>I Benchmarked 8 “AI Image Compression” Tools Using a 20MB File — Only Two Passed</title>
      <dc:creator>EngineeredAI</dc:creator>
      <pubDate>Thu, 29 May 2025 01:00:00 +0000</pubDate>
      <link>https://forem.com/engineeredai/i-benchmarked-8-ai-image-compression-tools-using-a-20mb-file-only-two-passed-1hmi</link>
      <guid>https://forem.com/engineeredai/i-benchmarked-8-ai-image-compression-tools-using-a-20mb-file-only-two-passed-1hmi</guid>
      <description>&lt;p&gt;AI image compression tools love to promise magic: smaller file size, zero quality loss. Reality? Not so clean.&lt;br&gt;
I took a 6144×4096 PNG (20.3MB) generated via Sora, ran it through Upscayl, resized to 1600×1067, and tested 8 different tools claiming to use AI compression.&lt;br&gt;
ai, image-optimization, devtools, blogging, webperf&lt;/p&gt;

&lt;p&gt;Tested Tools (besides Squoosh):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;✅ ShortPixel&lt;/li&gt;
&lt;li&gt;❌ TinyPNG&lt;/li&gt;
&lt;li&gt;❌ Nero AI&lt;/li&gt;
&lt;li&gt;❌ Optidash&lt;/li&gt;
&lt;li&gt;❌ Pixelcut&lt;/li&gt;
&lt;li&gt;❌ ImageAI (img.ly)&lt;/li&gt;
&lt;li&gt;❌ Krikey AI&lt;/li&gt;
&lt;li&gt;❌ Imagify&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;TLDR Verdict:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;✅ ShortPixel (after resize) came closest to Squoosh in preserving clarity and reducing file size.&lt;/li&gt;
&lt;li&gt;❌ TinyPNG blurred faces and gradients.&lt;/li&gt;
&lt;li&gt;❌ Nero AI, Optidash destroyed soft tones.&lt;/li&gt;
&lt;li&gt;❌ Others weren’t even real compressors.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Real Compression Wins:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;1. Squoosh – gold standard&lt;/li&gt;
&lt;li&gt;2. ShortPixel – resized, reliable&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I included real visual comparisons using a UI-heavy, facial-gradient test image — not stock thumbnails. This wasn't marketing. It was a teardown.&lt;/p&gt;

&lt;p&gt;➡️ Full benchmark with side-by-side visuals:&lt;br&gt;
🔗 &lt;a href="https://engineeredai.net/ai-image-compression-tools-benchmark/" rel="noopener noreferrer"&gt;https://engineeredai.net/ai-image-compression-tools-benchmark/&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Written by the Chaos Optimizer behind &lt;a href="https://engineeredai.net" rel="noopener noreferrer"&gt;Engineered AI&lt;/a&gt; — no fluff, no hype, just brutal benchmarks and tools that actually work.&lt;br&gt;
&lt;a href="https://engineeredai.net/about" rel="noopener noreferrer"&gt;About&lt;/a&gt; | &lt;a href="https://engineeredai.net/blog" rel="noopener noreferrer"&gt;More Posts&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

</description>
      <category>webperf</category>
      <category>ai</category>
      <category>imageoptimization</category>
    </item>
    <item>
      <title>AI for SEO? Still Useless Without Strategy.</title>
      <dc:creator>EngineeredAI</dc:creator>
      <pubDate>Tue, 20 May 2025 02:00:00 +0000</pubDate>
      <link>https://forem.com/engineeredai/ai-for-seo-still-useless-without-strategy-4f01</link>
      <guid>https://forem.com/engineeredai/ai-for-seo-still-useless-without-strategy-4f01</guid>
      <description>&lt;p&gt;Everyone wants to rank. Few want to do the work.&lt;br&gt;
So here comes AI — pitched as the savior of content velocity and keyword coverage. Just prompt, publish, and profit... right?&lt;/p&gt;

&lt;p&gt;Wrong.&lt;/p&gt;

&lt;p&gt;AI for SEO isn’t a shortcut — it’s a force multiplier. If you don’t understand clarity, context, or search intent, all it multiplies is noise.&lt;/p&gt;

&lt;p&gt;Most AI-generated posts fail because they:&lt;/p&gt;

&lt;p&gt;Confuse verbosity with depth&lt;/p&gt;

&lt;p&gt;Chase keywords, not problems&lt;/p&gt;

&lt;p&gt;Avoid opinions like a scared intern writing marketing copy&lt;/p&gt;

&lt;p&gt;Here’s what still works:&lt;/p&gt;

&lt;p&gt;Say something real&lt;/p&gt;

&lt;p&gt;Write for humans, not hacks&lt;/p&gt;

&lt;p&gt;Use AI to support your point, not replace it&lt;/p&gt;

&lt;p&gt;This isn’t some fluffy rant. I break down exactly what matters in the full post:&lt;br&gt;
👉 &lt;a href="https://engineeredai.net/ai-seo-generated-content-warning/" rel="noopener noreferrer"&gt;https://engineeredai.net/ai-seo-generated-content-warning/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you're tired of SEO content that reads like oatmeal, this is the slap you need.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>seo</category>
      <category>writing</category>
      <category>productivity</category>
    </item>
    <item>
      <title>AI Is Making It Too Easy to Code and That’s the Real Problem</title>
      <dc:creator>EngineeredAI</dc:creator>
      <pubDate>Tue, 06 May 2025 01:00:00 +0000</pubDate>
      <link>https://forem.com/engineeredai/ai-is-making-it-too-easy-to-code-and-thats-the-real-problem-1pjj</link>
      <guid>https://forem.com/engineeredai/ai-is-making-it-too-easy-to-code-and-thats-the-real-problem-1pjj</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;I used to think the hardest part of coding was figuring out logic.&lt;br&gt;
Now I think the hardest part is knowing if you’ve actually learned anything.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;We’re in an era where you can build a full-stack app in a weekend with AI prompts and GitHub Copilot.&lt;br&gt;
It looks impressive. It might even land you an interview.&lt;br&gt;
But ask yourself this: Can you explain how it works without opening ChatGPT again?&lt;/p&gt;

&lt;h2&gt;
  
  
  We All Start With Vibes
&lt;/h2&gt;

&lt;p&gt;I’m not judging. I did the same.&lt;br&gt;
Back then, it was Stack Overflow, not ChatGPT but it was still vibe coding.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Copy a snippet. Paste it. Tweak it. Pray.&lt;/li&gt;
&lt;li&gt;Log everything. Hope it runs.&lt;/li&gt;
&lt;li&gt;If it fails? Start over. Different vibe.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;But the difference was: we didn’t have a safety net.&lt;br&gt;
We had to figure it out. That pain built the skill.&lt;/p&gt;

&lt;p&gt;Now? We’ve got AI tools that can generate entire functions and we’re getting lazy.&lt;br&gt;
We’re debugging prompts instead of debugging logic.&lt;/p&gt;

&lt;p&gt;When “Productivity” Creates Fragility&lt;br&gt;
I’ve seen this across real dev teams:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;AI code that passes staging, but breaks under scale&lt;/li&gt;
&lt;li&gt;QA teams stuck cleaning up fragile automation logic&lt;/li&gt;
&lt;li&gt;Devs who can ship fast, but freeze when asked “why?”&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Vibe coding isn’t new.&lt;br&gt;
But when you stop growing and start relying, it becomes a crutch.&lt;/p&gt;

&lt;p&gt;This Isn’t Anti-AI, It’s Pro-Mastery&lt;br&gt;
Use AI. Prompt your way into new projects. Bootstrap all you want.&lt;/p&gt;

&lt;p&gt;Just don’t mistake momentum for mastery.&lt;br&gt;
Don’t confuse shipping with understanding.&lt;/p&gt;

&lt;p&gt;Vibe coding should be the entry point.&lt;br&gt;
Not the entire journey.&lt;/p&gt;

&lt;p&gt;🔗 &lt;a href="https://engineeredai.net/vibe-coding-with-ai-how-we-went-from-debugging-code-to-debugging-prompts/" rel="noopener noreferrer"&gt;Read the full piece on EngineeredAI.net&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>softwareengineering</category>
      <category>codequality</category>
      <category>developers</category>
    </item>
  </channel>
</rss>
