<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Handcrafting Codes</title><description>An ongoing journal on software engineering, Salesforce, AI, and AI in business.</description><link>https://handcraftingcodes.com/</link><language>en-us</language><item><title>AEO Isn&apos;t SEO&apos;s Sequel. It&apos;s a Different Game on the Same Field</title><link>https://handcraftingcodes.com/essays/aeo-isnt-seos-sequel-its-a-different-game-on-the-same-field/</link><guid isPermaLink="true">https://handcraftingcodes.com/essays/aeo-isnt-seos-sequel-its-a-different-game-on-the-same-field/</guid><description>AEO (Answer Engine Optimization) and SEO (Search Engine Optimization) are two sides of the same coin</description><pubDate>Thu, 02 Jul 2026 00:00:00 GMT</pubDate><category>AI</category></item><item><title>AI Does Not Remember.</title><link>https://handcraftingcodes.com/essays/ai-does-not-remember/</link><guid isPermaLink="true">https://handcraftingcodes.com/essays/ai-does-not-remember/</guid><description>One of the most persistent misunderstandings about modern AI systems is the idea that they remember previous conversations. They don&apos;t!</description><pubDate>Thu, 02 Jul 2026 00:00:00 GMT</pubDate><category>AI</category></item><item><title>AI Speeds Up Salesforce Delivery. Your Team Makes It Sustainable.</title><link>https://handcraftingcodes.com/essays/ai-speeds-up-salesforce-delivery-your-team-makes-it-sustainable/</link><guid isPermaLink="true">https://handcraftingcodes.com/essays/ai-speeds-up-salesforce-delivery-your-team-makes-it-sustainable/</guid><description>I was recently studying Salesforce Revenue Cloud setup to see exactly how much AI could accelerate the build</description><pubDate>Thu, 02 Jul 2026 00:00:00 GMT</pubDate><category>AI</category></item><item><title>Finding anything in a git repo: working tree, commits, and history</title><link>https://handcraftingcodes.com/essays/ai-wont-replace-your-architects/</link><guid isPermaLink="true">https://handcraftingcodes.com/essays/ai-wont-replace-your-architects/</guid><description>Grep finds a string in your working tree</description><pubDate>Thu, 02 Jul 2026 00:00:00 GMT</pubDate><category>Engineering</category></item><item><title>Debugging Coveo UA: when the dashboard JSON lies to you</title><link>https://handcraftingcodes.com/essays/debugging-coveo-ua-when-the-dashboard-json-lies-to-you/</link><guid isPermaLink="true">https://handcraftingcodes.com/essays/debugging-coveo-ua-when-the-dashboard-json-lies-to-you/</guid><description>I spent a lot of time trying to figure out why the Coveo Usage Analytics API was not working right.</description><pubDate>Thu, 02 Jul 2026 00:00:00 GMT</pubDate><category>Engineering</category></item><item><title>The git aliases worth stealing</title><link>https://handcraftingcodes.com/essays/designing-idempotent-integrations/</link><guid isPermaLink="true">https://handcraftingcodes.com/essays/designing-idempotent-integrations/</guid><description>My `[alias]` block has grown to a few hundred lines over the years, and most of it is junk I wrote once and never used again.</description><pubDate>Thu, 02 Jul 2026 00:00:00 GMT</pubDate><category>Engineering</category></item><item><title>git clean: removing untracked files without nuking the wrong ones</title><link>https://handcraftingcodes.com/essays/git-clean-removing-untracked-files-without-nuking-the-wrong-ones/</link><guid isPermaLink="true">https://handcraftingcodes.com/essays/git-clean-removing-untracked-files-without-nuking-the-wrong-ones/</guid><description>`git clean` deletes untracked files from your working tree, and unlike almost everything else in git, what it removes is gone.</description><pubDate>Thu, 02 Jul 2026 00:00:00 GMT</pubDate><category>Engineering</category></item><item><title>How to Actually Write for AEO: A Technical Guide to Content That Gets Cited</title><link>https://handcraftingcodes.com/essays/how-to-actually-write-for-aeo-a-technical-guide-to-content-that-gets-cited/</link><guid isPermaLink="true">https://handcraftingcodes.com/essays/how-to-actually-write-for-aeo-a-technical-guide-to-content-that-gets-cited/</guid><description>Not another &quot;add an FAQ section&quot; checklist. This is about how it works</description><pubDate>Thu, 02 Jul 2026 00:00:00 GMT</pubDate><category>AI</category></item><item><title>Listing the files in a commit, and the question you&apos;re asking</title><link>https://handcraftingcodes.com/essays/listing-the-files-in-a-commit-and-the-question-youre-asking/</link><guid isPermaLink="true">https://handcraftingcodes.com/essays/listing-the-files-in-a-commit-and-the-question-youre-asking/</guid><description>&quot;List the files in a commit&quot; sounds like one question.</description><pubDate>Thu, 02 Jul 2026 00:00:00 GMT</pubDate><category>Engineering</category></item><item><title>LLMs, RAG, Vector Databases. What are they?</title><link>https://handcraftingcodes.com/essays/llms-rag-vector-databases-what-are-they/</link><guid isPermaLink="true">https://handcraftingcodes.com/essays/llms-rag-vector-databases-what-are-they/</guid><description>I use AI every day. It has genuinely changed how I work: code, emails, reports, mockups, data analysis, and documentation.</description><pubDate>Thu, 02 Jul 2026 00:00:00 GMT</pubDate><category>AI</category></item><item><title>Two git errors on Windows that look alike and aren&apos;t</title><link>https://handcraftingcodes.com/essays/reading-code-is-the-job/</link><guid isPermaLink="true">https://handcraftingcodes.com/essays/reading-code-is-the-job/</guid><description>One says the filename is too long. The other says the path is invalid.</description><pubDate>Thu, 02 Jul 2026 00:00:00 GMT</pubDate><category>Engineering</category></item><item><title>Working with multiple remotes</title><link>https://handcraftingcodes.com/essays/salesforce-flows-are-eating-your-apex/</link><guid isPermaLink="true">https://handcraftingcodes.com/essays/salesforce-flows-are-eating-your-apex/</guid><description>A fresh clone has one remote called `origin`, but you have more...</description><pubDate>Thu, 02 Jul 2026 00:00:00 GMT</pubDate><category>Engineering</category></item><item><title>The most important sales conversation now happens without you</title><link>https://handcraftingcodes.com/essays/testing/</link><guid isPermaLink="true">https://handcraftingcodes.com/essays/testing/</guid><pubDate>Thu, 02 Jul 2026 00:00:00 GMT</pubDate><category>AI</category></item><item><title>Demystifying git rebase</title><link>https://handcraftingcodes.com/essays/testing-3/</link><guid isPermaLink="true">https://handcraftingcodes.com/essays/testing-3/</guid><description>Rebase scares people because the usual one-line explanation</description><pubDate>Thu, 02 Jul 2026 00:00:00 GMT</pubDate><category>Engineering</category></item><item><title>The AI generation gap is real. It&apos;s just pointing the wrong direction.</title><link>https://handcraftingcodes.com/essays/the-ai-generation-gap-is-real-its-just-pointing-the-wrong-direction/</link><guid isPermaLink="true">https://handcraftingcodes.com/essays/the-ai-generation-gap-is-real-its-just-pointing-the-wrong-direction/</guid><description>That was the whole prompt. Eight words, no context...</description><pubDate>Thu, 02 Jul 2026 00:00:00 GMT</pubDate><category>AI</category></item><item><title>The Difference Between Answers and Understanding</title><link>https://handcraftingcodes.com/essays/the-difference-between-answers-and-understanding/</link><guid isPermaLink="true">https://handcraftingcodes.com/essays/the-difference-between-answers-and-understanding/</guid><description>Fixing something is not the same as understanding it.</description><pubDate>Thu, 02 Jul 2026 00:00:00 GMT</pubDate><category>AI</category></item><item><title>The Most Dangerous Thing About AI Is How Right It Sounds</title><link>https://handcraftingcodes.com/essays/the-most-dangerous-thing-about-ai-is-how-right-it-sounds/</link><guid isPermaLink="true">https://handcraftingcodes.com/essays/the-most-dangerous-thing-about-ai-is-how-right-it-sounds/</guid><description>AI Is Fast. It Is Not Careful.</description><pubDate>Thu, 02 Jul 2026 00:00:00 GMT</pubDate><category>AI</category></item><item><title>The most important sales conversation now happens without you</title><link>https://handcraftingcodes.com/essays/the-most-important-sales-conversation-now-happens-without-you/</link><guid isPermaLink="true">https://handcraftingcodes.com/essays/the-most-important-sales-conversation-now-happens-without-you/</guid><description>In complex, high-trust selling, the buyer&apos;s first decision is no longer &quot;which vendor.&quot;</description><pubDate>Thu, 02 Jul 2026 00:00:00 GMT</pubDate><category>AI</category></item><item><title>What actually happens when you ask AI a question</title><link>https://handcraftingcodes.com/essays/what-actually-happens-when-you-ask-ai-a-question/</link><guid isPermaLink="true">https://handcraftingcodes.com/essays/what-actually-happens-when-you-ask-ai-a-question/</guid><description>Most of the engineers and stakeholders I work with use AI every day and couldn&apos;t tell you, even roughly, how it produces an answer</description><pubDate>Thu, 02 Jul 2026 00:00:00 GMT</pubDate><category>AI</category></item><item><title>Git tricks I keep reaching for</title><link>https://handcraftingcodes.com/essays/what-llms-cant-refactor-yet/</link><guid isPermaLink="true">https://handcraftingcodes.com/essays/what-llms-cant-refactor-yet/</guid><description>These are the handful I&apos;ve wired into muscle memory, the ones that earn their place because they save a real minute or a real mistake.</description><pubDate>Thu, 02 Jul 2026 00:00:00 GMT</pubDate><category>Engineering</category></item><item><title>Rebase vs merge</title><link>https://handcraftingcodes.com/essays/the-quiet-power-of-boring-code/</link><guid isPermaLink="true">https://handcraftingcodes.com/essays/the-quiet-power-of-boring-code/</guid><description>The rebase-versus-merge argument gets treated like a holy war, which is silly, because they answer different questions</description><pubDate>Mon, 29 Jun 2026 00:00:00 GMT</pubDate><category>Engineering</category></item><item><title>Three branches, not one: deleting branches in git without the confusion</title><link>https://handcraftingcodes.com/essays/three-branches-not-one-deleting-branches-in-git-without-the-confusion/</link><guid isPermaLink="true">https://handcraftingcodes.com/essays/three-branches-not-one-deleting-branches-in-git-without-the-confusion/</guid><description>The reason deleting a git branch confuses people is that &quot;the branch&quot; isn&apos;t one thing</description><pubDate>Mon, 29 Jun 2026 00:00:00 GMT</pubDate><category>Engineering</category></item></channel></rss>