<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title>Tools on Grizzlebit</title>
  <subtitle>Ray Grasso's Blog</subtitle>
  <updated>2026-03-10T17:05:20.14684+08:00</updated>
  <id>https://www.grizzlebit.com/tags/tools/feed.xml</id>
  <link rel="alternate" type="text/html" href="https://www.grizzlebit.com/tags/tools/"/>
  <link rel="self" type="application/atom+xml" href="https://www.grizzlebit.com/tags/tools/feed.xml"/>
  <rights>Copyright © 2026, Ray Grasso</rights>
  <author>
    <name>Ray Grasso</name>
  </author>
  <icon>https://www.grizzlebit.com/images/icon.png</icon>
  <logo>https://www.grizzlebit.com/images/icon.png</logo>
  
  <entry>
    <id>https://www.grizzlebit.com/links/2025/08-07-instapaper-supports-pdfs/</id>
    <published>2025-08-07T08:06:42+08:00</published>
    <updated>2025-08-07T08:14:35+08:00</updated>
    <author><name>Ray Grasso</name></author>
    
    <title>Instapaper Supports PDFs ↬</title>
    <content type="html" xml:base="https://www.grizzlebit.com/links/" xml:lang="en"><![CDATA[<div>
  <p>Instapaper Team:</p>
<blockquote>
<p>Our focus for PDFs is to make them more readable, especially on mobile devices, and bring the suite of Instapaper tools to PDFs including highlighting, notes, text-to-speech, etc.</p></blockquote>
<p>Maybe now I&rsquo;ll make a dent in my folder of unread PDFs.</p>

  <p>
    
    <a href="https://www.grizzlebit.com/links/2025/08-07-instapaper-supports-pdfs/">↬</a>
     ∙ Tagged in <a href="https://www.grizzlebit.com/tags/tools/">Tools</a>.</p>
</div>
]]></content>
    <link rel="alternate" href="https://blog.instapaper.com/post/791134578856378368/"></link>
    <link rel="related" href="https://www.grizzlebit.com/links/2025/08-07-instapaper-supports-pdfs/"></link>
    
  </entry>
  
  <entry>
    <id>https://www.grizzlebit.com/posts/2025/04-23-a-raycast-extension-to-search-my-blog/</id>
    <published>2025-04-23T17:13:26+08:00</published>
    <updated>2025-04-23T19:31:51+08:00</updated>
    <author><name>Ray Grasso</name></author>
    
    <title>A Raycast Extension to Search My Blog</title>
    <content type="html" xml:base="https://www.grizzlebit.com/posts/" xml:lang="en"><![CDATA[<div>
  <p>I&rsquo;ve been looking for a way to search through the local copy of my blog using <a href="https://www.raycast.com">Raycast</a>.</p>
<p>I ended up writing a custom extension to do it. ChatGPT helped grease the way—especially in rendering the results.</p>
<p>It uses a brute force grep over the files&rsquo; contents which works fine given the size of the repository.</p>
<p>The two main actions on the extension are opening the post in my editor and copying a Markdown link to the post<sup id="fnref:1"><a href="#fn:1" class="footnote-ref" role="doc-noteref">1</a></sup>.</p>
<p>Here is a look at the Raycast command:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-tsx" data-lang="tsx"><span class="line"><span class="cl"><span class="kr">export</span> <span class="k">default</span> <span class="kd">function</span> <span class="nx">Command() {</span>
</span></span><span class="line"><span class="cl">  <span class="kr">const</span> <span class="p">[</span><span class="nx">query</span><span class="p">,</span> <span class="nx">setQuery</span><span class="p">]</span> <span class="o">=</span> <span class="nx">useState</span><span class="p">&lt;</span><span class="nt">string</span><span class="p">&gt;(</span><span class="s2">&#34;&#34;</span><span class="p">);</span>
</span></span><span class="line"><span class="cl">  <span class="kr">const</span> <span class="p">[</span><span class="nx">results</span><span class="p">,</span> <span class="nx">setResults</span><span class="p">]</span> <span class="o">=</span> <span class="nx">useState</span><span class="p">&lt;</span><span class="nt">SearchResult</span><span class="err">[]</span><span class="p">&gt;([]);</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">  <span class="nx">useEffect</span><span class="p">(()</span> <span class="o">=&gt;</span> <span class="p">{</span>
</span></span><span class="line"><span class="cl">    <span class="k">if</span> <span class="p">(</span><span class="nx">query</span><span class="p">.</span><span class="nx">trim</span><span class="p">()</span> <span class="o">===</span> <span class="s2">&#34;&#34;</span><span class="p">)</span> <span class="p">{</span>
</span></span><span class="line"><span class="cl">      <span class="nx">setResults</span><span class="p">([]);</span>
</span></span><span class="line"><span class="cl">      <span class="k">return</span><span class="p">;</span>
</span></span><span class="line"><span class="cl">    <span class="p">}</span>
</span></span><span class="line"><span class="cl">    <span class="k">try</span> <span class="p">{</span>
</span></span><span class="line"><span class="cl">      <span class="kr">const</span> <span class="nx">posts</span> <span class="o">=</span> <span class="nx">getAllPosts</span><span class="p">(</span><span class="nx">BASE_PATH</span><span class="p">,</span> <span class="nx">BLOG_SUBDIRS</span><span class="p">);</span>
</span></span><span class="line"><span class="cl">      <span class="kr">const</span> <span class="nx">matches</span> <span class="o">=</span> <span class="nx">searchPosts</span><span class="p">(</span><span class="nx">posts</span><span class="p">,</span> <span class="nx">query</span><span class="p">);</span>
</span></span><span class="line"><span class="cl">      <span class="nx">setResults</span><span class="p">(</span><span class="nx">matches</span><span class="p">);</span>
</span></span><span class="line"><span class="cl">    <span class="p">}</span> <span class="k">catch</span> <span class="p">(</span><span class="nx">err</span><span class="p">)</span> <span class="p">{</span>
</span></span><span class="line"><span class="cl">      <span class="nx">console</span><span class="p">.</span><span class="nx">error</span><span class="p">(</span><span class="s2">&#34;Error reading blog posts:&#34;</span><span class="p">,</span> <span class="nx">err</span><span class="p">);</span>
</span></span><span class="line"><span class="cl">    <span class="p">}</span>
</span></span><span class="line"><span class="cl">  <span class="p">},</span> <span class="p">[</span><span class="nx">query</span><span class="p">]);</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">  <span class="k">return</span> <span class="p">(</span>
</span></span><span class="line"><span class="cl">    <span class="p">&lt;</span><span class="nt">List</span> <span class="na">onSearchTextChange</span><span class="o">=</span><span class="p">{</span><span class="nx">setQuery</span><span class="p">}</span> <span class="na">throttle</span> <span class="na">isShowingDetail</span><span class="p">&gt;</span>
</span></span><span class="line"><span class="cl">      <span class="p">{</span><span class="nx">results</span><span class="p">.</span><span class="nx">map</span><span class="p">(({</span> <span class="nx">file</span><span class="p">,</span> <span class="nx">snippet</span> <span class="p">})</span> <span class="o">=&gt;</span> <span class="p">{</span>
</span></span><span class="line"><span class="cl">        <span class="kr">const</span> <span class="nx">filename</span> <span class="o">=</span> <span class="nx">path</span><span class="p">.</span><span class="nx">basename</span><span class="p">(</span><span class="nx">file</span><span class="p">);</span>
</span></span><span class="line"><span class="cl">        <span class="kr">const</span> <span class="nx">relativePath</span> <span class="o">=</span> <span class="nx">path</span><span class="p">.</span><span class="nx">relative</span><span class="p">(</span><span class="nx">BASE_PATH</span><span class="p">,</span> <span class="nx">file</span><span class="p">).</span><span class="nx">replace</span><span class="p">(</span><span class="sr">/\\/g</span><span class="p">,</span> <span class="s2">&#34;/&#34;</span><span class="p">);</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">        <span class="c1">// Convert to URL relative from site root based upon Hugo URL config
</span></span></span><span class="line"><span class="cl"><span class="c1"></span>        <span class="kr">const</span> <span class="nx">relativeUrl</span> <span class="o">=</span> <span class="sb">`/</span><span class="si">${</span><span class="nx">relativePath</span><span class="p">.</span><span class="nx">replace</span><span class="p">(</span><span class="sr">/\.md$/</span><span class="p">,</span> <span class="s2">&#34;&#34;</span><span class="p">).</span><span class="nx">replace</span><span class="p">(</span><span class="sr">/\/\d\d\d\d-/</span><span class="p">,</span> <span class="s2">&#34;/&#34;</span><span class="p">)</span><span class="si">}</span><span class="sb">`</span><span class="p">;</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">        <span class="c1">// Grab the title from the front matter
</span></span></span><span class="line"><span class="cl"><span class="c1"></span>        <span class="kr">const</span> <span class="nx">fileContent</span> <span class="o">=</span> <span class="nx">fs</span><span class="p">.</span><span class="nx">readFileSync</span><span class="p">(</span><span class="nx">file</span><span class="p">,</span> <span class="s2">&#34;utf8&#34;</span><span class="p">);</span>
</span></span><span class="line"><span class="cl">        <span class="kr">const</span> <span class="nx">titleMatch</span> <span class="o">=</span> <span class="nx">fileContent</span><span class="p">.</span><span class="nx">match</span><span class="p">(</span><span class="sr">/^title:\s*(.*)$/m</span><span class="p">);</span>
</span></span><span class="line"><span class="cl">        <span class="kr">const</span> <span class="nx">title</span> <span class="o">=</span> <span class="nx">titleMatch</span> <span class="o">?</span> <span class="nx">titleMatch</span><span class="p">[</span><span class="mi">1</span><span class="p">].</span><span class="nx">replace</span><span class="p">(</span><span class="sr">/^[&#39;&#34;]|[&#39;&#34;]$/g</span><span class="p">,</span> <span class="s2">&#34;&#34;</span><span class="p">)</span> <span class="o">:</span> <span class="nx">filename</span><span class="p">;</span>
</span></span><span class="line"><span class="cl">        <span class="kr">const</span> <span class="nx">markdownLink</span> <span class="o">=</span> <span class="sb">`[</span><span class="si">${</span><span class="nx">title</span><span class="si">}</span><span class="sb">](</span><span class="si">${</span><span class="nx">relativeUrl</span><span class="si">}</span><span class="sb">)`</span><span class="p">;</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">        <span class="k">return</span> <span class="p">(</span>
</span></span><span class="line"><span class="cl">          <span class="p">&lt;</span><span class="nt">List.Item</span>
</span></span><span class="line"><span class="cl">            <span class="na">key</span><span class="o">=</span><span class="p">{</span><span class="nx">file</span><span class="p">}</span>
</span></span><span class="line"><span class="cl">            <span class="na">title</span><span class="o">=</span><span class="p">{</span><span class="nx">snippet</span><span class="p">.</span><span class="nx">replace</span><span class="p">(</span><span class="sr">/\*\*/g</span><span class="p">,</span> <span class="s2">&#34;&#34;</span><span class="p">)}</span>
</span></span><span class="line"><span class="cl">            <span class="na">detail</span><span class="o">=</span><span class="p">{&lt;</span><span class="nt">List.Item.Detail</span> <span class="na">markdown</span><span class="o">=</span><span class="p">{</span><span class="sb">`**</span><span class="si">${</span><span class="nx">relativeUrl</span><span class="si">}</span><span class="sb">**</span><span class="err">\</span><span class="sb">n</span><span class="err">\</span><span class="sb">n---</span><span class="err">\</span><span class="sb">n</span><span class="err">\</span><span class="sb">n</span><span class="si">${</span><span class="nx">snippet</span><span class="si">}</span><span class="sb">`</span><span class="p">}</span> <span class="p">/&gt;}</span>
</span></span><span class="line"><span class="cl">            <span class="na">actions</span><span class="o">=</span><span class="p">{</span>
</span></span><span class="line"><span class="cl">              <span class="p">&lt;</span><span class="nt">ActionPanel</span><span class="p">&gt;</span>
</span></span><span class="line"><span class="cl">                <span class="p">&lt;</span><span class="nt">Action.Open</span> <span class="na">title</span><span class="o">=</span><span class="s">&#34;Open in VS Code&#34;</span> <span class="na">target</span><span class="o">=</span><span class="p">{</span><span class="nx">file</span><span class="p">}</span> <span class="na">application</span><span class="o">=</span><span class="s">&#34;/Applications/Visual Studio Code.app&#34;</span> <span class="p">/&gt;</span>
</span></span><span class="line"><span class="cl">                <span class="p">&lt;</span><span class="nt">Action.CopyToClipboard</span> <span class="na">title</span><span class="o">=</span><span class="s">&#34;Copy Markdown Link&#34;</span> <span class="na">content</span><span class="o">=</span><span class="p">{</span><span class="nx">markdownLink</span><span class="p">}</span> <span class="p">/&gt;</span>
</span></span><span class="line"><span class="cl">              <span class="p">&lt;/</span><span class="nt">ActionPanel</span><span class="p">&gt;</span>
</span></span><span class="line"><span class="cl">            <span class="p">}</span>
</span></span><span class="line"><span class="cl">          <span class="p">/&gt;</span>
</span></span><span class="line"><span class="cl">        <span class="p">);</span>
</span></span><span class="line"><span class="cl">      <span class="p">})}</span>
</span></span><span class="line"><span class="cl">    <span class="p">&lt;/</span><span class="nt">List</span><span class="p">&gt;</span>
</span></span><span class="line"><span class="cl">  <span class="p">);</span>
</span></span><span class="line"><span class="cl"><span class="p">}</span>
</span></span></code></pre></div><p>And here is <a href="/files/find-blog-post.tsx">the full file</a>.</p>
<div class="footnotes" role="doc-endnotes">
<hr>
<ol>
<li id="fn:1">
<p>Which is handy when cross linking while writing other posts.&#160;<a href="#fnref:1" class="footnote-backref" role="doc-backlink">&#x21a9;&#xfe0e;</a></p>
</li>
</ol>
</div>

  <p>
    
    <a href="https://www.grizzlebit.com/posts/2025/04-23-a-raycast-extension-to-search-my-blog/">🔗</a>
     ∙ Tagged in <a href="https://www.grizzlebit.com/tags/automation/">Automation</a>, <a href="https://www.grizzlebit.com/tags/programming/">Programming</a>, <a href="https://www.grizzlebit.com/tags/tools/">Tools</a>.</p>
</div>
]]></content>
    <link rel="alternate" href="https://www.grizzlebit.com/posts/2025/04-23-a-raycast-extension-to-search-my-blog/"></link>
    <link rel="related" href="https://www.grizzlebit.com/posts/2025/04-23-a-raycast-extension-to-search-my-blog/"></link>
    
  </entry>
  
  <entry>
    <id>https://www.grizzlebit.com/links/2025/04-11-graft/</id>
    <published>2025-04-11T08:50:50+08:00</published>
    <updated>2025-04-11T08:52:27+08:00</updated>
    <author><name>Ray Grasso</name></author>
    
    <title>Graft ↬</title>
    <content type="html" xml:base="https://www.grizzlebit.com/links/" xml:lang="en"><![CDATA[<div>
  <p>A replication focused storage engine.</p>

  <p>
    
    <a href="https://www.grizzlebit.com/links/2025/04-11-graft/">↬</a>
     ∙ Tagged in <a href="https://www.grizzlebit.com/tags/programming/">Programming</a>, <a href="https://www.grizzlebit.com/tags/tools/">Tools</a>.</p>
</div>
]]></content>
    <link rel="alternate" href="https://sqlsync.dev/posts/stop-syncing-everything/"></link>
    <link rel="related" href="https://www.grizzlebit.com/links/2025/04-11-graft/"></link>
    
  </entry>
  
  <entry>
    <id>https://www.grizzlebit.com/links/2025/03-18-how-simon-willison-uses-llms-to-help-him-write-code/</id>
    <published>2025-03-18T12:55:36+08:00</published>
    <updated>2025-03-18T12:56:50+08:00</updated>
    <author><name>Ray Grasso</name></author>
    
    <title>How Simon Willison Uses LLMs to Help Him Write Code ↬</title>
    <content type="html" xml:base="https://www.grizzlebit.com/links/" xml:lang="en"><![CDATA[<div>
  <p>Simon Willison:</p>
<blockquote>
<p>Using LLMs to write code is difficult and unintuitive. It takes significant effort to figure out the sharp and soft edges of using them in this way, and there’s precious little guidance to help people figure out how best to apply them.</p>
<p>If someone tells you that coding with LLMs is easy they are (probably unintentionally) misleading you. They may well have stumbled on to patterns that work, but those patterns do not come naturally to everyone.</p>
<p>I’ve been getting great results out of LLMs for code for over two years now. Here’s my attempt at transferring some of that experience and intuition to you.</p></blockquote>

  <p>
    
    <a href="https://www.grizzlebit.com/links/2025/03-18-how-simon-willison-uses-llms-to-help-him-write-code/">↬</a>
     ∙ Tagged in <a href="https://www.grizzlebit.com/tags/ai/">AI</a>, <a href="https://www.grizzlebit.com/tags/tools/">Tools</a>.</p>
</div>
]]></content>
    <link rel="alternate" href="https://simonwillison.net/2025/Mar/11/using-llms-for-code/"></link>
    <link rel="related" href="https://www.grizzlebit.com/links/2025/03-18-how-simon-willison-uses-llms-to-help-him-write-code/"></link>
    
  </entry>
  
  <entry>
    <id>https://www.grizzlebit.com/links/2025/03-13-how-core-git-developers-configure-git/</id>
    <published>2025-03-13T12:16:22+08:00</published>
    <updated>2025-03-13T12:17:02+08:00</updated>
    <author><name>Ray Grasso</name></author>
    
    <title>How Core Git Developers Configure Git ↬</title>
    <content type="html" xml:base="https://www.grizzlebit.com/links/" xml:lang="en"><![CDATA[<div>
  <p>Some nice tips in this.</p>

  <p>
    
    <a href="https://www.grizzlebit.com/links/2025/03-13-how-core-git-developers-configure-git/">↬</a>
     ∙ Tagged in <a href="https://www.grizzlebit.com/tags/software-engineering/">Software Engineering</a>, <a href="https://www.grizzlebit.com/tags/tools/">Tools</a>.</p>
</div>
]]></content>
    <link rel="alternate" href="https://blog.gitbutler.com/how-git-core-devs-configure-git/"></link>
    <link rel="related" href="https://www.grizzlebit.com/links/2025/03-13-how-core-git-developers-configure-git/"></link>
    
  </entry>
  
  <entry>
    <id>https://www.grizzlebit.com/posts/2024/10-19-macos-apps-i-use/</id>
    <published>2024-10-19T09:40:44+10:00</published>
    <updated>2024-11-30T14:41:13+10:00</updated>
    <author><name>Ray Grasso</name></author>
    
    <title>macOS Apps I Use</title>
    <content type="html" xml:base="https://www.grizzlebit.com/posts/" xml:lang="en"><![CDATA[<div>
  <p>Time for another rundown post. Here are a bunch of macOS apps I use. You&rsquo;ll see some entries from my previous <a href="/posts/2024/10-12-iphone-apps-i-use/">iOS apps post</a> mentioned.</p>
<h2 id="productivity">Productivity</h2>
<p><a href="https://apps.apple.com/au/app/day-one/id1055511498">DayOne</a> - Where I journal.</p>
<p><a href="https://apps.apple.com/au/app/noteplan-to-do-list-notes/id1505432629">NotePlan</a> - My knowledge base for work. It uses plain Markdown files and has calendar-based notes which suit my workflow. I&rsquo;ve used it for task management too, but don&rsquo;t anymore. It&rsquo;s just a searchable knowledge base of work notes and references for me.</p>
<p><a href="https://www.alfredapp.com">Alfred</a> - My quick launcher for apps and custom workflows I&rsquo;ve collected and written. My workflow collection warrants a separate post.</p>
<p><a href="https://apps.apple.com/au/app/things-3/id904280696">Things</a> - Where I track everything I want to do at work and at home. Syncs to my phone which is essential.</p>
<p><a href="https://apps.apple.com/au/app/bear-markdown-notes/id1091189122">Bear</a> - My note taking and personal knowledge base. I keep work specific notes in NotePlan rather than here.</p>
<p><a href="https://apps.apple.com/au/app/mindnode-mind-map-outline/id1289197285">MindNode</a> - A clean mind mapping tool. Sometimes I find the spacial nature of mindmapping helps me structure my thoughts.</p>
<p><a href="https://flexibits.com/fantastical">Fantastical</a> - A calendar that shows my iCloud and Google calendars together. It&rsquo;s getting a bit pricey for what I use it for so it may not make it past its next subscription cycle renewal.</p>
<p><a href="https://mimestream.com">MimeStream</a> - A native GMail client. Goes good.</p>
<p><a href="https://www.hogbaysoftware.com/bike/">Bike</a> - I swear the only reason I use this outliner is because of its delightful animations. I wish this UI was embedded in NotePlan.</p>
<p><a href="https://apps.apple.com/au/app/ulysses-writing-app/id1225570693">Ulysses</a> - Good for long form writing. I do less and less of this so am struggling to justify the subscription cost.</p>
<p><a href="https://monodraw.helftone.com">Monodraw</a> - I love ASCII art.</p>
<h2 id="web-browsing-and-plug-ins">Web browsing and plug-ins</h2>
<p><a href="https://www.apple.com/au/safari/">Safari</a> and <a href="https://www.google.com/chrome/">Chrome</a> - I use Chrome for work as it enables a bunch of features in the Google Suite. I to keep my personal browsing separate so I use use Safari for that. I use <a href="https://choosy.app">Choosy</a> on my work machine to route common sites accordingly. I don&rsquo;t use Chrome at all on my personal laptop. I gave <a href="https://arc.net">Arc</a> a crack for a while instead of Safari, it was kinda cool but ultimately not worth the battery drain.</p>
<p><a href="https://apps.apple.com/au/app/1blocker-ad-blocker/id1365531024">1Blocker</a> - Ad blocker for Safari.</p>
<p><a href="https://apps.apple.com/au/app/stopthemadness/id1376402589">StopTheMadness</a> - Deal with a bunch of annoying stuff on the web.</p>
<p><a href="https://apps.apple.com/au/app/kagi-for-safari/id1622835804">Kagi Search</a> - Supporting the little guy.</p>
<p><a href="https://apps.apple.com/au/app/supercopy-for-safari/id6477720316">Supercopy</a> - Provides a hot key to copy links (I loved this on Arc).</p>
<p><a href="https://apps.apple.com/au/app/instapaper/id288545208">Instapaper</a> - My read later service of choice.</p>
<h2 id="music-and-video">Music and video</h2>
<p><a href="https://www.spotify.com">Spotify</a> - This cops a hiding.</p>
<p><a href="https://music.apple.com/">Apple Music</a> - I still have a bunch of my music in Apple Music (via iTunes Match) so I sometimes play music here. I use <a href="https://apps.apple.com/au/app/neptunes-for-itunes-spotify/id1006739057">NepTunes</a> to scrobble from Apple Music to <a href="https://www.last.fm/user/raygrasso">Last.fm</a>.</p>
<p><a href="https://apps.apple.com/au/app/musicbox-save-music-for-later/id1614730313">MusicBox</a> - I save albums in here to listen to later.</p>
<p><a href="https://www.videolan.org/vlc/">VLC</a> - O.G. video player.</p>
<p><a href="https://apps.apple.com/au/app/play-save-videos-watch-later/id1596506190">Play</a> - I save online videos in here to watch later. The Apple TV and iPad companion apps are killer.</p>
<p><a href="https://apps.apple.com/au/app/dark-noise-ambient-sounds/id1465439395">DarkNoise</a> - A white noise app. Goes great with over ear headphones.</p>
<h2 id="other-internet-reading">Other internet reading</h2>
<p><a href="https://apps.apple.com/au/app/unread-an-rss-reader/id1363637349">Unread</a> - Viva la RSS.</p>
<p><a href="https://apps.apple.com/au/app/ivory-for-mastodon-by-tapbots/id6444602274">Ivory</a> - For trawling <a href="https://aus.social/@grassdog">Mastodon</a>.</p>
<h2 id="coding">Coding</h2>
<p><a href="https://iterm2.com">iTerm</a> - Still a solid terminal, though <a href="https://www.warp.dev">Warp</a> looks like a fresh approach.</p>
<p><a href="https://code.visualstudio.com">VSCode</a> - I didn&rsquo;t see a Chromium tool winning but here we are. I like the vibes of <a href="https://zed.dev">Zed</a> but <a href="https://code.visualstudio.com/docs/devcontainers/create-dev-container">dev containers</a> keep me on VSCode.</p>
<p><a href="https://neovim.io">NeoVim</a> - This old Vim guy still throws up some motions in a terminal from time to time.</p>
<p><a href="https://orbstack.dev">OrbStack</a> - A nice way to run Docker containers.</p>
<p><a href="https://eggerapps.at/postico2/">Postico</a> - A solid Postgres client.</p>
<p><a href="https://git-fork.com">Fork</a> - I mostly use this Git client to stage partial lines and, increasingly, to rebase commits.</p>
<h2 id="photography">Photography</h2>
<p><a href="https://www.adobe.com/au/products/photoshop-lightroom-classic.html">Lightroom Classic</a> - This is where I manage and process the majority of my photos.</p>
<p><a href="https://www.adobe.com/au/products/photoshop.html">Photoshop</a> - For those times you need finer grained processing.</p>
<p><a href="https://www.topazlabs.com/topaz-photo-ai">Topaz Photo AI</a> - Mostly used for upscaling old photos and noise reduction. With that said, the noise reduction that&rsquo;s been added to Lightroom is pretty good so I might retire this sucker.</p>
<h2 id="utilities">Utilities</h2>
<p><a href="https://1password.com">1Password</a> - My password and secrets manager.</p>
<p><a href="https://manytricks.com/moom/">Moom</a> - Adds a bit of window management for when I&rsquo;m using an external monitor.</p>
<p><a href="https://karabiner-elements.pqrs.org">Karabiner Elements</a> - Lets me <a href="/posts/2020/06-10-hyper-keys-and-mouse-buttons-with-karabiner">customise my keyboard and mouse</a>.</p>
<p>Apple Shortcuts - Handy for automation and gluing things together. Pairs well with Alfred.</p>
<p><a href="https://www.expressvpn.com">ExpressVPN</a> - 🕵️‍♂️</p>
<p><a href="https://soulver.app">Soulver</a> - Notes and calculations in one spot.</p>
<p><a href="https://cleanshot.com">CleanShot X</a> - Slick screenshots.</p>

  <p>
    
    <a href="https://www.grizzlebit.com/posts/2024/10-19-macos-apps-i-use/">🔗</a>
     ∙ Tagged in <a href="https://www.grizzlebit.com/tags/recommendations/">Recommendations</a>, <a href="https://www.grizzlebit.com/tags/software/">Software</a>, <a href="https://www.grizzlebit.com/tags/tools/">Tools</a>.</p>
</div>
]]></content>
    <link rel="alternate" href="https://www.grizzlebit.com/posts/2024/10-19-macos-apps-i-use/"></link>
    <link rel="related" href="https://www.grizzlebit.com/posts/2024/10-19-macos-apps-i-use/"></link>
    
  </entry>
  
  <entry>
    <id>https://www.grizzlebit.com/posts/2024/10-12-iphone-apps-i-use/</id>
    <published>2024-10-12T16:16:36+10:00</published>
    <updated>2024-11-04T09:50:52+10:00</updated>
    <author><name>Ray Grasso</name></author>
    
    <title>iPhone Apps I Use</title>
    <content type="html" xml:base="https://www.grizzlebit.com/posts/" xml:lang="en"><![CDATA[<div>
  <p>I love finding out about what apps other folks use so I thought I&rsquo;d give a rundown on what&rsquo;s on my iPhone.</p>
<h2 id="health-and-fitness">Health and fitness</h2>
<p><a href="https://apps.apple.com/au/app/meditation-timer-zenitizer/id6444767911">Zenitizer</a> - A meditation timer that can play some white noise and throw up chimes on a custom interval. Most of the other meditation apps are junky or have a bunch of courses in them and cost a bunch more.</p>
<p><a href="https://apps.apple.com/au/app/macrofactor-macro-tracker/id1553503471">MacroFactor</a> - A calorie tracker app that has a nicer UX than <a href="https://www.myfitnesspal.com">MyFitnessPal</a>. Remember kids, you can&rsquo;t outrun your mouth.</p>
<p><a href="https://apps.apple.com/au/app/hevy-workout-tracker-gym-log/id1458862350">Hevy</a> - Fairly simple way to track strength workouts. The Apple Watch companion app is solid.</p>
<p><a href="https://apps.apple.com/au/app/fitbod-workout-gym-planner/id1041517543">Fitbod</a> - I&rsquo;m not using it at the moment, but if you want an app to suggest workouts based upon equipment you have to hand that has good Apple Watch integration, this is great.</p>
<h2 id="photography">Photography</h2>
<p><a href="https://apps.apple.com/au/app/darkroom-photo-video-editor/id953286746">Darkroom</a> - I like how this edits photos in place non-destructively. There&rsquo;s decent variety in its preset community. <a href="https://apps.apple.com/au/app/lightroom-photo-video-editor/id878783582">Lightroom</a> has better masking and noise reduction options which is sometimes helpful.</p>
<p><a href="https://apps.apple.com/au/app/touchretouch/id373311252">Retouch</a> - When I want to spot remove blemishes, this app does a bang up job.</p>
<p><a href="https://apps.apple.com/au/app/halide-mark-ii-pro-camera/id885697368">Halide</a> - Manual shooting controls, and now with <a href="https://www.lux.camera/process-zero-manual/">Process Zero</a>, less processed raw images.</p>
<p><a href="https://apps.apple.com/au/app/google-photos/id962194608">Google Photos</a> - I use this mostly as a second photo library backup (after Apple Photos). The search is better than Apple photos (duh) and the geographic heatmap view is fun.</p>
<p><a href="https://apps.apple.com/au/app/leica-fotos/id1356061526">Leica</a> and <a href="https://apps.apple.com/au/app/fujifilm-xapp/id1586089681">Fuji</a> apps - Mostly used for pairing with my cameras so I can tag GPS coordinates as I shoot.</p>
<p><a href="https://apps.apple.com/au/app/lumy/id908905093">Lumy</a> - A nice, sanely priced, golden hour tracker.</p>
<p><a href="https://apps.apple.com/au/app/kino-pro-video-camera/id6472380172">Kino</a> - Doofus-proof colour grading and anti shake are baked into this video camera.</p>
<h2 id="reading">Reading</h2>
<p><a href="https://apps.apple.com/au/app/instapaper/id288545208">Instapaper</a> - The O.G. read-it-later app for me. It&rsquo;s still where I read and highlight the most.</p>
<p><a href="https://apps.apple.com/au/app/unread-an-rss-reader/id1363637349">Unread</a> - My RSS feed reader. I use <a href="https://feedbin.com">Feedbin</a> as a backend. I use Unread to scan through my RSS feeds and triage articles I want to read. The ones I like, I send to Instapaper.</p>
<p><a href="https://apps.apple.com/au/app/kindle/id302584613">Kindle</a> and <a href="https://apps.apple.com/au/app/audible-audiobooks-podcasts/id379693831">Audible</a> - I read or listen to most of my books here. Though, now that Spotify premium offers 15 hours a month of audiobook listening, I&rsquo;m using that more. With that said, the Audible interface is way better.</p>
<p><a href="https://apps.apple.com/au/app/oreilly/id881697395">O&rsquo;Reilly</a> - I have an O&rsquo;Reilly subscription through work so I read some technical work on here.</p>
<p><a href="https://apps.apple.com/au/app/readwise/id1476885528">Readwise</a> - I&rsquo;m on a grandfathered plan from the beta. I pump my Kindle and Instapaper highlights into this. The daily review feature in this app is like having flashcards for them.</p>
<p><a href="https://apps.apple.com/au/app/the-economist-news-podcasts/id1239397626">The Economist</a> - I read the &ldquo;World in brief&rdquo; most days to catch up on what&rsquo;s happening around the traps.</p>
<p><a href="https://apps.apple.com/au/app/storygraph-reading-tracker/id1570489264">StoryGraph</a> - I&rsquo;m trying this to track the books I want to read. It&rsquo;s a bit clunky but does the job.</p>
<h2 id="music-and-podcasts">Music and Podcasts</h2>
<p><a href="https://apps.apple.com/au/app/spotify-get-music-podcasts/id324684580">Spotify</a> - My music subscription service of choice. I kick off most work weeks with my &ldquo;Discover Weekly&rdquo; playlist. Spotify&rsquo;s recommendations continue to throw up things I haven&rsquo;t heard before that I like.</p>
<p><a href="https://apps.apple.com/au/app/marvis-pro/id1447768809">Marvis</a> - I still have a bunch of music uploaded to Apple Music via iTunes Match. Marvis is a nice player for my Apple Music library. It includes <a href="https://www.last.fm/user/raygrasso">Last.fm scrobbling</a> and lyrics viewing which is handy.</p>
<p><a href="https://apps.apple.com/au/app/overcast/id888422857">Overcast</a> - My podcasting app of choice for years now. The Smart Speed feature is still killer.</p>
<p><a href="https://apps.apple.com/au/app/musicbox-save-music-for-later/id1614730313">MusicBox</a> - I track albums I want to listen to in here.</p>
<p><a href="https://apps.apple.com/au/app/dark-noise-ambient-sounds/id1465439395">Dark Noise</a> - A white noise app for those times I need to lock into some work. Headphones on and fire up one of the mixes I&rsquo;ve made.</p>
<h2 id="productivity-and-miscellaneous">Productivity and Miscellaneous</h2>
<p><a href="https://apps.apple.com/au/app/things-3/id904237743">Things</a> - Where I track everything I want to do at work and at home. Syncs to my Mac and iPad which is essential.</p>
<p><a href="https://apps.apple.com/au/app/bear-markdown-notes/id1016366447">Bear</a> - My note taking and personal knowledge base. The UI is slick and the search and tagging works.</p>
<p><a href="https://apps.apple.com/au/app/gmail-email-by-google/id422689480">Gmail</a> - I use Gmail for work and personal email so the standard app from Google makes sense.</p>
<p><a href="https://apps.apple.com/au/app/google-calendar-get-organised/id909319292">Google Calendar</a> - Somehow this is the best calendar app I&rsquo;ve found. It handles iCloud calendars and Google calendars (for work) in one place well.</p>
<p><a href="https://apps.apple.com/au/app/day-one-journal-private-diary/id1044867788">Day One</a> - I&rsquo;ve been journaling in this for something like 13 years. I love it. The &ldquo;On this day&rdquo; view surfaces up something interesting most days.</p>
<p><a href="https://apps.apple.com/au/app/mela-recipe-manager/id1548466041">Mela</a> - A nicely designed app for saving recipes.</p>
<p><a href="https://apps.apple.com/au/app/1password-password-manager/id1511601750">1Password</a> - I still use this for passwords and secrets for work and the family.</p>
<p><a href="https://apps.apple.com/au/app/swiftscan-ai-document-scanner/id834854351">SwiftScan</a> - It&rsquo;s getting a bit pushy with upgrading but this base version still works a treat when it comes to scanning receipts or documents.</p>
<p><a href="https://apps.apple.com/au/app/soulver-3/id1508732804">Soulver</a> - In the venn diagram between a calculator and a spreadsheet.</p>
<h2 id="stock-apple-apps">Stock Apple apps</h2>
<p>Apple Photos - I export at least a JPG of all my photos here. The photo widget and Apple TV screensaver reliably bring me joy with the photos they surface.</p>
<p>Camera - This is the camera I use the most.</p>
<p>Apple Maps - The maps have gotten good and I prefer its turn-by-turn guidance over Google Maps.</p>
<p>Fitness and Health - I track all my workouts, activity, and sleep in here. Absolutes can be off but the trends are good to pay attention to.</p>
<p>Shortcuts - This hits me in the soft futzing centres of my soul. I enjoy gluing stuff together and making accessing apps easier.</p>

  <p>
    
    <a href="https://www.grizzlebit.com/posts/2024/10-12-iphone-apps-i-use/">🔗</a>
     ∙ Tagged in <a href="https://www.grizzlebit.com/tags/recommendations/">Recommendations</a>, <a href="https://www.grizzlebit.com/tags/software/">Software</a>, <a href="https://www.grizzlebit.com/tags/tools/">Tools</a>.</p>
</div>
]]></content>
    <link rel="alternate" href="https://www.grizzlebit.com/posts/2024/10-12-iphone-apps-i-use/"></link>
    <link rel="related" href="https://www.grizzlebit.com/posts/2024/10-12-iphone-apps-i-use/"></link>
    
  </entry>
  
  <entry>
    <id>https://www.grizzlebit.com/links/2023/12-09-rewind.ai/</id>
    <published>2023-12-09T09:37:37+08:00</published>
    <updated>2024-11-04T09:50:52+10:00</updated>
    <author><name>Ray Grasso</name></author>
    
    <title>Rewind.ai ↬</title>
    <content type="html" xml:base="https://www.grizzlebit.com/links/" xml:lang="en"><![CDATA[<div>
  <p>Privacy concerns aside, this has me intrigued.</p>

  <p>
    
    <a href="https://www.grizzlebit.com/links/2023/12-09-rewind.ai/">↬</a>
     ∙ Tagged in <a href="https://www.grizzlebit.com/tags/knowledge-management/">Knowledge Management</a>, <a href="https://www.grizzlebit.com/tags/software/">Software</a>, <a href="https://www.grizzlebit.com/tags/tools/">Tools</a>.</p>
</div>
]]></content>
    <link rel="alternate" href="https://www.rewind.ai/"></link>
    <link rel="related" href="https://www.grizzlebit.com/links/2023/12-09-rewind.ai/"></link>
    
  </entry>
  
  <entry>
    <id>https://www.grizzlebit.com/posts/2023/08-01-getting-through-my-reading-queue-with-kagi/</id>
    <published>2023-08-01T18:48:59+08:00</published>
    <updated>2023-08-13T16:05:40+08:00</updated>
    <author><name>Ray Grasso</name></author>
    
    <title>Getting Through My Reading Queue With Kagi</title>
    <content type="html" xml:base="https://www.grizzlebit.com/posts/" xml:lang="en"><![CDATA[<div>
  <p>I&rsquo;m a sicko for <a href="/posts/2023/05-28-internet-trawling/">trawling the internet</a> and loading up <a href="https://www.instapaper.com">Instapaper</a> with things to read later.</p>
<p>Which means, you&rsquo;ll be shocked to hear, my reading queue can get large and unmanageble.</p>
<p>Longer articles tend to stay in the queue unread for quite a while.</p>
<p>Often, as with <a href="https://gettingthingsdone.com/">my productivity system</a>, I&rsquo;ll declare read later bankruptcy, archive a bunch of the stale articles, and walk away a little disappointed in myself.</p>
<p><a href="https://kagi.com/summarizer/index.html">Kagi&rsquo;s Universal Summariser</a> to the rescue!</p>
<p>Now, when I scroll through my queue and see those intransient &ldquo;40 minutes to read&rdquo; articles, I put their URL into the Kagi summariser.</p>
<p>If the concise summary it provides piques my interest I&rsquo;ll ask for the key moments summary.</p>
<p>Then…I&rsquo;ll usually still archive it. But! I feel a little better about life. 😎</p>

  <p>
    
    <a href="https://www.grizzlebit.com/posts/2023/08-01-getting-through-my-reading-queue-with-kagi/">🔗</a>
     ∙ Tagged in <a href="https://www.grizzlebit.com/tags/reading/">Reading</a>, <a href="https://www.grizzlebit.com/tags/tools/">Tools</a>.</p>
</div>
]]></content>
    <link rel="alternate" href="https://www.grizzlebit.com/posts/2023/08-01-getting-through-my-reading-queue-with-kagi/"></link>
    <link rel="related" href="https://www.grizzlebit.com/posts/2023/08-01-getting-through-my-reading-queue-with-kagi/"></link>
    
  </entry>
  
  <entry>
    <id>https://www.grizzlebit.com/posts/2023/07-23-killing-clickbait/</id>
    <published>2023-07-23T11:44:51+08:00</published>
    <updated>2024-11-04T09:50:52+10:00</updated>
    <author><name>Ray Grasso</name></author>
    
    <title>Killing Clickbait</title>
    <content type="html" xml:base="https://www.grizzlebit.com/posts/" xml:lang="en"><![CDATA[<div>
  <p>One of my favourite features of <a href="https://artifact.news/">Artifact</a> is the ability to <a href="https://medium.com/artifact-news/clickbait-rewriting-on-artifact-behind-the-scenes-5e3d0971383">use machine learning to replace clickbait titles</a>.</p>
<p>It&rsquo;s good that you can trigger it from the listing page so that you can choose whether it&rsquo;s worth reading an article or not.</p>
<p>It&rsquo;s great that if enough people report the same article, a human reviewer may decide to make it the default title for all Artifact users.</p>
<p>It&rsquo;s a very helpful feature for <a href="/links">internet trawlers such as myself</a>.</p>

  <p>
    
    <a href="https://www.grizzlebit.com/posts/2023/07-23-killing-clickbait/">🔗</a>
     ∙ Tagged in <a href="https://www.grizzlebit.com/tags/internet/">Internet</a>, <a href="https://www.grizzlebit.com/tags/tools/">Tools</a>.</p>
</div>
]]></content>
    <link rel="alternate" href="https://www.grizzlebit.com/posts/2023/07-23-killing-clickbait/"></link>
    <link rel="related" href="https://www.grizzlebit.com/posts/2023/07-23-killing-clickbait/"></link>
    
  </entry>
  
  <entry>
    <id>https://www.grizzlebit.com/links/2023/07-08-how-ryan-singer-uses-omnigraffle/</id>
    <published>2023-07-08T20:14:17+08:00</published>
    <updated>2024-11-04T09:50:52+10:00</updated>
    <author><name>Ray Grasso</name></author>
    
    <title>How Ryan Singer Uses OmniGraffle ↬</title>
    <content type="html" xml:base="https://www.grizzlebit.com/links/" xml:lang="en"><![CDATA[<div>
  <p>Ryan emphasizes the effectiveness of the copy-paste method in rapidly exploring alternate options.</p>
<p>He also mentions some shaping and analysis tools including <a href="https://www.mindtools.com/aoxpu31/interrelationship-diagrams">Interrelationship diagrams</a> and <a href="https://jtbd.info/may-the-forces-diagram-be-with-you-always-applying-jtbd-everywhere-b1b325b50df3">Jobs To Be Done (JTBD) Four Forces Diagrams</a>.</p>
<p>A key point that struck a chord with me was his perspective on multiplayer tools like Miro. These tools are primarily valuable during simultaneous brainstorming processes like retrospectives.</p>
<p>Actual shaping typically involves a collective thought process, with a single individual transcribing the outcomes. This concept holds true even when using traditional methods like a whiteboard.</p>

  <p>
    
    <a href="https://www.grizzlebit.com/links/2023/07-08-how-ryan-singer-uses-omnigraffle/">↬</a>
     ∙ Tagged in <a href="https://www.grizzlebit.com/tags/design/">Design</a>, <a href="https://www.grizzlebit.com/tags/software/">Software</a>, <a href="https://www.grizzlebit.com/tags/tools/">Tools</a>.</p>
</div>
]]></content>
    <link rel="alternate" href="https://theomnishow.omnigroup.com/episode/how-ryan-singer-uses-omnigraffle/"></link>
    <link rel="related" href="https://www.grizzlebit.com/links/2023/07-08-how-ryan-singer-uses-omnigraffle/"></link>
    
  </entry>
  
  <entry>
    <id>https://www.grizzlebit.com/posts/2023/05-28-internet-trawling/</id>
    <published>2023-05-28T11:17:39+08:00</published>
    <updated>2024-11-04T09:50:52+10:00</updated>
    <author><name>Ray Grasso</name></author>
    
    <title>Internet Trawling</title>
    <content type="html" xml:base="https://www.grizzlebit.com/posts/" xml:lang="en"><![CDATA[<div>
  <p>I spend too much time reading online.</p>
<p>I tend to trawl content from a variety of sources, save the shiny ones in <a href="https://instapaper.com">Instapaper</a>, and read them later.</p>
<p>The majority of the articles I read are sourced from <a href="https://feedbin.com/">RSS feeds in Feedbin</a>. I&rsquo;ve organized these feeds into three categories: &lsquo;full read&rsquo;, &lsquo;skimmable&rsquo;, and &lsquo;skippable&rsquo;. This system means that if I ever feel overwhelmed by the volume of content, I can quickly mark a large number of articles as read and move on with life.</p>
<p>I like to complement these feeds with articles from elsewhere. I used to route specific Twitter accounts into Feedbin for this but <a href="https://feedbin.com/blog/2023/03/30/twitter-access-revoked/">that option is gone since the Twitter API &lsquo;asplosion</a><sup id="fnref:1"><a href="#fn:1" class="footnote-ref" role="doc-noteref">1</a></sup>.</p>
<p>Around the same time as that feature disappeared I started using <a href="https://artifact.news/">Artifact</a>. It&rsquo;s from the founders of Instagram and the early development cycle has been impressive. At its core is a machine curated personalised news feed<sup id="fnref:2"><a href="#fn:2" class="footnote-ref" role="doc-noteref">2</a></sup>. The recommendation engine feels like it still has room for improvement, I&rsquo;d love to be presented with more &ldquo;surprising&rdquo; articles, but it still manages to throw the odd interesting articles into the mix. Using it feels like panning for gold.</p>
<div class="footnotes" role="doc-endnotes">
<hr>
<ol>
<li id="fn:1">
<p><a href="https://aus.social/@grassdog">Mastodon</a> has taken up the Twitter link mantle somewhat.&#160;<a href="#fnref:1" class="footnote-backref" role="doc-backlink">&#x21a9;&#xfe0e;</a></p>
</li>
<li id="fn:2">
<p>I don&rsquo;t use the social features though it&rsquo;s clear that&rsquo;s where its focus is heading.&#160;<a href="#fnref:2" class="footnote-backref" role="doc-backlink">&#x21a9;&#xfe0e;</a></p>
</li>
</ol>
</div>

  <p>
    
    <a href="https://www.grizzlebit.com/posts/2023/05-28-internet-trawling/">🔗</a>
     ∙ Tagged in <a href="https://www.grizzlebit.com/tags/reading/">Reading</a>, <a href="https://www.grizzlebit.com/tags/software/">Software</a>, <a href="https://www.grizzlebit.com/tags/tools/">Tools</a>.</p>
</div>
]]></content>
    <link rel="alternate" href="https://www.grizzlebit.com/posts/2023/05-28-internet-trawling/"></link>
    <link rel="related" href="https://www.grizzlebit.com/posts/2023/05-28-internet-trawling/"></link>
    
  </entry>
  
  <entry>
    <id>https://www.grizzlebit.com/posts/2023/05-28-photoshop-generative-fill/</id>
    <published>2023-05-28T09:41:21+08:00</published>
    <updated>2024-11-04T09:50:52+10:00</updated>
    <author><name>Ray Grasso</name></author>
    
    <title>Photoshop Generative Fill</title>
    <content type="html" xml:base="https://www.grizzlebit.com/posts/" xml:lang="en"><![CDATA[<div>
  <p>The latest version of <a href="https://blog.adobe.com/en/publish/2023/05/23/future-of-photoshop-powered-by-adobe-firefly">Photoshop Beta now includes a feature called generative fill</a>.</p>
<p>I can imagine it&rsquo;s easy to compromise the authenticity in your photography if you overuse these kinds of tools. With that said, and I know it&rsquo;s potentially a slippery slide, there are situations where they can be incredibly useful.</p>
<p>For instance, I sometimes want to adjust a crop and need to fill in some areas to maintain the balance of the composition, and my Photoshop pixel-surfing chops aren&rsquo;t up to the task.</p>
<p>I had a crack at using generative fill on a photo I recently took that I wished had more foreground.</p>
<figure class="solid-border"><img src="/images/street-photo-before.png"><figcaption>
      <h4>The photo as shot with the canvas expanded to make room for more foreground.</h4>
    </figcaption>
</figure>

<figure class="solid-border"><img src="/images/street-photo-after.png"><figcaption>
      <h4>The photo with extra foreground filled in by the default generative fill prompt.</h4>
    </figcaption>
</figure>

<p>The results look usable.</p>
<p>I also tried a prompt that removed the shadow on the left but the results of that were less natural.</p>
<p>Experimenting with various prompts and browsing their outcomes is far more enjoyable than swearing at the healing and clone brush tools 😂.</p>

  <p>
    
    <a href="https://www.grizzlebit.com/posts/2023/05-28-photoshop-generative-fill/">🔗</a>
     ∙ Tagged in <a href="https://www.grizzlebit.com/tags/ai/">AI</a>, <a href="https://www.grizzlebit.com/tags/photography/">Photography</a>, <a href="https://www.grizzlebit.com/tags/software/">Software</a>, <a href="https://www.grizzlebit.com/tags/tools/">Tools</a>.</p>
</div>
]]></content>
    <link rel="alternate" href="https://www.grizzlebit.com/posts/2023/05-28-photoshop-generative-fill/"></link>
    <link rel="related" href="https://www.grizzlebit.com/posts/2023/05-28-photoshop-generative-fill/"></link>
    
  </entry>
  
  <entry>
    <id>https://www.grizzlebit.com/links/2023/05-07-chatgpt-as-a-calculator-for-words/</id>
    <published>2023-05-07T10:12:48+08:00</published>
    <updated>2023-05-07T10:16:37+08:00</updated>
    <author><name>Ray Grasso</name></author>
    
    <title>ChatGPT as a Calculator for Words ↬</title>
    <content type="html" xml:base="https://www.grizzlebit.com/links/" xml:lang="en"><![CDATA[<div>
  <blockquote>
<p>The ChatGPT model is huge, but it’s not huge enough to retain every exact fact it’s encountered in its training set.</p>
<p>It can produce a convincing answer to anything, but that doesn’t mean it’s reflecting actual facts in its answers. You always have to stay skeptical and fact check what it tells you.</p></blockquote>
<p>…</p>
<blockquote>
<p>I like to think of language models like ChatGPT as a calculator for words.</p>
<p>This is reflected in their name: a “language model” implies that they are tools for working with language. That’s what they’ve been trained to do, and it’s language manipulation where they truly excel.</p></blockquote>
<p>The post includes a list of language manipulations you can try.</p>

  <p>
    
    <a href="https://www.grizzlebit.com/links/2023/05-07-chatgpt-as-a-calculator-for-words/">↬</a>
     ∙ Tagged in <a href="https://www.grizzlebit.com/tags/ai/">AI</a>, <a href="https://www.grizzlebit.com/tags/tools/">Tools</a>.</p>
</div>
]]></content>
    <link rel="alternate" href="https://simonwillison.net/2023/Apr/2/calculator-for-words/"></link>
    <link rel="related" href="https://www.grizzlebit.com/links/2023/05-07-chatgpt-as-a-calculator-for-words/"></link>
    
  </entry>
  
  <entry>
    <id>https://www.grizzlebit.com/links/2023/05-05-new-instapaper-features/</id>
    <published>2023-05-05T13:35:33+08:00</published>
    <updated>2025-08-07T08:14:41+08:00</updated>
    <author><name>Ray Grasso</name></author>
    
    <title>New Instapaper Features ↬</title>
    <content type="html" xml:base="https://www.grizzlebit.com/links/" xml:lang="en"><![CDATA[<div>
  <p>I might start working through my Instapaper queue in the car now that it supports CarPlay.</p>
<p>Editing titles on posts on mobile is something I&rsquo;ve wanted for ages too, so that&rsquo;s a win.</p>

  <p>
    
    <a href="https://www.grizzlebit.com/links/2023/05-05-new-instapaper-features/">↬</a>
     ∙ Tagged in <a href="https://www.grizzlebit.com/tags/tools/">Tools</a>.</p>
</div>
]]></content>
    <link rel="alternate" href="https://blog.instapaper.com/post/716397810350784513"></link>
    <link rel="related" href="https://www.grizzlebit.com/links/2023/05-05-new-instapaper-features/"></link>
    
  </entry>
  
</feed>
