<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<rss version="2.0" 
  xmlns:content="http://purl.org/rss/1.0/modules/content/" 
  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:media="http://search.yahoo.com/mrss/">
  <channel>
    <title>River Writes - A MediaWiki Blog</title>
    <link>https://river.me/</link>
    <description>RheingoldRiver&#39;s blog - MediaWiki development, Leaguepedia stories, and productivity hacks</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en</language>
    <copyright>©2020-2026, All Rights Reserved</copyright>
    <lastBuildDate>Mon, 05 Jan 2026 19:21:00 +0000</lastBuildDate>
    
        <atom:link href="https://river.me/index.xml" rel="self" type="application/rss+xml" />
    
      
      
      

      
      <item>
        <title>Glossary of ambiguous terms</title>
        <link>https://river.me/blog/glossary/</link>
        <pubDate>Mon, 05 Jan 2026 19:21:00 +0000</pubDate>
        
        <atom:modified>Mon, 05 Jan 2026 19:21:00 +0000</atom:modified>
        <guid>https://river.me/blog/glossary/</guid>
        <description>&lt;code&gt;Template&lt;/code&gt; and &lt;code&gt;Preload&lt;/code&gt; are different, as are &lt;code&gt;Widget&lt;/code&gt;, &lt;code&gt;Module&lt;/code&gt;, and &lt;code&gt;Gadget&lt;/code&gt;. Here&amp;rsquo;s a small glossary</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>tutorial</category>
            
          
            
              <category>mediawiki</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Everything about cargo_attach</title>
        <link>https://river.me/blog/attach/</link>
        <pubDate>Sun, 14 Dec 2025 23:50:34 +0000</pubDate>
        
        <atom:modified>Sun, 14 Dec 2025 23:50:34 +0000</atom:modified>
        <guid>https://river.me/blog/attach/</guid>
        <description>What does #cargo_attach do? How do you use it? And more</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>cargo</category>
            
          
            
              <category>performance</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>snake_case in Cargo sucks</title>
        <link>https://river.me/blog/cargo-snake-case/</link>
        <pubDate>Sat, 29 Nov 2025 19:11:42 +0000</pubDate>
        
        <atom:modified>Sat, 29 Nov 2025 19:11:42 +0000</atom:modified>
        <guid>https://river.me/blog/cargo-snake-case/</guid>
        <description>Cargo will sometimes confusingly change your underscores to spaces if you use snake_case in your field names, so please don&amp;rsquo;t do that</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>cargo</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Gluing &amp; framing a 9000-piece jigsaw</title>
        <link>https://river.me/blog/puzzle-glue-9000/</link>
        <pubDate>Mon, 20 Oct 2025 19:13:51 +0000</pubDate>
        
        <atom:modified>Mon, 20 Oct 2025 19:13:51 +0000</atom:modified>
        <guid>https://river.me/blog/puzzle-glue-9000/</guid>
        <description>How I glued Ravensburger&amp;rsquo;s 9000-piece Dragon Forest puzzle</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>jigsaw_puzzles</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>How to fix Alt&#43;Shift&#43;S</title>
        <link>https://river.me/blog/alt-shift-s/</link>
        <pubDate>Wed, 01 Oct 2025 18:17:47 +0000</pubDate>
        
        <atom:modified>Wed, 01 Oct 2025 18:17:47 +0000</atom:modified>
        <guid>https://river.me/blog/alt-shift-s/</guid>
        <description>Edge interferes with the Alt+Shift+S hotkey, here&amp;rsquo;s how to fix it</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>firefox</category>
            
          
            
              <category>windows</category>
            
          
            
              <category>autohotkey</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Pink Water Lilies timelapse</title>
        <link>https://river.me/blog/pink-water-lilies/</link>
        <pubDate>Sun, 31 Aug 2025 01:49:47 +0000</pubDate>
        
        <atom:modified>Sun, 31 Aug 2025 01:49:47 +0000</atom:modified>
        <guid>https://river.me/blog/pink-water-lilies/</guid>
        <description>A timelapse of solving Ravensburger Pink Water Lilies 4000 piece puzzle</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>jigsaw_puzzles</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>ParserPower, argmap, and iargmap</title>
        <link>https://river.me/blog/argmap/</link>
        <pubDate>Wed, 28 May 2025 23:45:10 +0000</pubDate>
        
        <atom:modified>Wed, 28 May 2025 23:45:10 +0000</atom:modified>
        <guid>https://river.me/blog/argmap/</guid>
        <description>My talk from MediaWiki Users and Developers Workshop Spring 2025 in Sandusky, Ohio</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>talk</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Bookmark keywords, again</title>
        <link>https://river.me/blog/bookmark-keywords-again/</link>
        <pubDate>Thu, 22 May 2025 18:50:37 +0000</pubDate>
        
        <atom:modified>Thu, 22 May 2025 18:50:37 +0000</atom:modified>
        <guid>https://river.me/blog/bookmark-keywords-again/</guid>
        <description>How &amp;amp; why I use bookmark keywords and bookmarklets for searching in Firefox</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>firefox</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>How to see your template edits in action</title>
        <link>https://river.me/blog/template-preview/</link>
        <pubDate>Sun, 30 Mar 2025 18:27:36 +0000</pubDate>
        
        <atom:modified>Sun, 30 Mar 2025 18:27:36 +0000</atom:modified>
        <guid>https://river.me/blog/template-preview/</guid>
        <description>When you edit a template, you will need to bypass cache somehow to see the effect of that edit on a content page</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>tutorial</category>
            
          
            
              <category>mediawiki</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Books published in 2024 (part 2)</title>
        <link>https://river.me/blog/pub-in-2024-2/</link>
        <pubDate>Tue, 04 Feb 2025 06:40:19 +0000</pubDate>
        
        <atom:modified>Tue, 04 Feb 2025 06:40:19 +0000</atom:modified>
        <guid>https://river.me/blog/pub-in-2024-2/</guid>
        <description>Mini reviews of fiction published in 2024, part 2!</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>books</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Books I read that were published in 2024</title>
        <link>https://river.me/blog/pub-in-2024/</link>
        <pubDate>Mon, 06 Jan 2025 05:33:09 +0000</pubDate>
        
        <atom:modified>Mon, 06 Jan 2025 05:33:09 +0000</atom:modified>
        <guid>https://river.me/blog/pub-in-2024/</guid>
        <description>Mini reviews of fiction published in 2024</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>books</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>How to join the Wikipedia Discord</title>
        <link>https://river.me/blog/wikipedia-discord/</link>
        <pubDate>Sun, 17 Nov 2024 22:49:19 +0000</pubDate>
        
        <atom:modified>Sun, 17 Nov 2024 22:49:19 +0000</atom:modified>
        <guid>https://river.me/blog/wikipedia-discord/</guid>
        <description>Click here if you want to join the Wikipedia Discord server!</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
          
        
        
        
      </item>
      
      <item>
        <title>The Tag That Shall Not Be Named</title>
        <link>https://river.me/blog/the-tag-that-shall-not-be-named/</link>
        <pubDate>Tue, 29 Oct 2024 01:31:04 +0000</pubDate>
        
        <atom:modified>Tue, 29 Oct 2024 01:31:04 +0000</atom:modified>
        <guid>https://river.me/blog/the-tag-that-shall-not-be-named/</guid>
        <description>A quick post about transclusion, partial transclusion, The Tag That Shall Not Be Named, and whitespace</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>mediawiki</category>
            
          
            
              <category>best_practices</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>A Great Comet live performance review</title>
        <link>https://river.me/blog/natasha-pierre/</link>
        <pubDate>Mon, 28 Oct 2024 03:58:50 +0000</pubDate>
        
        <atom:modified>Mon, 28 Oct 2024 03:58:50 +0000</atom:modified>
        <guid>https://river.me/blog/natasha-pierre/</guid>
        <description>I saw Natasha, Pierre, and the Great Comet of 1812 live, and I have THOUGHTS (it was incredible!)</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
        
        
      </item>
      
      <item>
        <title>What I have learned about 3D printing</title>
        <link>https://river.me/blog/3d-printing/</link>
        <pubDate>Sat, 26 Oct 2024 14:22:56 +0000</pubDate>
        
        <atom:modified>Sat, 26 Oct 2024 14:22:56 +0000</atom:modified>
        <guid>https://river.me/blog/3d-printing/</guid>
        <description>I started 3D printing and I do not recommend it as a hobby</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
        
        
      </item>
      
      <item>
        <title>Give people early successes</title>
        <link>https://river.me/blog/teaching-new-devs/</link>
        <pubDate>Sat, 12 Oct 2024 00:47:26 +0000</pubDate>
        
        <atom:modified>Sat, 12 Oct 2024 00:47:26 +0000</atom:modified>
        <guid>https://river.me/blog/teaching-new-devs/</guid>
        <description>Someone was wrong on the internet and I&amp;rsquo;ve taught basic coding to a lot of self-described non-developers</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
        
        
      </item>
      
      <item>
        <title>How to refresh cache in MediaWiki</title>
        <link>https://river.me/blog/refreshing-cache/</link>
        <pubDate>Wed, 11 Sep 2024 06:19:54 +0000</pubDate>
        
        <atom:modified>Wed, 11 Sep 2024 06:19:54 +0000</atom:modified>
        <guid>https://river.me/blog/refreshing-cache/</guid>
        <description>Caching can be super complicated in MediaWiki because there are many different types of cache. This article goes over what to do for each kind.</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>caching</category>
            
          
            
              <category>mediawiki</category>
            
          
            
              <category>css</category>
            
          
            
              <category>javascript</category>
            
          
            
              <category>cargo</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>mwclient 0.11</title>
        <link>https://river.me/blog/mwclient-0.11/</link>
        <pubDate>Tue, 13 Aug 2024 09:20:10 +0000</pubDate>
        
        <atom:modified>Tue, 13 Aug 2024 09:20:10 +0000</atom:modified>
        <guid>https://river.me/blog/mwclient-0.11/</guid>
        <description>mwclient 0.11 has released!</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>news</category>
            
          
            
              <category>python</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>How to make Moorish 8-4</title>
        <link>https://river.me/blog/moorish-84/</link>
        <pubDate>Tue, 30 Jul 2024 04:32:31 +0000</pubDate>
        
        <atom:modified>Tue, 30 Jul 2024 04:32:31 +0000</atom:modified>
        <guid>https://river.me/blog/moorish-84/</guid>
        <description>A tutorial for Moorish 8-4, a chainmaille weave I designed in 2016</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>chainmaille</category>
            
          
            
              <category>graph_theory</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Please use recentchanges</title>
        <link>https://river.me/blog/recentchanges/</link>
        <pubDate>Thu, 11 Jul 2024 02:05:16 +0000</pubDate>
        
        <atom:modified>Thu, 11 Jul 2024 02:05:16 +0000</atom:modified>
        <guid>https://river.me/blog/recentchanges/</guid>
        <description>The page MediaWiki:Sidebar is powered by other interface messages, use them!</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>best_practices</category>
            
          
            
              <category>mediawiki</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Representing one-to-many relations</title>
        <link>https://river.me/blog/one-to-many/</link>
        <pubDate>Sun, 23 Jun 2024 06:52:00 +0000</pubDate>
        
        <atom:modified>Sun, 23 Jun 2024 06:52:00 +0000</atom:modified>
        <guid>https://river.me/blog/one-to-many/</guid>
        <description>Several examples of video game mechanics that could be represented as one-to-many relations and how to do table design &amp;amp; queries</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>cargo</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Introducing the SORCERER example wiki</title>
        <link>https://river.me/blog/sorcerer/</link>
        <pubDate>Thu, 06 Jun 2024 04:03:54 +0000</pubDate>
        
        <atom:modified>Thu, 06 Jun 2024 04:03:54 +0000</atom:modified>
        <guid>https://river.me/blog/sorcerer/</guid>
        <description>Enjoy beautiful mspaint drawings and learn Cargo!</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>cargo</category>
            
          
            
              <category>react</category>
            
          
            
              <category>sorcerer</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Notes on &#34;Charlatan&#34; by Pope Brock</title>
        <link>https://river.me/blog/book-charlatan/</link>
        <pubDate>Tue, 28 May 2024 00:16:37 +0000</pubDate>
        
        <atom:modified>Tue, 28 May 2024 00:16:37 +0000</atom:modified>
        <guid>https://river.me/blog/book-charlatan/</guid>
        <description>John R. Brinkley is a fascinating historical figure whose biography feels too improbable to be true.</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>books</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Notes on The Sleepwalkers: How Europe Went to War in 1914</title>
        <link>https://river.me/blog/sleepwalkers-notes/</link>
        <pubDate>Thu, 23 May 2024 18:47:22 +0000</pubDate>
        
        <atom:modified>Thu, 23 May 2024 18:47:22 +0000</atom:modified>
        <guid>https://river.me/blog/sleepwalkers-notes/</guid>
        <description>Some tables &amp;amp; lists of Wikipedia links that may help you while reading this fantastic book on the events leading up to World War I</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>books</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>What&#39;s up with Variables and Parsoid?</title>
        <link>https://river.me/blog/variables-and-parsoid/</link>
        <pubDate>Fri, 03 May 2024 22:16:47 +0000</pubDate>
        
        <atom:modified>Fri, 03 May 2024 22:16:47 +0000</atom:modified>
        <guid>https://river.me/blog/variables-and-parsoid/</guid>
        <description>What you need to know about Parsoid development as it affects Extension:Variables</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>mediawiki</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Book Review - Building a StoryBrand</title>
        <link>https://river.me/blog/book-review-storybrand/</link>
        <pubDate>Sat, 13 Apr 2024 06:36:00 +0000</pubDate>
        
        <atom:modified>Sat, 13 Apr 2024 06:36:00 +0000</atom:modified>
        <guid>https://river.me/blog/book-review-storybrand/</guid>
        <description>A review of and some notes on &amp;ldquo;Building a StoryBrand&amp;rdquo;</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>books</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Gadget - Copy title</title>
        <link>https://river.me/blog/copy-title/</link>
        <pubDate>Tue, 19 Mar 2024 01:43:27 +0000</pubDate>
        
        <atom:modified>Tue, 19 Mar 2024 01:43:27 +0000</atom:modified>
        <guid>https://river.me/blog/copy-title/</guid>
        <description>A gadget that provides one-click buttons to copy the title or (or pageName) of a MediaWiki page</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>gadget_tools</category>
            
          
            
              <category>javascript</category>
            
          
            
              <category>css</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Style your code blocks with Pygments</title>
        <link>https://river.me/blog/mw-pygments/</link>
        <pubDate>Tue, 12 Mar 2024 03:02:39 +0000</pubDate>
        
        <atom:modified>Tue, 12 Mar 2024 03:02:39 +0000</atom:modified>
        <guid>https://river.me/blog/mw-pygments/</guid>
        <description>Customizing your view-page syntax highlighting in MediaWiki</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>mediawiki</category>
            
          
            
              <category>css</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Markdown vs Wikitext</title>
        <link>https://river.me/blog/markdown-vs-wikitext/</link>
        <pubDate>Tue, 05 Mar 2024 10:14:17 +0000</pubDate>
        
        <atom:modified>Tue, 05 Mar 2024 10:14:17 +0000</atom:modified>
        <guid>https://river.me/blog/markdown-vs-wikitext/</guid>
        <description>An at-a-glance guide to formatting Wikitext vs Markdown</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>mediawiki</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>One-to-many tables &amp; #vardefine</title>
        <link>https://river.me/blog/one-to-many-vardefine/</link>
        <pubDate>Mon, 26 Feb 2024 12:38:19 +0000</pubDate>
        
        <atom:modified>Mon, 26 Feb 2024 12:38:19 +0000</atom:modified>
        <guid>https://river.me/blog/one-to-many-vardefine/</guid>
        <description>&lt;code&gt;#vardefine&lt;/code&gt; doesn&amp;rsquo;t always play nice with the order in which you need to evaluate code. Here are some solutions.</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>cargo</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Send me your wiki-updating scripts!</title>
        <link>https://river.me/blog/send-me-scripts/</link>
        <pubDate>Fri, 23 Feb 2024 05:11:56 +0000</pubDate>
        
        <atom:modified>Fri, 23 Feb 2024 05:11:56 +0000</atom:modified>
        <guid>https://river.me/blog/send-me-scripts/</guid>
        <description>Contribute to my &lt;a href=&#34;https://github.com/RheingoldRiver/example_wiki_scripts&#34;&gt;list of resources&lt;/a&gt; for editing MediaWiki with code</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>mediawiki</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Dealing with defaults</title>
        <link>https://river.me/blog/default-params/</link>
        <pubDate>Sun, 18 Feb 2024 11:20:30 +0000</pubDate>
        
        <atom:modified>Sun, 18 Feb 2024 11:20:30 +0000</atom:modified>
        <guid>https://river.me/blog/default-params/</guid>
        <description>There are a &lt;em&gt;lot&lt;/em&gt; of different things you can mean when you say &amp;ldquo;default parameter&amp;rdquo; in MediaWiki. This article explains them all.</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>tutorial</category>
            
          
            
              <category>mediawiki</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>How to install Sublime Text &amp; Mediawiker</title>
        <link>https://river.me/blog/sublime-tutorial/</link>
        <pubDate>Sun, 11 Feb 2024 14:05:13 +0000</pubDate>
        
        <atom:modified>Sun, 11 Feb 2024 14:05:13 +0000</atom:modified>
        <guid>https://river.me/blog/sublime-tutorial/</guid>
        <description>A step-by-step guide with screenshots on installing and configuring Sublime Text with the Mediawiker extension</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>sublimetext</category>
            
          
            
              <category>tutorial</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>If {{NAMESPACE}} do nothing, otherwise...</title>
        <link>https://river.me/blog/if-namespace/</link>
        <pubDate>Tue, 23 Jan 2024 16:34:28 +0000</pubDate>
        
        <atom:modified>Tue, 23 Jan 2024 16:34:28 +0000</atom:modified>
        <guid>https://river.me/blog/if-namespace/</guid>
        <description>A common design pattern in MediaWiki templating is to write &lt;code&gt;{{#if:{{NAMESPACE}}|&amp;lt;!-- do nothing --&amp;gt;|&amp;lt;!-- otherwise...--&amp;gt;}}&lt;/code&gt;</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>best_practices</category>
            
          
            
              <category>mediawiki</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Book Review - The Field Guide to Global Payments</title>
        <link>https://river.me/blog/book-review-global-payments/</link>
        <pubDate>Sun, 17 Dec 2023 07:15:58 +0000</pubDate>
        
        <atom:modified>Sun, 17 Dec 2023 07:15:58 +0000</atom:modified>
        <guid>https://river.me/blog/book-review-global-payments/</guid>
        <description>A review of &amp;ldquo;A Field Guide to Global Payments,&amp;rdquo; including a table of initialisms used in the book.</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>books</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Ordering a Cargo field</title>
        <link>https://river.me/blog/cargo-order/</link>
        <pubDate>Sun, 03 Dec 2023 18:02:20 +0000</pubDate>
        
        <atom:modified>Sun, 03 Dec 2023 18:02:20 +0000</atom:modified>
        <guid>https://river.me/blog/cargo-order/</guid>
        <description>How can you enforce a sorting order on a Cargo field when displaying tabular data?</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>cargo</category>
            
          
            
              <category>best_practices</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>ShareX image effects</title>
        <link>https://river.me/blog/sharex-image-effects/</link>
        <pubDate>Sun, 26 Nov 2023 16:40:47 +0000</pubDate>
        
        <atom:modified>Sun, 26 Nov 2023 16:40:47 +0000</atom:modified>
        <guid>https://river.me/blog/sharex-image-effects/</guid>
        <description>How to use ShareX image effects &amp;amp; spam your friends with rainbows</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>sharex</category>
            
          
            
              <category>tutorial</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>How to use Weblate</title>
        <link>https://river.me/blog/weblate/</link>
        <pubDate>Wed, 15 Nov 2023 02:34:59 +0000</pubDate>
        
        <atom:modified>Wed, 15 Nov 2023 02:34:59 +0000</atom:modified>
        <guid>https://river.me/blog/weblate/</guid>
        <description>A guide to using Weblate as a translator</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>weblate</category>
            
          
            
              <category>tutorial</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>How to use Dev Tools</title>
        <link>https://river.me/blog/dev-tools/</link>
        <pubDate>Sat, 04 Nov 2023 20:52:47 +0000</pubDate>
        
        <atom:modified>Sat, 04 Nov 2023 20:52:47 +0000</atom:modified>
        <guid>https://river.me/blog/dev-tools/</guid>
        <description>Learn how to edit CSS interactively</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>css</category>
            
          
            
              <category>firefox</category>
            
          
            
              <category>tutorial</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Surfaces with pentominoes</title>
        <link>https://river.me/blog/surfaces-with-pentominoes/</link>
        <pubDate>Sat, 21 Oct 2023 01:18:07 +0000</pubDate>
        
        <atom:modified>Sat, 21 Oct 2023 01:18:07 +0000</atom:modified>
        <guid>https://river.me/blog/surfaces-with-pentominoes/</guid>
        <description>Embedding a grid on a surface doesn&amp;rsquo;t really work, but we can approximate.</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>pentominoes</category>
            
          
            
              <category>graph_theory</category>
            
          
            
              <category>topology</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Serialization woes</title>
        <link>https://river.me/blog/serialization-woes/</link>
        <pubDate>Thu, 05 Oct 2023 06:29:07 +0000</pubDate>
        
        <atom:modified>Thu, 05 Oct 2023 06:29:07 +0000</atom:modified>
        <guid>https://river.me/blog/serialization-woes/</guid>
        <description>My journey of encoding pentominoes on surfaces into permalinks</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>react</category>
            
          
            
              <category>typescript</category>
            
          
            
              <category>pentominoes</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>I don&#39;t like infoboxes - EMWCon 2023</title>
        <link>https://river.me/blog/emwcon-2023-talk/</link>
        <pubDate>Tue, 06 Jun 2023 08:02:30 +0000</pubDate>
        
        <atom:modified>Tue, 06 Jun 2023 08:02:30 +0000</atom:modified>
        <guid>https://river.me/blog/emwcon-2023-talk/</guid>
        <description>I attended EMWCon 2023 remotely again in 2023 and finally gave the presentation everyone has been waiting for: I don&amp;rsquo;t like infoboxes.</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>talk</category>
            
          
            
              <category>best_practices</category>
            
          
            
              <category>mediawiki</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>List-type fields, for realsies</title>
        <link>https://river.me/blog/cargo-list-type-fields/</link>
        <pubDate>Sat, 20 May 2023 23:06:27 +0000</pubDate>
        
        <atom:modified>Sat, 20 May 2023 23:06:27 +0000</atom:modified>
        <guid>https://river.me/blog/cargo-list-type-fields/</guid>
        <description>What are list-type fields? What &lt;em&gt;aren&amp;rsquo;t&lt;/em&gt; they? How do I query them?</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>cargo</category>
            
          
            
              <category>best_practices</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Mediawiker 3.6.14</title>
        <link>https://river.me/blog/mediawiker-3-6-14/</link>
        <pubDate>Sat, 20 May 2023 06:25:55 +0000</pubDate>
        
        <atom:modified>Sat, 20 May 2023 06:25:55 +0000</atom:modified>
        <guid>https://river.me/blog/mediawiker-3-6-14/</guid>
        <description>SublimeText extension  Mediawiker 3.6.14 release update, plus some bonuses</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>sublimetext</category>
            
          
            
              <category>news</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Book review - Everybody Writes</title>
        <link>https://river.me/blog/book-review-everybody-writes/</link>
        <pubDate>Fri, 28 Apr 2023 08:31:15 +0000</pubDate>
        
        <atom:modified>Fri, 28 Apr 2023 08:31:15 +0000</atom:modified>
        <guid>https://river.me/blog/book-review-everybody-writes/</guid>
        <description>&amp;ldquo;Everybody Writes&amp;rdquo; was deeply disappointing to me because it wasn&amp;rsquo;t the book I wanted to read. That said, I think it can be a valuable resource for people who want an introductory and accessible writing book.</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>books</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>How I found four marketing books</title>
        <link>https://river.me/blog/found-marketing-books/</link>
        <pubDate>Tue, 04 Apr 2023 02:08:55 +0000</pubDate>
        
        <atom:modified>Tue, 04 Apr 2023 02:08:55 +0000</atom:modified>
        <guid>https://river.me/blog/found-marketing-books/</guid>
        <description>Subtitle: I dropped my keys - no, I mean bouncy balls - no, I mean information - in the light and learned to stop looking for it in the dark: An information-seeking parable</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>books</category>
            
          
            
              <category>information-science</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Paste a transparent-background image with PIL</title>
        <link>https://river.me/blog/pil-mask/</link>
        <pubDate>Wed, 22 Feb 2023 19:20:21 +0000</pubDate>
        
        <atom:modified>Wed, 22 Feb 2023 19:20:21 +0000</atom:modified>
        <guid>https://river.me/blog/pil-mask/</guid>
        <description>How to paste a transparent-background image file over another file using PIL, or WTF is a mask and how does it work?</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>python</category>
            
          
            
              <category>pil</category>
            
          
            
              <category>tsubaki</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Fandom update</title>
        <link>https://river.me/blog/fandom-update/</link>
        <pubDate>Thu, 04 Aug 2022 14:08:07 +0000</pubDate>
        
        <atom:modified>Thu, 04 Aug 2022 14:08:07 +0000</atom:modified>
        <guid>https://river.me/blog/fandom-update/</guid>
        <description>An update on my time with Leaguepedia.</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
          
        
        
        
      </item>
      
      <item>
        <title>Book review - Recoding Gender</title>
        <link>https://river.me/blog/book-review-recoding-gender/</link>
        <pubDate>Wed, 20 Jul 2022 00:54:30 +0000</pubDate>
        
        <atom:modified>Wed, 20 Jul 2022 00:54:30 +0000</atom:modified>
        <guid>https://river.me/blog/book-review-recoding-gender/</guid>
        <description>A review of the book &amp;ldquo;Recoding Gender: Women&amp;rsquo;s Changing Participation in Computing&amp;rdquo;</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>books</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Lua Branches</title>
        <link>https://river.me/blog/lua-branches/</link>
        <pubDate>Tue, 31 May 2022 10:05:34 +0000</pubDate>
        
        <atom:modified>Tue, 31 May 2022 10:05:34 +0000</atom:modified>
        <guid>https://river.me/blog/lua-branches/</guid>
        <description>Lua Branches is a prototype/proof-of-concept MediaWiki extension for making branches of Lua modules &amp;amp; their dependency chains.</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>mediawiki_extensions</category>
            
          
            
              <category>lua</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Live I18n</title>
        <link>https://river.me/blog/live-i18n/</link>
        <pubDate>Tue, 17 May 2022 01:52:39 +0000</pubDate>
        
        <atom:modified>Tue, 17 May 2022 01:52:39 +0000</atom:modified>
        <guid>https://river.me/blog/live-i18n/</guid>
        <description>I wrote my second-ever MediaWiki extension!</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>news</category>
            
          
            
              <category>mediawiki_extensions</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Handling internal data in MediaWiki</title>
        <link>https://river.me/blog/handling-internal-data/</link>
        <pubDate>Tue, 12 Apr 2022 05:27:42 +0000</pubDate>
        
        <atom:modified>Tue, 12 Apr 2022 05:27:42 +0000</atom:modified>
        <guid>https://river.me/blog/handling-internal-data/</guid>
        <description>My EMWCon 2022 talk</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>talk</category>
            
          
            
              <category>emwcon</category>
            
          
            
              <category>best_practices</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>How to crosslink two Hugo blogs</title>
        <link>https://river.me/blog/hugo-menus/</link>
        <pubDate>Tue, 15 Mar 2022 04:50:12 +0000</pubDate>
        
        <atom:modified>Tue, 15 Mar 2022 04:50:12 +0000</atom:modified>
        <guid>https://river.me/blog/hugo-menus/</guid>
        <description>My misadventures accomplishing what should have been a really easy task in Hugo</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>hugo</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>CustomLogs 1.0</title>
        <link>https://river.me/blog/custom-logs-1-0/</link>
        <pubDate>Tue, 22 Feb 2022 04:50:09 +0000</pubDate>
        
        <atom:modified>Tue, 22 Feb 2022 04:50:09 +0000</atom:modified>
        <guid>https://river.me/blog/custom-logs-1-0/</guid>
        <description>Custom Logs 1.0 has been released!</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>news</category>
            
          
            
              <category>mediawiki_extensions</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Lua table errors</title>
        <link>https://river.me/blog/table-errors/</link>
        <pubDate>Tue, 08 Feb 2022 06:28:24 +0000</pubDate>
        
        <atom:modified>Tue, 08 Feb 2022 06:28:24 +0000</atom:modified>
        <guid>https://river.me/blog/table-errors/</guid>
        <description>A framework for inserting Lua errors into HTML tables using a singleton class</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>lua</category>
            
          
            
              <category>css</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Toggleable columns</title>
        <link>https://river.me/blog/toggleable-columns/</link>
        <pubDate>Tue, 18 Jan 2022 22:07:12 +0000</pubDate>
        
        <atom:modified>Tue, 18 Jan 2022 22:07:12 +0000</atom:modified>
        <guid>https://river.me/blog/toggleable-columns/</guid>
        <description>A simple interface to automatically let users toggle columns in any data table on the entire wiki.</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>lua</category>
            
          
            
              <category>widgets</category>
            
          
            
              <category>javascript</category>
            
          
            
              <category>css</category>
            
          
            
              <category>leaguepedia</category>
            
          
            
              <category>mediawiki</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Serving Hugo from a non-root location with Nginx</title>
        <link>https://river.me/blog/hugo-non-root-location/</link>
        <pubDate>Tue, 11 Jan 2022 02:29:20 +0000</pubDate>
        
        <atom:modified>Tue, 11 Jan 2022 02:29:20 +0000</atom:modified>
        <guid>https://river.me/blog/hugo-non-root-location/</guid>
        <description>How to host a Hugo blog from a non-root location</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>hugo</category>
            
          
            
              <category>nginx</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Organize your Hugo content folder by year, without affecting any URLs</title>
        <link>https://river.me/blog/hugo-content-by-year/</link>
        <pubDate>Tue, 04 Jan 2022 04:18:45 +0000</pubDate>
        
        <atom:modified>Tue, 04 Jan 2022 04:18:45 +0000</atom:modified>
        <guid>https://river.me/blog/hugo-content-by-year/</guid>
        <description>How to organize your Hugo content folder into subfolders by year without affecting any URLs</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>hugo</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Book review - Foundations of Library and Information Science</title>
        <link>https://river.me/blog/book-review-foundations-lis/</link>
        <pubDate>Wed, 29 Dec 2021 08:20:41 +0000</pubDate>
        
        <atom:modified>Wed, 29 Dec 2021 08:20:41 +0000</atom:modified>
        <guid>https://river.me/blog/book-review-foundations-lis/</guid>
        <description>A review of &amp;ldquo;Foundations of Library and Information Science&amp;rdquo;</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>books</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>How to find a namespace number</title>
        <link>https://river.me/blog/find-namespace-number/</link>
        <pubDate>Tue, 14 Dec 2021 15:28:29 +0000</pubDate>
        
        <atom:modified>Tue, 14 Dec 2021 15:28:29 +0000</atom:modified>
        <guid>https://river.me/blog/find-namespace-number/</guid>
        <description>Here&amp;rsquo;s how you can find the number of a particular namespace</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>mediawiki</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Make lots of sandbox pages</title>
        <link>https://river.me/blog/lot-of-sandbox-pages/</link>
        <pubDate>Tue, 07 Dec 2021 23:41:34 +0000</pubDate>
        
        <atom:modified>Tue, 07 Dec 2021 23:41:34 +0000</atom:modified>
        <guid>https://river.me/blog/lot-of-sandbox-pages/</guid>
        <description>Instead of putting all of your code experiments on a single page, make lots of little sandbox pages!</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>best_practices</category>
            
          
            
              <category>mediawiki</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>How to set up Sphinx for Read the Docs</title>
        <link>https://river.me/blog/how-to-readthedocs/</link>
        <pubDate>Thu, 02 Dec 2021 09:54:37 +0000</pubDate>
        
        <atom:modified>Thu, 02 Dec 2021 09:54:37 +0000</atom:modified>
        <guid>https://river.me/blog/how-to-readthedocs/</guid>
        <description>A tutorial for configuring Sphinx for Read the Docs for your Python projects</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>python</category>
            
          
            
              <category>sphinx</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>mwcleric, my Python MediaWiki client library</title>
        <link>https://river.me/blog/mwcleric/</link>
        <pubDate>Wed, 24 Nov 2021 06:21:26 +0000</pubDate>
        
        <atom:modified>Wed, 24 Nov 2021 06:21:26 +0000</atom:modified>
        <guid>https://river.me/blog/mwcleric/</guid>
        <description>An overview of mwcleric</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>news</category>
            
          
            
              <category>python</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Book review - The Elements of User Experience</title>
        <link>https://river.me/blog/book-review-elements-user-experience/</link>
        <pubDate>Tue, 26 Oct 2021 07:17:38 +0000</pubDate>
        
        <atom:modified>Tue, 26 Oct 2021 07:17:38 +0000</atom:modified>
        <guid>https://river.me/blog/book-review-elements-user-experience/</guid>
        <description>A review of &amp;ldquo;The Elements of User Experience&amp;rdquo;</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>books</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Mouse Gestures (the useful ones)</title>
        <link>https://river.me/blog/mouse-gestures/</link>
        <pubDate>Tue, 12 Oct 2021 05:06:54 +0000</pubDate>
        
        <atom:modified>Tue, 12 Oct 2021 05:06:54 +0000</atom:modified>
        <guid>https://river.me/blog/mouse-gestures/</guid>
        <description>My Gesturefy bindings in Firefox and how I use them when working with MediaWiki</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>firefox</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Book review - Free to All</title>
        <link>https://river.me/blog/book-review-free-to-all/</link>
        <pubDate>Tue, 12 Oct 2021 04:26:12 +0000</pubDate>
        
        <atom:modified>Tue, 12 Oct 2021 04:26:12 +0000</atom:modified>
        <guid>https://river.me/blog/book-review-free-to-all/</guid>
        <description>A review and chapter summaries of &amp;ldquo;Free to All: Carnegie Libraries &amp;amp; American Culture, 1890-1920&amp;rdquo;</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>books</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>I stored a boolean instead of a timestamp</title>
        <link>https://river.me/blog/boolean-instead-of-timestamp/</link>
        <pubDate>Tue, 05 Oct 2021 01:16:32 +0000</pubDate>
        
        <atom:modified>Tue, 05 Oct 2021 01:16:32 +0000</atom:modified>
        <guid>https://river.me/blog/boolean-instead-of-timestamp/</guid>
        <description>A Cargo field I was going to store as a timestamp but decided to store as a boolean instead</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>cargo</category>
            
          
            
              <category>best_practices</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Book review - Celebration, U.S.A.</title>
        <link>https://river.me/blog/book-review-celebration-usa/</link>
        <pubDate>Tue, 05 Oct 2021 00:49:11 +0000</pubDate>
        
        <atom:modified>Tue, 05 Oct 2021 00:49:11 +0000</atom:modified>
        <guid>https://river.me/blog/book-review-celebration-usa/</guid>
        <description>A review of &amp;ldquo;Celebration, U.S.A.: Living in Disney&amp;rsquo;s Brave New Town&amp;rdquo;</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>books</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Book review - Library as Place</title>
        <link>https://river.me/blog/book-review-library-as-place/</link>
        <pubDate>Wed, 22 Sep 2021 10:07:18 +0000</pubDate>
        
        <atom:modified>Wed, 22 Sep 2021 10:07:18 +0000</atom:modified>
        <guid>https://river.me/blog/book-review-library-as-place/</guid>
        <description>A review of &amp;ldquo;The Library as Place: History, Community, and Culture&amp;rdquo;</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>books</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>MediaWiki hotkeys (the useful ones)</title>
        <link>https://river.me/blog/mediawiki-hotkeys-useful/</link>
        <pubDate>Tue, 14 Sep 2021 07:15:21 +0000</pubDate>
        
        <atom:modified>Tue, 14 Sep 2021 07:15:21 +0000</atom:modified>
        <guid>https://river.me/blog/mediawiki-hotkeys-useful/</guid>
        <description>A list of just the useful hotkeys/access keys in MediaWiki</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>mediawiki</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Book review &amp; notes -  Looking for Information</title>
        <link>https://river.me/blog/book-review-looking-for-information/</link>
        <pubDate>Tue, 07 Sep 2021 20:33:43 +0000</pubDate>
        
        <atom:modified>Tue, 07 Sep 2021 20:33:43 +0000</atom:modified>
        <guid>https://river.me/blog/book-review-looking-for-information/</guid>
        <description>A review of, including chapter-by-chapter notes on, &amp;ldquo;Looking for Information: A Survey of Research on Information Seeking, Needs, and Behavior&amp;rdquo;</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>books</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Book review - Strategic Writing for UX</title>
        <link>https://river.me/blog/book-review-strategic-writing-ux/</link>
        <pubDate>Tue, 31 Aug 2021 03:50:07 +0000</pubDate>
        
        <atom:modified>Tue, 31 Aug 2021 03:50:07 +0000</atom:modified>
        <guid>https://river.me/blog/book-review-strategic-writing-ux/</guid>
        <description>A review of &amp;ldquo;Strategic Writing for UX&amp;rdquo;</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>books</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Gadget - Copy search results</title>
        <link>https://river.me/blog/copy-search/</link>
        <pubDate>Thu, 26 Aug 2021 13:33:46 +0000</pubDate>
        
        <atom:modified>Thu, 26 Aug 2021 13:33:46 +0000</atom:modified>
        <guid>https://river.me/blog/copy-search/</guid>
        <description>Similar to the copy category members gadget, but for search results - and more!</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>gadget_tools</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Book review - Writing and Designing Manuals and Warnings</title>
        <link>https://river.me/blog/book-review-writing-designing-manuals-warnings/</link>
        <pubDate>Tue, 17 Aug 2021 05:44:26 +0000</pubDate>
        
        <atom:modified>Tue, 17 Aug 2021 05:44:26 +0000</atom:modified>
        <guid>https://river.me/blog/book-review-writing-designing-manuals-warnings/</guid>
        <description>A review of &amp;ldquo;Writing and Designing Manuals and Warnings, Fifth Edition&amp;rdquo;</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>books</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Bracket zoom bug</title>
        <link>https://river.me/blog/bracket-zoom-bug/</link>
        <pubDate>Sun, 15 Aug 2021 21:16:24 +0000</pubDate>
        
        <atom:modified>Sun, 15 Aug 2021 21:16:24 +0000</atom:modified>
        <guid>https://river.me/blog/bracket-zoom-bug/</guid>
        <description>A quick CSS bugfix that was particularly satisfying - and interesting!</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>css</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Gadget - Copy category members</title>
        <link>https://river.me/blog/copy-category-members/</link>
        <pubDate>Tue, 10 Aug 2021 00:13:09 +0000</pubDate>
        
        <atom:modified>Tue, 10 Aug 2021 00:13:09 +0000</atom:modified>
        <guid>https://river.me/blog/copy-category-members/</guid>
        <description>A gadget to copy all members of a category</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>gadget_tools</category>
            
          
            
              <category>javascript</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Frame, wtf?</title>
        <link>https://river.me/blog/frame-wtf/</link>
        <pubDate>Tue, 03 Aug 2021 08:46:02 +0000</pubDate>
        
        <atom:modified>Tue, 03 Aug 2021 08:46:02 +0000</atom:modified>
        <guid>https://river.me/blog/frame-wtf/</guid>
        <description>Frame objects in Scribunto can be confusing, and they do a lot of work. Normally I say &amp;ldquo;don&amp;rsquo;t worry, just copy the copyable code,&amp;rdquo; but here&amp;rsquo;s an indepth guide to everything they do.</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>lua</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Book notes - OSTEP (part 3)</title>
        <link>https://river.me/blog/book-notes-ostep-3/</link>
        <pubDate>Tue, 27 Jul 2021 05:16:48 +0000</pubDate>
        
        <atom:modified>Tue, 27 Jul 2021 05:16:48 +0000</atom:modified>
        <guid>https://river.me/blog/book-notes-ostep-3/</guid>
        <description>My notes on &amp;ldquo;Operating Systems: Three Easy Pieces&amp;rdquo; - part 3, Persistence</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>books</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Book notes - OSTEP (part 2)</title>
        <link>https://river.me/blog/book-notes-ostep-2/</link>
        <pubDate>Tue, 20 Jul 2021 11:07:21 +0000</pubDate>
        
        <atom:modified>Tue, 20 Jul 2021 11:07:21 +0000</atom:modified>
        <guid>https://river.me/blog/book-notes-ostep-2/</guid>
        <description>My notes on &amp;ldquo;Operating Systems: Three Easy Pieces&amp;rdquo; - part 2, Concurrency</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>books</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Book notes - OSTEP (part 1)</title>
        <link>https://river.me/blog/book-notes-ostep-1/</link>
        <pubDate>Tue, 13 Jul 2021 22:50:55 +0000</pubDate>
        
        <atom:modified>Tue, 13 Jul 2021 22:50:55 +0000</atom:modified>
        <guid>https://river.me/blog/book-notes-ostep-1/</guid>
        <description>My notes on &amp;ldquo;Operating Systems: Three Easy Pieces&amp;rdquo; - part 1, Virtualization</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>books</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Book review - Microcopy</title>
        <link>https://river.me/blog/book-review-microcopy/</link>
        <pubDate>Wed, 30 Jun 2021 00:08:32 +0000</pubDate>
        
        <atom:modified>Wed, 30 Jun 2021 00:08:32 +0000</atom:modified>
        <guid>https://river.me/blog/book-review-microcopy/</guid>
        <description>A review of &amp;ldquo;Microcopy: The Complete Guide&amp;rdquo;</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>books</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Gadget - Top-of-page categories</title>
        <link>https://river.me/blog/top-of-page-categories/</link>
        <pubDate>Tue, 22 Jun 2021 00:27:26 +0000</pubDate>
        
        <atom:modified>Tue, 22 Jun 2021 00:27:26 +0000</atom:modified>
        <guid>https://river.me/blog/top-of-page-categories/</guid>
        <description>A gadget to show categories at the top of pages</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>css</category>
            
          
            
              <category>gadget_tools</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Bookmarklet - stay here</title>
        <link>https://river.me/blog/bookmarklet-stay-here/</link>
        <pubDate>Tue, 08 Jun 2021 11:38:23 +0000</pubDate>
        
        <atom:modified>Tue, 08 Jun 2021 11:38:23 +0000</atom:modified>
        <guid>https://river.me/blog/bookmarklet-stay-here/</guid>
        <description>A bookmarklet that enables a prompt before navigating away from your current location</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>firefox</category>
            
          
            
              <category>javascript</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Comment your closing braces</title>
        <link>https://river.me/blog/comment-closing-braces/</link>
        <pubDate>Tue, 01 Jun 2021 05:22:52 +0000</pubDate>
        
        <atom:modified>Tue, 01 Jun 2021 05:22:52 +0000</atom:modified>
        <guid>https://river.me/blog/comment-closing-braces/</guid>
        <description>This one trick will save you 80% of your wikitext debugging time!</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>best_practices</category>
            
          
            
              <category>mediawiki</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Optimizing Cargo - query 3</title>
        <link>https://river.me/blog/optimizing-cargo-3/</link>
        <pubDate>Tue, 25 May 2021 22:07:05 +0000</pubDate>
        
        <atom:modified>Tue, 25 May 2021 22:07:05 +0000</atom:modified>
        <guid>https://river.me/blog/optimizing-cargo-3/</guid>
        <description>The final of three Cargo queries I recently optimized on Leaguepedia</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>Cargo</category>
            
          
            
              <category>Leaguepedia</category>
            
          
            
              <category>Lua</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Book review - Developing Quality Technical Information</title>
        <link>https://river.me/blog/book-review-quality-technical-information/</link>
        <pubDate>Sat, 22 May 2021 09:37:18 +0000</pubDate>
        
        <atom:modified>Sat, 22 May 2021 09:37:18 +0000</atom:modified>
        <guid>https://river.me/blog/book-review-quality-technical-information/</guid>
        <description>A review of the book &amp;ldquo;Developing Quality Technical Information: A Handbook for Writers and Editors&amp;rdquo;</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>books</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Sublime Text 4 is released!</title>
        <link>https://river.me/blog/sublimetext-4/</link>
        <pubDate>Thu, 20 May 2021 03:46:13 +0000</pubDate>
        
        <atom:modified>Thu, 20 May 2021 03:46:13 +0000</atom:modified>
        <guid>https://river.me/blog/sublimetext-4/</guid>
        <description>Sublime Text 4 has been released!</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>news</category>
            
          
            
              <category>sublimetext</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>My EMWCon 2021 talk</title>
        <link>https://river.me/blog/emwcon-2021-talk/</link>
        <pubDate>Thu, 13 May 2021 03:52:11 +0000</pubDate>
        
        <atom:modified>Thu, 13 May 2021 03:52:11 +0000</atom:modified>
        <guid>https://river.me/blog/emwcon-2021-talk/</guid>
        <description>At EMWCon 2021, I gave a talk about easily performing tasks with Python on MediaWiki wikis.</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>emwcon</category>
            
          
            
              <category>python</category>
            
          
            
              <category>talk</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Optimizing Cargo - query 2</title>
        <link>https://river.me/blog/optimizing-cargo-2/</link>
        <pubDate>Tue, 04 May 2021 22:06:58 +0000</pubDate>
        
        <atom:modified>Tue, 04 May 2021 22:06:58 +0000</atom:modified>
        <guid>https://river.me/blog/optimizing-cargo-2/</guid>
        <description>The second of three Cargo queries I recently optimized.</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>cargo</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Optimizing Cargo - query 1</title>
        <link>https://river.me/blog/optimizing-cargo-1/</link>
        <pubDate>Wed, 28 Apr 2021 02:05:43 +0000</pubDate>
        
        <atom:modified>Wed, 28 Apr 2021 02:05:43 +0000</atom:modified>
        <guid>https://river.me/blog/optimizing-cargo-1/</guid>
        <description>A Cargo query I optimized recently on Leaguepedia</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>cargo</category>
            
          
            
              <category>leaguepedia</category>
            
          
            
              <category>lua</category>
            
          
            
              <category>lua_class_system</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>mwparserfromhell 0.6</title>
        <link>https://river.me/blog/mwparserfromhell-0-6/</link>
        <pubDate>Wed, 14 Apr 2021 01:15:08 +0000</pubDate>
        
        <atom:modified>Wed, 14 Apr 2021 01:15:08 +0000</atom:modified>
        <guid>https://river.me/blog/mwparserfromhell-0-6/</guid>
        <description>mwparserfromhell released version 0.6 a couple months ago with a couple really exciting changes!</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>python</category>
            
          
            
              <category>mwparserfromhell</category>
            
          
            
              <category>news</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>A Lua module to print all args</title>
        <link>https://river.me/blog/cargo-debug-print-all-args/</link>
        <pubDate>Tue, 13 Apr 2021 11:24:05 +0000</pubDate>
        
        <atom:modified>Tue, 13 Apr 2021 11:24:05 +0000</atom:modified>
        <guid>https://river.me/blog/cargo-debug-print-all-args/</guid>
        <description>How to write a module to print all args to help with debugging Cargo</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>cargo</category>
            
          
            
              <category>lua</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Tournament brackets (part 1)</title>
        <link>https://river.me/blog/tournament-brackets/</link>
        <pubDate>Tue, 30 Mar 2021 06:36:44 +0000</pubDate>
        
        <atom:modified>Tue, 30 Mar 2021 06:36:44 +0000</atom:modified>
        <guid>https://river.me/blog/tournament-brackets/</guid>
        <description>Our CSS-grid-powered tournament brackets on Leaguepedia</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>css</category>
            
          
            
              <category>html</category>
            
          
            
              <category>leaguepedia</category>
            
          
            
              <category>lua</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Setting common match &amp; game keys</title>
        <link>https://river.me/blog/common-game-id/</link>
        <pubDate>Tue, 23 Mar 2021 02:33:50 +0000</pubDate>
        
        <atom:modified>Tue, 23 Mar 2021 02:33:50 +0000</atom:modified>
        <guid>https://river.me/blog/common-game-id/</guid>
        <description>How I corrected a mistake in my Cargo database design</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>cargo</category>
            
          
            
              <category>leaguepedia</category>
            
          
            
              <category>lua</category>
            
          
            
              <category>lua_class_system</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Reinstalling Windows</title>
        <link>https://river.me/blog/reinstalling-windows/</link>
        <pubDate>Tue, 16 Mar 2021 08:46:12 +0000</pubDate>
        
        <atom:modified>Tue, 16 Mar 2021 08:46:12 +0000</atom:modified>
        <guid>https://river.me/blog/reinstalling-windows/</guid>
        <description>I reinstalled Windows this month. As usual, it was a pretty arduous process, so let&amp;rsquo;s document what I did to make it suck less next time!</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>windows</category>
            
          
            
              <category>vscode</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Use cases for Extension:CustomLogs</title>
        <link>https://river.me/blog/customlogs-use-cases/</link>
        <pubDate>Tue, 09 Mar 2021 02:33:50 +0000</pubDate>
        
        <atom:modified>Tue, 09 Mar 2021 02:33:50 +0000</atom:modified>
        <guid>https://river.me/blog/customlogs-use-cases/</guid>
        <description>Use cases for my extension CustomLogs</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>caching</category>
            
          
            
              <category>javascript</category>
            
          
            
              <category>leaguepedia</category>
            
          
            
              <category>python</category>
            
          
            
              <category>mediawiki_extensions</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Escape item[&#34;id&#34;]</title>
        <link>https://river.me/blog/escape-item-id/</link>
        <pubDate>Tue, 23 Feb 2021 19:59:37 +0000</pubDate>
        
        <atom:modified>Tue, 23 Feb 2021 19:59:37 +0000</atom:modified>
        <guid>https://river.me/blog/escape-item-id/</guid>
        <description>A funny commit I made today</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>cargo</category>
            
          
            
              <category>leaguepedia</category>
            
          
            
              <category>python</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Gadget - Improving Special:ListGroupRights CSS</title>
        <link>https://river.me/blog/listgrouprights-css/</link>
        <pubDate>Tue, 09 Feb 2021 00:43:00 +0000</pubDate>
        
        <atom:modified>Tue, 09 Feb 2021 00:43:00 +0000</atom:modified>
        <guid>https://river.me/blog/listgrouprights-css/</guid>
        <description>A couple lines of CSS to improve the user experience of Special:ListGroupRights</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>gadget_tools</category>
            
          
            
              <category>css</category>
            
          
            
              <category>firefox</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Books I read in 2019</title>
        <link>https://river.me/blog/books-in-2019/</link>
        <pubDate>Wed, 27 Jan 2021 05:59:57 +0000</pubDate>
        
        <atom:modified>Wed, 27 Jan 2021 05:59:57 +0000</atom:modified>
        <guid>https://river.me/blog/books-in-2019/</guid>
        <description>A list of books I read in 2019</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>books</category>
            
          
        
        
        
      </item>
      
      <item>
        <title>Books I read in 2020</title>
        <link>https://river.me/blog/books-in-2020/</link>
        <pubDate>Tue, 12 Jan 2021 22:18:30 +0000</pubDate>
        
        <atom:modified>Tue, 12 Jan 2021 22:18:30 +0000</atom:modified>
        <guid>https://river.me/blog/books-in-2020/</guid>
        <description>A list of books I read in 2020</description>
        
        <dc:creator>river</dc:creator>
        
        
        
        
          
            
              <category>books</category>
            
          
        
        
        
      </item>
      

    
  </channel>
</rss>
