<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title>Benjamin Gammage</title>
  <subtitle>Benjamin Gammage's personal notes on technology, business, AI, data, and other interests</subtitle>
  <link href="https://benjamingammage.com/" rel="alternate" type="text/html"/>
  <link href="https://benjamingammage.com/feed.xml" rel="self" type="application/atom+xml"/>
  <id>https://benjamingammage.com/</id>
  <updated>2026-10-06</updated>
  <author>
    <name>Benjamin Gammage</name>
  </author>
  <entry>
    <title>Website 4.0 - Benjamin Gammage</title>
    <link href="https://benjamingammage.com/blog/website-4-0/" rel="alternate" type="text/html"/>
    <id>https://benjamingammage.com/blog/website-4-0/</id>
    <published>2026-10-06</published>
    <updated>2026-10-06</updated>
    <summary>The site has gone through another redesign.</summary>
  </entry>
  <entry>
    <title>The Illusion of Choice - Benjamin Gammage</title>
    <link href="https://benjamingammage.com/blog/the-focus-paradox/" rel="alternate" type="text/html"/>
    <id>https://benjamingammage.com/blog/the-focus-paradox/</id>
    <published>2026-09-11</published>
    <updated>2026-09-11</updated>
    <summary>Why having infinite options turns into the perfect excuse to escape hard work</summary>
  </entry>
  <entry>
    <title>Creating an online identity - Benjamin Gammage</title>
    <link href="https://benjamingammage.com/blog/creating-an-online-identity/" rel="alternate" type="text/html"/>
    <id>https://benjamingammage.com/blog/creating-an-online-identity/</id>
    <published>2026-09-10</published>
    <updated>2026-09-10</updated>
    <summary>Why building an intentional online presence matters and how to approach it.</summary>
  </entry>
  <entry>
    <title>AI is the biggest marketing scam of my life - Benjamin Gammage</title>
    <link href="https://benjamingammage.com/blog/ai-biggest-marketing-scam/" rel="alternate" type="text/html"/>
    <id>https://benjamingammage.com/blog/ai-biggest-marketing-scam/</id>
    <published>2026-09-10</published>
    <updated>2026-09-10</updated>
    <summary>Nobody understands the technology and it shows, as people throw money at a technology that&#39;s not what they think it is.</summary>
  </entry>
  <entry>
    <title>Single-Page Research With Vanilla JS &amp;mdash; Benjamin Gammage</title>
    <link href="https://benjamingammage.com/blog/research-page-hybrid-approach/" rel="alternate" type="text/html"/>
    <id>https://benjamingammage.com/blog/research-page-hybrid-approach/</id>
    <published>2026-07-28</published>
    <updated>2026-07-28</updated>
    <summary>How I turned a collection of standalone report pages into a lightweight single-page research hub using vanilla JavaScript and a redirect-based hybrid architecture.</summary>
  </entry>
  <entry>
    <title>Website 3.0 - Benjamin Gammage</title>
    <link href="https://benjamingammage.com/blog/website-3-0/" rel="alternate" type="text/html"/>
    <id>https://benjamingammage.com/blog/website-3-0/</id>
    <published>2026-07-23</published>
    <updated>2026-07-23</updated>
    <summary>How I restructured my website from a portfolio into a research and projects platform.</summary>
  </entry>
  <entry>
    <title>Building a Personal Cloud with NixOS and a Raspberry Pi - Benjamin Gammage</title>
    <link href="https://benjamingammage.com/blog/building-a-personal-cloud-with-nixos/" rel="alternate" type="text/html"/>
    <id>https://benjamingammage.com/blog/building-a-personal-cloud-with-nixos/</id>
    <published>2026-07-15</published>
    <updated>2026-07-15</updated>
    <summary>Turning a Raspberry Pi into a self-hosted cloud with NixOS, Tailscale, and Gitea — private Git hosting, remote access, and full control over your data.</summary>
  </entry>
  <entry>
    <title>I Built a Budget App - Benjamin Gammage</title>
    <link href="https://benjamingammage.com/blog/i-built-a-budget-app/" rel="alternate" type="text/html"/>
    <id>https://benjamingammage.com/blog/i-built-a-budget-app/</id>
    <published>2026-07-11</published>
    <updated>2026-07-11</updated>
    <summary>Building gbudget, a personal CLI budget app that tracks income and expenses from the terminal with optional Obsidian vault integration.</summary>
  </entry>
  <entry>
    <title>Using Google Analytics to Shape Future Content &amp;amp; Business Ideas - Benjamin Gammage</title>
    <link href="https://benjamingammage.com/blog/google-analytics-content-direction/" rel="alternate" type="text/html"/>
    <id>https://benjamingammage.com/blog/google-analytics-content-direction/</id>
    <published>2026-07-08</published>
    <updated>2026-07-08</updated>
    <summary>How I&#39;m using Google Analytics data to decide which reports to write next and understand what actually interests people.</summary>
  </entry>
  <entry>
    <title>Learning Barriers with Investing Analysis - Benjamin Gammage</title>
    <link href="https://benjamingammage.com/blog/learning-barriers-investing-analysis/" rel="alternate" type="text/html"/>
    <id>https://benjamingammage.com/blog/learning-barriers-investing-analysis/</id>
    <published>2026-06-25</published>
    <updated>2026-06-25</updated>
    <summary>Working through the challenges of analysing BTC, gold and S&amp;P 500 data in Excel and what I learned about investing data along the way.</summary>
  </entry>
  <entry>
    <title>Excel Mini Series Project - Benjamin Gammage</title>
    <link href="https://benjamingammage.com/blog/my-excel-mini-series-project/" rel="alternate" type="text/html"/>
    <id>https://benjamingammage.com/blog/my-excel-mini-series-project/</id>
    <published>2026-06-22</published>
    <updated>2026-06-22</updated>
    <summary>A mini project series exploring data cleaning, analysis, and visualisation using Microsoft Excel.</summary>
  </entry>
  <entry>
    <title>Clean Learning with AI: My Rules for Self-Teaching - Benjamin Gammage</title>
    <link href="https://benjamingammage.com/blog/clean-learning-with-ai/" rel="alternate" type="text/html"/>
    <id>https://benjamingammage.com/blog/clean-learning-with-ai/</id>
    <published>2026-06-14</published>
    <updated>2026-06-14</updated>
    <summary>The mental model I use to avoid being spoon-fed by language models and actually learn while using them.</summary>
  </entry>
  <entry>
    <title>How Devenv Solved My NixOS Development Environment Problems - Benjamin Gammage</title>
    <link href="https://benjamingammage.com/blog/devenv-project-environments/" rel="alternate" type="text/html"/>
    <id>https://benjamingammage.com/blog/devenv-project-environments/</id>
    <published>2026-06-05</published>
    <updated>2026-06-05</updated>
    <summary>Using devenv and Nix to create reproducible project environments without dependency conflicts or pathing headaches.</summary>
  </entry>
  <entry>
    <title>Conditional Aggregation in SQL: A Weekend of Struggle - Benjamin Gammage</title>
    <link href="https://benjamingammage.com/blog/sql-conditional-aggregation/" rel="alternate" type="text/html"/>
    <id>https://benjamingammage.com/blog/sql-conditional-aggregation/</id>
    <published>2026-06-03</published>
    <updated>2026-06-03</updated>
    <summary>Spending a weekend wrestling with conditional aggregation in SQL — what confused me, what finally clicked, and what I wish I&#39;d known from the start.</summary>
  </entry>
  <entry>
    <title>US Consumer Finance Complaints: SQL &amp; Conditional Aggregation - Benjamin Gammage</title>
    <link href="https://benjamingammage.com/blog/second-data-project/" rel="alternate" type="text/html"/>
    <id>https://benjamingammage.com/blog/second-data-project/</id>
    <published>2026-06-01</published>
    <updated>2026-06-01</updated>
    <summary>My second data project exploring the CFPB consumer complaints dataset with SQL queries, conditional aggregation, and interactive visualisations.</summary>
  </entry>
  <entry>
    <title>Why I Switched from uv to nix-shell for Python on NixOS - Benjamin Gammage</title>
    <link href="https://benjamingammage.com/blog/uv-to-nix-shell-python-nixos/" rel="alternate" type="text/html"/>
    <id>https://benjamingammage.com/blog/uv-to-nix-shell-python-nixos/</id>
    <published>2026-05-28</published>
    <updated>2026-05-28</updated>
    <summary>Why uv virtualenvs don&#39;t play well with NixOS system libraries and how per-project nix-shell files fixed it.</summary>
  </entry>
  <entry>
    <title>How I Use the Zettelkasten Method for Modern Note-Taking - Benjamin Gammage</title>
    <link href="https://benjamingammage.com/blog/zettelkasten-modern-note-taking/" rel="alternate" type="text/html"/>
    <id>https://benjamingammage.com/blog/zettelkasten-modern-note-taking/</id>
    <published>2026-05-27</published>
    <updated>2026-05-27</updated>
    <summary>How I adapted the Zettelkasten note-taking method for modern note-taking using Obsidian and Neovim.</summary>
  </entry>
  <entry>
    <title>My Biggest Fear with AI - Benjamin Gammage</title>
    <link href="https://benjamingammage.com/blog/my-biggest-fear-with-ai/" rel="alternate" type="text/html"/>
    <id>https://benjamingammage.com/blog/my-biggest-fear-with-ai/</id>
    <published>2026-05-25</published>
    <updated>2026-05-25</updated>
    <summary>Reflecting on the one thing about AI advancement that keeps me up at night.</summary>
  </entry>
  <entry>
    <title>My First Data Project - Benjamin Gammage</title>
    <link href="https://benjamingammage.com/blog/first-data-project/" rel="alternate" type="text/html"/>
    <id>https://benjamingammage.com/blog/first-data-project/</id>
    <published>2026-05-21</published>
    <updated>2026-05-21</updated>
    <summary>A walkthrough of building my first data analysis project — the process, the problems, and what I learned along the way.</summary>
  </entry>
  <entry>
    <title>Molten.nvim, Jupyter Kernels and NixOS - Benjamin Gammage</title>
    <link href="https://benjamingammage.com/blog/molten-nvim-for-data-analysis/" rel="alternate" type="text/html"/>
    <id>https://benjamingammage.com/blog/molten-nvim-for-data-analysis/</id>
    <published>2026-05-18</published>
    <updated>2026-05-18</updated>
    <summary>Inline data analysis in Neovim using Molten.nvim, Jupyter kernels and NixOS.</summary>
  </entry>
  <entry>
    <title>Why I Moved to NixOS - Benjamin Gammage</title>
    <link href="https://benjamingammage.com/blog/moving-to-nixOS/" rel="alternate" type="text/html"/>
    <id>https://benjamingammage.com/blog/moving-to-nixOS/</id>
    <published>2026-05-17</published>
    <updated>2026-05-17</updated>
    <summary>Why I moved from windows to NixOS and why developers should consider a declarative system.</summary>
  </entry>
  <entry>
    <title>A new direction for my website and career - Benjamin Gammage</title>
    <link href="https://benjamingammage.com/blog/website-career-update/" rel="alternate" type="text/html"/>
    <id>https://benjamingammage.com/blog/website-career-update/</id>
    <published>2026-05-16</published>
    <updated>2026-05-16</updated>
    <summary>A short update on my shift toward data analysis and building a career in data and systems.</summary>
  </entry>
</feed>
