<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	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/"
	 xmlns:friends="wordpress-plugin-friends:feed-additions:1" >

<channel>
	<title>avdi.codes</title>
	<atom:link href="https://avdi.codes/feed/" rel="self" type="application/rss+xml" />
	<link>https://avdi.codes</link>
	<description>Avdi Grimm, Code Cleric</description>
	<lastBuildDate>Wed, 29 Apr 2026 23:10:14 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://avdi.codes/wp-content/uploads/2019/06/cropped-favicon-extraced-from-linda-kerr-loga-32x32.png</url>
	<title>avdi.codes</title>
	<link>https://avdi.codes</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>You probably don&#8217;t need git worktrees</title>
		<link>https://avdi.codes/you-probably-dont-need-git-worktrees/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=you-probably-dont-need-git-worktrees</link>
		
		<dc:creator><![CDATA[Avdi Grimm]]></dc:creator>
		<pubDate>Wed, 29 Apr 2026 23:10:13 +0000</pubDate>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Agentic Coding]]></category>
		<category><![CDATA[git]]></category>
		<category><![CDATA[LLMs]]></category>
		<guid isPermaLink="false">https://avdi.codes/?p=129315</guid>

					<description><![CDATA[Local clones are faster and cheaper than you think]]></description>
										<content:encoded><![CDATA[
<p>Like a lot of developers right now, I&#8217;m figuring out how to support a &#8220;supervising several parallel development efforts at once&#8221; workflow. If you look for information on the web about how to implement a workflow like this, you&#8217;ll see a lot about git worktrees&#8212;where a single <code class="" data-line="">.git</code> directory serves multiple working checkouts on different branches in different base directories.</p>



<p>But worktrees have some significant limitations. Not least of which is that their dependence on hardcoded fully-qualified paths written into configuration files not only makes worktrees non-portable, but also makes them DOA for any kind of containerized development environment. The <code class="" data-line="">worktree.useRelativePaths</code> option helps here, but as of this writing it&#8217;s still relatively brand-new (Git v2.48 released Q1 2025), and not available in the version of git you probably have installed on your host machine <em>or</em> any of your container images. On top of that, VSCode&#8217;s support for relative worktrees with devcontainers is experimental, totally undocumented, and (as of this writing) unreliable at best.</p>



<p>Here&#8217;s what I didn&#8217;t realize until this week: you don&#8217;t need worktrees at all! </p>



<p>It&#8217;s 2026. Internet bandwidth is fast and disk space is cheap. But! Guess what: you don&#8217;t even need to fill up your disk with duplicate repos, or wait for lengthy <code class="" data-line="">git clone</code> operations from origin every time you need a new branch-dedicated workspace. </p>



<p>That&#8217;s because when you do a local clone:</p>



<pre class="wp-block-code"><code class="" data-line="">git clone my-project my-project.my-branch-a
git clone my-project my-project.my-branch-b</code></pre>



<p>&#8230;not only is it near-instantaneous, it also doesn&#8217;t take up significantly more disk space! Why? Because by default, Git makes hard links for the object files when locally cloning a repo! Object files are immutable hunks of history, so there&#8217;s no reason not to share them across repositories on the same volume.</p>



<p>You&#8217;ll need to do a little bit more than this: you&#8217;ll also want to rewrite the new clone&#8217;s origin remote to point to the original origin rather than the source directory. I tasked a robot with making me <a href="https://github.com/avdi/purse/blob/main/home/dot_local/bin/executable_git-bc-add">some git-extension convenience scripts</a>, so for instance I can exec <code class="" data-line="">git bc-add my-project my-branch-name</code> to clone, massage remotes, and either checkout or create the branch in one command. You can do whatever streamlining makes the most sense for your process.</p>



<p>The important part is that local git clones are <em>fast</em> and <em>cheap</em>. So don&#8217;t worry about worktrees. Just clone and get coding!</p>
]]></content:encoded>
					
		
		
		<friends:post-format>standard</friends:post-format>
	</item>
		<item>
		<title>New Podcast Ep on Agentic Feature Owners</title>
		<link>https://avdi.codes/new-podcast-ep-on-agentic-feature-owners/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=new-podcast-ep-on-agentic-feature-owners</link>
		
		<dc:creator><![CDATA[Avdi Grimm]]></dc:creator>
		<pubDate>Mon, 30 Mar 2026 13:27:51 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<guid isPermaLink="false">https://avdi.codes/?p=113453</guid>

					<description><![CDATA[Check it out, Jessitron and I are podcasting again! You can catch the first episode, and find links to subscribe, on Graceful.Dev: “I’ve often wished I could fork myself…”]]></description>
										<content:encoded><![CDATA[
<p>Check it out, Jessitron and I are podcasting again! You can catch the first episode, and find links to subscribe, on Graceful.Dev: <a href="https://graceful.dev/podcast/ive-often-wished-i-could-fork-myself/">“I’ve often wished I could fork myself…”</a></p>
]]></content:encoded>
					
		
		
		<friends:post-format>link</friends:post-format>
	</item>
		<item>
		<title>Can you tell me how to test</title>
		<link>https://avdi.codes/can-you-tell-me-how-to-test/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=can-you-tell-me-how-to-test</link>
		
		<dc:creator><![CDATA[Avdi Grimm]]></dc:creator>
		<pubDate>Fri, 19 Dec 2025 21:04:04 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<guid isPermaLink="false">https://avdi.codes/?p=81641</guid>

					<description><![CDATA[Testing server-rendered HTML: Testing React et al: With apologies to Penny Arcade]]></description>
										<content:encoded><![CDATA[
<p>Testing server-rendered HTML:</p>



<ol class="wp-block-list">
<li>Make a request, look at the result.</li>
</ol>



<p>Testing React et al:</p>



<ol class="wp-block-list">
<li>Make a request.</li>



<li>Receive HTML.</li>



<li>Ignore it!</li>



<li>It also contains a string.</li>



<li>The string is attached to a bird</li>



<li>The bird speaks latin</li>



<li>Find an antiquities professor</li>



<li>He can distract the bird</li>



<li>While you build a fake browser</li>
</ol>



<p><em>With apologies to <a href="https://www.penny-arcade.com/comic/2002/08/19/can-you-tell-me-how-to-get">Penny Arcade</a></em></p>
]]></content:encoded>
					
		
		
		<friends:post-format>aside</friends:post-format>
	</item>
		<item>
		<title>Developer Tooling is a Lousy Business</title>
		<link>https://avdi.codes/developer-tooling-is-a-lousy-business/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=developer-tooling-is-a-lousy-business</link>
		
		<dc:creator><![CDATA[Avdi Grimm]]></dc:creator>
		<pubDate>Thu, 15 May 2025 19:56:47 +0000</pubDate>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[business]]></category>
		<category><![CDATA[Extracted from SIGAVDI]]></category>
		<guid isPermaLink="false">https://avdi.codes/?p=40619</guid>

					<description><![CDATA[It's a trap.]]></description>
										<content:encoded><![CDATA[
<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"></blockquote>



<p>Back in 2017 Slava Akhmechet <a href="https://web.archive.org/web/20170119021049/http://www.defstartup.org/2017/01/18/why-rethinkdb-failed.html">wrote a post-mortem on the RethinkDB project</a>:</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>If you do set out to build a developer tools company, tread carefully. The market is filled with good alternatives. User expectations are high and prices are low. Think deeply about the value you’re offering to the customer. Remember – wanting the world to be a certain way doesn’t make it so.</p>
</blockquote>



<p>As a veteran of a developer tools startup, my view of that market is similarly jaundiced.</p>



<p>Every hacker has a great idea idea for a developer tools startup at some point. But it&#8217;s a tough market to succeed in.</p>



<ul class="wp-block-list">
<li>It&#8217;s just not as big a market as you think it is. Yes, there is gobs of money in the software industry as a whole. But the money available for tools servicing that industry is orders of magnitude smaller.</li>



<li>Other shops&#8217; pain points are less similar to yours than you think.</li>



<li>Everyone looks at your great idea and thinks &#8220;oh, I could do that internally, it&#8217;s just a simple matter of coding&#8221;. The fact that they are wrong does nothing for your bottom line.</li>



<li>The more desperately a company needs your tools, the more peculiar will be their ball of legacy code and the more unexpected and non-standard will be their workflows. You will dump hundreds of hours into supporting these hard cases, in order to have compelling success stories. But most of that work won&#8217;t translate into supporting the <em>next</em> special snowflake.</li>



<li>The gulf is deceptively wide between &#8220;that&#8217;s a really cool idea!&#8221; and &#8220;I&#8217;m going to invest time and energy into incorporating it into our processes.&#8221;</li>



<li>If the idea <em>really</em> has legs, the proof will be that established developer tools companies copy it and commoditize it and it becomes part of the new baseline of tools. Which most likely leaves you back at square one, hopefully having sold your technology to a enterprise dev tool company before the market for it tanked. Of course, if the commoditization happens in the form of a really great Open Source alternative, even that exit may not be an option.</li>
</ul>



<p><em>(This article was adapted from a <a href="/sigavdi">SIGAVDI</a> email from January 2017.)</em></p>
]]></content:encoded>
					
		
		
		<friends:post-format>standard</friends:post-format>
	</item>
		<item>
		<title>I made a keychain</title>
		<link>https://avdi.codes/keychain/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=keychain</link>
					<comments>https://avdi.codes/keychain/#comments</comments>
		
		<dc:creator><![CDATA[Avdi Grimm]]></dc:creator>
		<pubDate>Fri, 09 May 2025 17:23:25 +0000</pubDate>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[community]]></category>
		<guid isPermaLink="false">https://avdi.codes/?p=39985</guid>

					<description><![CDATA[On ivar and strict_ivars and how I'm not always as clever as I like to think]]></description>
										<content:encoded><![CDATA[
<p><a href="https://jessitron.com">Jessitron</a> has taken up making friendship bracelets lately. She has a lot of meetings and it&#8217;s something to do with her hands.</p>



<p>She makes bracelets. Except sometimes they turn out too short. They turn out to be&#8230; keychains, instead.</p>



<figure class="wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex">
<figure class="wp-block-image size-large"><img fetchpriority="high" decoding="async" width="1024" height="769" data-id="40000" src="https://avdi.codes/wp-content/uploads/2025/05/signal-2025-05-09-105336_002-1024x769.jpeg" alt="" class="wp-image-40000" srcset="https://avdi.codes/wp-content/uploads/2025/05/signal-2025-05-09-105336_002-1024x769.jpeg 1024w, https://avdi.codes/wp-content/uploads/2025/05/signal-2025-05-09-105336_002-300x225.jpeg 300w, https://avdi.codes/wp-content/uploads/2025/05/signal-2025-05-09-105336_002-768x577.jpeg 768w, https://avdi.codes/wp-content/uploads/2025/05/signal-2025-05-09-105336_002-1536x1154.jpeg 1536w, https://avdi.codes/wp-content/uploads/2025/05/signal-2025-05-09-105336_002-1440x1081.jpeg 1440w, https://avdi.codes/wp-content/uploads/2025/05/signal-2025-05-09-105336_002.jpeg 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<figure class="wp-block-image size-large"><img decoding="async" data-id="39998" src="https://avdi.codes/wp-content/uploads/2025/05/signal-2025-05-09-105310_002-576x1024.jpeg" alt="" class="wp-image-39998"/></figure>



<figure class="wp-block-image size-large"><img decoding="async" data-id="39999" src="https://avdi.codes/wp-content/uploads/2025/05/signal-2025-05-09-105236_002-576x1024.jpeg" alt="" class="wp-image-39999"/></figure>
<figcaption class="blocks-gallery-caption wp-element-caption">Some bracelets that turned out to be keychains.</figcaption></figure>



<p>A couple weeks ago I saw Joel Drapper announce his <a href="https://joel.drapper.me/ivars/">strict_ivars</a> gem, and I got really excited. I loved the concept. But I immediately thought of my own spin on it. Mostly, I wanted it to generate warnings instead of exceptions. I also wanted to solve the &#8220;repetitive initializer&#8221; problem at the same time.</p>



<p>It got my wheels spinning in a way they haven&#8217;t in a long time. Here was a Ruby metaprogramming problem I could sink my teeth into! It would be fun. It would recruit skills I don&#8217;t get to use very often. It could be useful for other people!</p>



<p>I sank a lot of time I really couldn&#8217;t spare into the project. I knew if I didn&#8217;t turn something out quickly I&#8217;d never release anything at all. To work faster I leveraged an LLM assistant to be my hands. I solved some of the trickiest Ruby metaprogramming problems I&#8217;ve ever seen, which is <a href="https://github.com/avdi/naught">saying something</a>. (Have you ever tried to locate the <code class="" data-line="">Method</code> object for the original definition of a method that has been hidden behind a prepended module?)</p>



<p>I finished it enough to at least demonstrate the functionality I&#8217;d intended, and I released it. </p>



<p>I&#8217;d told Joel I was inspired by his work, and after my release he did <a href="https://joel.drapper.me/ivar/">an excellent, gracious, in-depth technical comparison of the two gems</a>. It turns out he&#8217;s building on <a href="https://github.com/ruby-next/require-hooks">some tech</a> I hadn&#8217;t even heard of (embarrassing!). He pointed out a number of shortcomings in my approach that I hadn&#8217;t thought through. Issues baked into the architecture that aren&#8217;t easily fixed.</p>



<p>I wanted to make a friendship bracelet. But it turned out that I&#8217;d made a keychain. Realizing I&#8217;d made a keychain felt embarrassing. I felt exposed. I felt old and busted and shown-up.</p>



<p>The truth is I still put a lot of pride into being Very Good At Ruby. I cling to that pride, sometimes. I want to show that I&#8217;ve &#8220;still got it&#8221;. In a life drowned in caregiving and homemaking and survival, I often feel like I&#8217;m vanishing. Like I have so much still to offer, if only&#8212;and then there is screaming from another room, and I must defuse a meltdown, or mediate an argument, or make a belated dinner, or chase down a meds prescription, or or or&#8230;</p>



<p>And then of course there is the actual consulting work and <a href="https://graceful.dev">content work</a> that keeps a roof over our heads. But it is not always technically engaging.</p>



<p>To me there&#8217;s not much more alluring and aspirational than being able to buckle down to some really abstruse coding problem and come up with something shiny and cool to show other people.</p>



<p>I feel bad for not initially understanding Joel&#8217;s approach better. I feel bad for positioning something less-well-thought-out as an alternative. And I feel a little foolish. But it&#8217;s OK to feel foolish.</p>



<p>I need to accept that my life doesn&#8217;t presently offer the time for getting bracelets right, and there&#8217;s no getting around that.</p>



<p>I learned things though. I learned about <a href="https://github.com/ruby/prism">Prism</a>, and about <a href="https://docs.ruby-lang.org/en/master/TracePoint.html">TracePoint</a>, and more about how to work successfully with a coding agent while I&#8217;m chopping onions.</p>



<p>I don&#8217;t think anyone should use <code class="" data-line="">ivar</code> in production. I&#8217;m planning on pulling it from Rubygems, and I&#8217;ll recommend <a href="https://github.com/joeldrapper/strict_ivars">strict_ivars</a> in its place.</p>



<p>I was tempted to pull down the <a href="https://github.com/avdi/ivar">repo</a> as well, out of embarrassment. But I think I&#8217;ll leave it up, because there are some interesting metaprogramming examples in there.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://avdi.codes/keychain/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
		<friends:post-format>standard</friends:post-format>
	</item>
		<item>
		<title>Agents Aren&#8217;t Juniors, They Are Amnesiac Spies</title>
		<link>https://avdi.codes/agents-arent-juniors-they-are-amnesiac-spies/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=agents-arent-juniors-they-are-amnesiac-spies</link>
		
		<dc:creator><![CDATA[Avdi Grimm]]></dc:creator>
		<pubDate>Fri, 09 May 2025 13:37:08 +0000</pubDate>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[ai]]></category>
		<category><![CDATA[LLMs]]></category>
		<guid isPermaLink="false">https://avdi.codes/?p=39959</guid>

					<description><![CDATA[If this is what you think working with a junior is like, you probably suck at mentoring]]></description>
										<content:encoded><![CDATA[
<p>The other day I told Augment:</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>Use the Table Data Gateway pattern for this class</p>
</blockquote>



<p>It did as it was told, perfectly, the first time. This is not something I could tell a junior without a great deal more hand-holding. It instantly understood me, because uncounted millions of lines of code and writing-about-code are baked into its probability matrix.</p>



<p>On the other hand, no matter how many times I refactor the agent&#8217;s work, or tell it how to refactor its own work, it will never <em>learn</em> from that experience. It will never get better than it is. It will never grow in taste and instincts.</p>



<p>Today&#8217;s coding agents aren&#8217;t like &#8220;working with a junior&#8221;. They are like working with Jason Bourne, or Charly Baltimore from <em>The Long Kiss Goodnight</em>. They are amnesiac spies, who have a &#8220;<a href="https://www.youtube.com/watch?v=jZOywn1qArI">very particular set of skills</a>&#8221; but can&#8217;t remember any of them until circumstances prompt them to throw a knife, or to remember every license plate in a parking lot. Nor can they form new memories, except in the most superficial ways: they are always the same idiot savant.</p>



<p>Postscript: Unlike a spy though, the agent is terrible at getting itself out of sticky situations. If it can&#8217;t &#8220;figure out&#8221; (pattern-match) why a test is failing it&#8217;ll add more and more code and eventually <a href="https://medium.com/table-xi/in-defense-of-sliming-937b63046efb">slime the tests</a>. Even if I&#8217;ve explicitly forbidden them to do that. This is a situation in which it shows its lack of self-awareness&#8212;another trait that makes it distinctly un-junior-like.</p>



<p></p>
]]></content:encoded>
					
		
		
		<friends:post-format>standard</friends:post-format>
	</item>
		<item>
		<title></title>
		<link>https://avdi.codes/39927-2/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=39927-2</link>
		
		<dc:creator><![CDATA[Avdi Grimm]]></dc:creator>
		<pubDate>Thu, 08 May 2025 21:10:15 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<guid isPermaLink="false">https://avdi.codes/?p=39927</guid>

					<description><![CDATA[Please do try out Ivar, I&#8217;m sure there are corner cases and I&#8217;d love to identify them]]></description>
										<content:encoded><![CDATA[
<p>Please do try out <a href="https://github.com/avdi/ivar">Ivar</a>, I&#8217;m sure there are corner cases and I&#8217;d love to identify them</p>
]]></content:encoded>
					
		
		
		<friends:post-format>aside</friends:post-format>
	</item>
		<item>
		<title></title>
		<link>https://avdi.codes/39835-2/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=39835-2</link>
					<comments>https://avdi.codes/39835-2/#comments</comments>
		
		<dc:creator><![CDATA[Avdi Grimm]]></dc:creator>
		<pubDate>Thu, 08 May 2025 00:34:01 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<guid isPermaLink="false">https://avdi.codes/?p=39835</guid>

					<description><![CDATA[Check it out, I published a new RubyGem! (I think the original post syndicated to the fediverse a little wonky so I&#8217;m re-linking it)]]></description>
										<content:encoded><![CDATA[
<p>Check it out, I published a new RubyGem!</p>



<figure class="wp-block-embed is-type-wp-embed is-provider-avdi-codes wp-block-embed-avdi-codes"><div class="wp-block-embed__wrapper">
<span class="iGXfgL7yUMTgSQhlfY46tsyj8wl7JUZzCok4Y0NrdVpHWEBQkcwnRSDMLqXavIAGDO52aEOj9mBHd3zAxxRKcVTFoCiK5v"><blockquote class="wp-embedded-content" data-secret="7E830He39W"><a href="https://avdi.codes/announcing-ivar-rubys-missing-instance-variable-typo-warnings/">Announcing Ivar: Ruby&#8217;s Missing Instance Variable Typo Warnings</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="&#8220;Announcing Ivar: Ruby&#8217;s Missing Instance Variable Typo Warnings&#8221; &#8212; avdi.codes" src="https://avdi.codes/announcing-ivar-rubys-missing-instance-variable-typo-warnings/embed/#?secret=zbn3resimk#?secret=7E830He39W" data-secret="7E830He39W" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe></span>
</div></figure>



<p>(I think the original post syndicated to the fediverse a little wonky so I&#8217;m re-linking it)</p>
]]></content:encoded>
					
					<wfw:commentRss>https://avdi.codes/39835-2/feed/</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
		<friends:post-format>link</friends:post-format>
	</item>
		<item>
		<title>Announcing Ivar: Ruby&#8217;s Missing Instance Variable Typo Warnings</title>
		<link>https://avdi.codes/announcing-ivar-rubys-missing-instance-variable-typo-warnings/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=announcing-ivar-rubys-missing-instance-variable-typo-warnings</link>
					<comments>https://avdi.codes/announcing-ivar-rubys-missing-instance-variable-typo-warnings/#comments</comments>
		
		<dc:creator><![CDATA[Avdi Grimm]]></dc:creator>
		<pubDate>Thu, 08 May 2025 00:12:56 +0000</pubDate>
				<category><![CDATA[Announcements]]></category>
		<category><![CDATA[Ruby]]></category>
		<guid isPermaLink="false">https://avdi.codes/?p=39810</guid>

					<description><![CDATA[Ivar is a Ruby gem that automatically checks for typos in instance variables.]]></description>
										<content:encoded><![CDATA[
<p>You should probably go tread <a href="https://avdi.codes/keychain/" data-type="post" data-id="39985">this post instead</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://avdi.codes/announcing-ivar-rubys-missing-instance-variable-typo-warnings/feed/</wfw:commentRss>
			<slash:comments>5</slash:comments>
		
		
		<friends:post-format>standard</friends:post-format>
	</item>
		<item>
		<title>Facts, feelings, and fascism &#8211; by Amy Isikoff Newell</title>
		<link>https://avdi.codes/facts-feelings-and-fascism-by-amy-isikoff-newell/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=facts-feelings-and-fascism-by-amy-isikoff-newell</link>
					<comments>https://avdi.codes/facts-feelings-and-fascism-by-amy-isikoff-newell/#comments</comments>
		
		<dc:creator><![CDATA[Avdi Grimm]]></dc:creator>
		<pubDate>Fri, 02 May 2025 21:46:22 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<guid isPermaLink="false">https://avdi.codes/?p=39554</guid>

					<description><![CDATA[fascists would rather we pay less attention to external facts (which they are lying to us about) and more attention to our feelings, because those are so easy to manipulate It is always a good idea to read Amy Newell, but *especially* now. Source: Facts, feelings, and fascism &#8211; by Amy Isikoff Newell]]></description>
										<content:encoded><![CDATA[<blockquote><p>fascists would rather we pay less attention to external facts (which they are lying to us about) and more attention to our feelings, because those are so easy to manipulate</p></blockquote>
<p>It is always a good idea to read Amy Newell, but *especially* now.</p>
<p>Source: <em><a href="https://www.amywriteswords.com/p/facts-feelings-and-fascism?publication_id=293363&amp;utm_campaign=email-post-title&amp;r=1du1c&amp;utm_medium=email">Facts, feelings, and fascism &#8211; by Amy Isikoff Newell</a></em></p>
]]></content:encoded>
					
					<wfw:commentRss>https://avdi.codes/facts-feelings-and-fascism-by-amy-isikoff-newell/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
		<friends:post-format>quote</friends:post-format>
	</item>
	</channel>
</rss>
